前言
MyBatis面向接口开发的基础上,去除sql映射xml文件,改为在接口上定义注解,实现对sql的映射
引入依赖
pom.xml
1 2 3 4 5 6 7 8 9 10 11 12
| <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.30</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.8</version> </dependency> </dependencies>
|
创建实体类
src/main/java/com/pojo/User.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| package com.pojo;
public class User {
private Integer id; private String name;
public Integer getId() { return id; }
public void setId(Integer id) { this.id = id; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
@Override public String toString() { return "User{" + "id=" + id + ", name='" + name + '\'' + '}'; } }
|
创建一个接口
- 在接口中定义用于执行sql语句的抽象方法
- 接口的抽象方法上使用
@Insert()
、@Delete()
、@Update()
、@Select()
src/main/java/com/Mapper/UserMapper.java
1 2 3 4 5 6 7 8 9
| package com.Mapper;
import com.pojo.User; import java.util.List;
public interface UserMapper { @Select("select * from user") List<User> selectAll(); }
|
创建MyBatis配置
<mappers></mappers>
的class
属性值为接口的全局限定名
src/main/resources/mybatis-config.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| <?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="develop"> <environment id="develop">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED"> <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql:///demo?serverTimezone=UTC"/> <property name="username" value="root"/> <property name="password" value="123456"/> </dataSource> </environment> </environments>
<mappers> <mapper class="com.Mapper.UserMapper"></mapper> </mappers> </configuration>
|
测试类
com/Demo.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| public class Demo {
public static void main(String[] args) throws IOException { InputStream in = Resources.getResourceAsStream("mybatis-config.xml"); SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder(); SqlSessionFactory fac = sqlSessionFactoryBuilder.build(in); SqlSession session = fac.openSession(); UserMapper userMapper = session.getMapper(UserMapper.class); List<User> users = userMapper.selectAll(); System.out.println(users); } }
|
完成
参考文献
博客园——最爱番茄炒鸡蛋