MyBatis的入门操作--打印日志和增删改查(单表静态)
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.logging.LogFactory;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.InputStream;
import java.util.List;
public class MyBatisTest {
public static void main(String[] args) throws Exception {
// 配置日志输出
LogFactory.useLog4JLogging();
// 获取配置文件输入流
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
// 创建SqlSessionFactory
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
// 打开SqlSession
SqlSession session = sqlSessionFactory.openSession();
try {
// 获取mapper接口的代理对象
UserMapper mapper = session.getMapper(UserMapper.class);
// 查询所有用户
List<User> users = mapper.selectAllUsers();
users.forEach(System.out::println);
// 插入用户
User newUser = new User();
newUser.setId(5);
newUser.setName("MyBatis新用户");
mapper.insertUser(newUser);
// 更新用户
newUser.setName("MyBatis更新用户");
mapper.updateUser(newUser);
// 删除用户
mapper.deleteUser(newUser);
// 提交事务
session.commit();
} finally {
// 关闭SqlSession
session.close();
}
}
}
在这个代码实例中,我们首先配置了日志输出,然后通过MyBatis的Resources
类获取配置文件的输入流。接着,我们创建了一个SqlSessionFactory
实例,并通过它打开了一个SqlSession
。在SqlSession
的上下文中,我们获取了UserMapper
接口的代理对象,并调用了它的方法来进行数据库操作。最后,我们提交了事务并关闭了SqlSession
。这个例子展示了如何使用MyBatis进行基本的CRUD操作。
评论已关闭