1.导入依赖
<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.5.6</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.3.1</version> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.9.6</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.6</version> </dependency> </dependencies>
2.编写pojo类
public class User { private int id; private String name; private int age; private String gradeid; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getGradeid() { return gradeid; } public void setGradeid(String gradeid) { this.gradeid = gradeid; } @Override public String toString() { return "User{" + "id=" + id + ", name='" + name + '\'' + ", age=" + age + ", gradeid='" + gradeid + '\'' + '}'; } }
3.操作pojo类,编写操作实体类接口
public interface UserMapper { public List<User> selectUser(); }
4.实现接口xml: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="com.ld.maper.UserMapper"> <select id="selectUser" resultType="aaa"> select * from mysql_dong.cb_user; </select> </mapper>
5.编写mybatis-config.xml配置文件
其中typeAliases是配置别名
environments配置数据库信息
mappers是注册实现接口的xml信息
其中有<mapper class="com.ld.maper.UserMapper"/> 标签,
<mapper resource="com/ld/maper/UserMapper.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> <typeAliases> <typeAlias type="com.ld.pojo.User"/> </typeAliases> <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/mysql_dong?useSSL=true&useUnicode=true&characterEncoding=UTF-8"/> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com.ld.maper.UserMapper"/> </mappers> </configuration>
6.实现mybatis
String resource = "mybatis-config.xml"; SqlSession sqlSession = null; InputStream in; try { in = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(in); sqlSession = sqlSessionFactory.openSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); List<User> users = mapper.selectUser(); for (int i = 0; i <users.size() ; i++) { System.out.println(users.get(i)); } } catch (IOException e) { e.printStackTrace(); }finally { if(sqlSession !=null){ sqlSession.close(); } } }
注:若发现编译后target中没有编写的xml文件
在pom.xml中添加build标签,将需要编译的文件信息写入include标签中
<build> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>true</filtering> </resource> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>true</filtering> </resource> </resources> </build>