1.创建表,添加数据
2.创建模块,导入坐标
创建模块之后在pom.xml中导入
<dependencies>
<!--mybatis依赖-->
<!--mysql驱动-->
<!--单元测试-->
<!-- 添加slf4j日志api -->,直接复制粘贴
</dependencies>
3.编写MyBatis核心配置文件--->替换连接信息,解决硬编码问题
根据MyBatis入门官网上的提示,先在src/main/resources中添加mybatis-config.xml,然后把入门中的代码直接粘贴进去,注意更改数据库连接信息
<!--数据库连接信息-->
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql:///mybatis?useSSL=false"/>
<property name="username" value="root"/>
<property name="password" value="abc123"/>
4.编写SQL映射文件--->统一管理sql语句,解决硬编码问题
新建XXMapper.xml,然后从MyBatis入门官网上的提示直接粘贴过来,把mapper里的namespace随便改成一个名字(比如“test”),更改id和返回值类型
5.编码
1.定义POJO类
在java中的pojo里定义User类,在类里写属性,表里有哪些属性就写哪些属性
Ctrl+Alt+L:格式化; Alt+鼠标左键:整列编辑;
Alt+Ins引入所有属性和方法
2.加载核心配置文件,获取SqlSessionFactory对象
新建测试类MyBatisDemo里面加载核心配置文件,也是直接粘贴入门里的
String resource = "mybatis-config.xml";
定义配置文件的路径
InputStream inputStream = Resources.getResourceAsStream(resource);
MyBatis提供的资源加载的类Resources,使用里面的静态方法getResourceAsStream传入字符串返回字节输入流
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
再通过SqlSessionFactoryBuilder对象里的Builder方法传入流再返回SqlSessionFactory方法
3.获取SqlSession对象,执行SQL语句
//2.获取SqlSession对象,用它来执行sql
SqlSession sqlSession = sqlSessionFactory.openSession();
//3.执行sql(泛型是User)
List<User> users = sqlSession.selectList("test.selectAll");
括号里是传入对应的唯一标识:namespace+id
因为将来会有很多Mapper,这个唯一标识像是包一样成为唯一区分
4.释放资源
别名的配置就是在mybatis-config.xml的configuration里加入
<typeAliases>
<package name="com.itsanyue.pojo"/>
</typeAliases>
然后UserMapper里的resultType就可以不用加包名,不用写一串了可以直接用接口名,而且不区分大小写,但注意别名要写在configuration的上面,要遵循前后顺序