创建文件
引入Mybatis和mysql驱动
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.9</version> </dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.28</version> </dependency>
创建MyBatis核心配置文件
核心配置文件
常用名(可以不是这个名字):mybatis-config.xml
作用:配置连接数据库的环境以及Mybatis的全局配置信息
存放目录:src/main/resource
其他:整合Spring之后,该核心文件可省略
右击[resources],[New]>>[File],创建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"> <configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="${driver}"/> <property name="url" value="${url}"/> <property name="username" value="${username}"/> <property name="password" value="${password}"/> </dataSource> </environment> </environments> <mappers> <mapper resource="org/mybatis/example/BlogMapper.xml"/> </mappers> </configuration>
内容介绍如下
<?xml version="1.0" encoding="UTF-8" ?><!--XML文件声明,版本号,编码--> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><!--该XML文件约束是dtd文件规则,和Spring中的约束不一样,但是功能一样--> <configuration><!--跟标签--> <environments default="development"> <!-- 接数据库环境--> <environment id="development"><!--在该标签内设置具体环境--> <!-- 事务管理器 transactionManager 类型为JDBC--> <transactionManager type="JDBC"/><!--事务管理方式为JDBC--> <!-- dataSource:数据源 | POOLED:数据库连接池--> <dataSource type="POOLED"> <!-- 驱动名称--><!--欢迎关注哔哩哔哩 萌狼蓝天--> <property name="driver" value="${driver}"/> <!-- 数据库地址---><!--欢迎关注哔哩哔哩 萌狼蓝天--> <property name="url" value="${url}"/> <!-- 数据库用户名--><!--欢迎关注哔哩哔哩 萌狼蓝天--> <property name="username" value="${username}"/> <!-- 数据库密码--><!--欢迎关注哔哩哔哩 萌狼蓝天--> <property name="password" value="${password}"/> </dataSource> </environment> </environments> <!--引入映射文件--> <mappers> <mapper resource="org/mybatis/example/BlogMapper.xml"/> </mappers> </configuration>
将相关的信息修改为自己的
<?xml version="1.0" encoding="UTF-8" ?><!--XML文件声明,版本号,编码--> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><!--该XML文件约束是dtd文件规则,和Spring中的约束不一样,但是功能一样--> <configuration><!--跟标签--> <environments default="development"> <!-- 接数据库环境--> <environment id="development"><!--在该标签内设置具体环境--> <!-- 事务管理器 transactionManager 类型为JDBC--> <transactionManager type="JDBC"/><!--事务管理方式为JDBC--> <!-- dataSource:数据源 | POOLED:数据库连接池--> <dataSource type="POOLED"> <!-- 驱动名称--><!--欢迎关注哔哩哔哩 萌狼蓝天--> <property name="driver" value="com.mysql.jdbc.Driver"/> <!-- 数据库地址--><!--欢迎关注哔哩哔哩 萌狼蓝天--> <property name="url" value="jdbc:mysql://mllt.cc:3306/edu_smbms"/> <!-- 数据库用户名--><!--欢迎关注哔哩哔哩 萌狼蓝天--> <property name="username" value="root"/> <!-- 数据库密码--><!--欢迎关注哔哩哔哩 萌狼蓝天--> <property name="password" value="mllt9920"/> </dataSource> </environment> </environments> <!--引入映射文件 | 下面这个暂时不修改,后面创建了映射文件之后再回来修改--> <mappers> <mapper resource="org/mybatis/example/BlogMapper.xml"/> </mappers> </configuration>
创建实体类
private Integer id;//id private String userCode;//用户编码 private String userName;//用户姓名 private String userPassword;//用户密码 private Integer gender;//性别 private Date birthday;//出生日期 private String phone;//电话号码 private String address;//地址 private Integer userRole;//用户角色 private Integer createdBy;//创建者 private Date creationDate;//创建时间 private Integer modifyBy;//更新者 private Date modifyDate;//更新时间 private Integer age;//年龄 private String userRoleName;//用户角色名称
生成getter and setter
按下
Ctrl
+A
全选,然后点击OK
创建mapper接口
这个mapper接口相当于原来的DAO
mapper仅仅是接口,不需要提供实现类
package cc.mllt.edumybatisclass01.jdbc.mapper; public interface UserMapper { int selectUser(); }
创建MyBatis映射文件
映射文件
命名规则:表所对应的实体类的类名+Mapper.xml
例如:表t_user,映射的实体类为User,对应的映射文件名为UserMapper.xml
作用:编写SQL语句,访问以及操作表中的数据
存放位置:src/main/resources/mappers
别忘了写扩展名.xml
在刚才的网站上找到这一段,将代码复制过来
MyBatis中可以面向接口操作数据,要保证两个一致:
- mapper接口的全类名和映射文件的命名空间(namespace)保持一致
- mapper接口中方法的方法名和映射文件中编写SQL的标签的id属性保持一致
<?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="cc.mllt.edumybatisclass01.jdbc.mapper.UserMapper"> <select id="selectUser" resultType="int"> select count(1) as count from smbms_user </select> </mapper>