MyBatis-01 快速入门
程序员文章站
2022-07-12 15:38:11
...
所需要的jar包
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.6</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
</dependencies>
MyBatis的核心配置文件mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--mybatis核心配置文件,连接数据库-->
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=false"/>
<property name="username" value="root"/>
<property name="password" value="toor"/>
</dataSource>
</environment>
</environments>
<!-- mappers元素包含了一组映射器(mapper),这些映射器的xml映射文件包含了SQL代码和映射定义信息-->
<mappers>
<mapper resource="xyz/bryce/dao/UserMapper.xml"/>
</mappers>
</configuration>
每个基于 MyBatis 的应用都是以一个 SqlSessionFactory
的实例为核心的。SqlSessionFactory
的实例可以通过 SqlSessionFactoryBuilder
获得。而 SqlSessionFactoryBuilder
则可以从 XML 配置文件或一个预先配置的 Configuration 实例来构建出 SqlSessionFactory 实例。
通过MyBatis中的Resources
的工具类来加载xml配置文件
将获取SqlSessionFactory提取为一个工具类:
public class MybatisUtil {
private static SqlSessionFactory sqlSessionFactory;
static {
String resource = "mybatis-config.xml";
try {
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
//获取SqlSession连接
public static SqlSession getSqlSession(){
return sqlSessionFactory.openSession();
}
}
与所要查询的表的内容一一对应的java实体类:
public class User {
private int id; //id
private String name; //姓名
private String pwd; //密码
//构造,有参,无参
//set/get
//toString()
}
编写Mapper接口类
public interface UserMapper {
List<User> selectUser();//查询所有用户
}
编写UserMapper.xml配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="xyz.bryce.dao.UserDao">
<select id="selectUser" resultType="xyz.bryce.pojo.User">
select * from user
</select>
</mapper>
测试:
@Test
public void test1(){
SqlSession sqlSession = MybatisUtil.getSqlSession();
//得到dao层的接口
UserDao mapper = sqlSession.getMapper(UserDao.class);
//调用接口的方法,具体的方法实现在Mapper配置文件中
List<User> users = mapper.selectUser();
for (User user : users) {
System.out.println(user);
}
sqlSession.close();
}
上一篇: 【c++学习笔记】this指针
下一篇: SpringBoot 01 ~ 入门