SSM11.1【Mybatis:Mybatis简介、快速入门、映射文件概述】
简介
快速入门
1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns="http://maven.apache.org/POM/4.0.0" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 5 <modelVersion>4.0.0</modelVersion> 6 7 <groupId>com.haifei</groupId> 8 <artifactId>SSM11_mybatis_quick</artifactId> 9 <version>1.0-SNAPSHOT</version> 10 <packaging>war</packaging> 11 12 13 <dependencies> 14 <dependency> 15 <groupId>mysql</groupId> 16 <artifactId>mysql-connector-java</artifactId> 17 <version>5.1.32</version> 18 </dependency> 19 <dependency> 20 <groupId>org.mybatis</groupId> 21 <artifactId>mybatis</artifactId> 22 <version>3.4.6</version> 23 </dependency> 24 <dependency> 25 <groupId>junit</groupId> 26 <artifactId>junit</artifactId> 27 <version>4.12</version> 28 </dependency> 29 <dependency> 30 <groupId>log4j</groupId> 31 <artifactId>log4j</artifactId> 32 <version>1.2.17</version> 33 </dependency> 34 </dependencies> 35 36 37 <build> 38 <plugins> 39 <!--jdk编译插件--> 40 <plugin> 41 <groupId>org.apache.maven.plugins</groupId> 42 <artifactId>maven-compiler-plugin</artifactId> 43 <version>3.1</version> 44 <configuration> 45 <target>1.8</target> 46 <source>1.8</source> 47 <encoding>UTF-8</encoding> 48 </configuration> 49 </plugin> 50 </plugins> 51 </build> 52 53 54 </project>
1 package com.haifei.domain; 2 3 public class User { 4 5 private int id; 6 private String username; 7 private String password; 8 9 @Override 10 public String toString() { 11 return "User{" + 12 "id=" + id + 13 ", username='" + username + '\'' + 14 ", password='" + password + '\'' + 15 '}'; 16 } 17 18 public int getId() { 19 return id; 20 } 21 22 public void setId(int id) { 23 this.id = id; 24 } 25 26 public String getUsername() { 27 return username; 28 } 29 30 public void setUsername(String username) { 31 this.username = username; 32 } 33 34 public String getPassword() { 35 return password; 36 } 37 38 public void setPassword(String password) { 39 this.password = password; 40 } 41 }
1 UserMapper.xml 2 3 <?xml version="1.0" encoding="UTF-8" ?> 4 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> 5 6 <mapper namespace="userMapper"> 7 8 <select id="findAll" resultType="com.haifei.domain.User"> 9 select * from user 10 </select> 11 12 </mapper>
sqlMapConfig.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> <!--通过properties标签加载外部properties文件--> <properties resource="jdbc.properties"></properties> <environments default="development"> <!--配置数据源环境--> <environment id="development"> <transactionManager type="JDBC"></transactionManager> <dataSource type="POOLED"> <property name="driver" value="${jdbc.driver}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </dataSource> </environment> </environments> <!--加载映射文件--> <mappers> <mapper resource="com/haifei/mapper/UserMapper.xml"></mapper> </mappers> </configuration>
1 package com.haifei.test; 2 3 import com.haifei.domain.User; 4 import org.apache.ibatis.io.Resources; 5 import org.apache.ibatis.session.SqlSession; 6 import org.apache.ibatis.session.SqlSessionFactory; 7 import org.apache.ibatis.session.SqlSessionFactoryBuilder; 8 import org.junit.Test; 9 10 import java.io.IOException; 11 import java.io.InputStream; 12 import java.util.List; 13 14 public class MybatisTest { 15 16 /** 17 * Mybatis快速入门测试 18 * @throws IOException 19 */ 20 @Test 21 public void test1() throws IOException { 22 //加载Mybatis核心配置文件 23 InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml"); 24 //获取session工厂对象 25 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream); 26 //获取session会话对象 27 SqlSession sqlSession = sqlSessionFactory.openSession(); 28 //执行操作(参数:namespace+.+id) 29 List<User> userList = sqlSession.selectList("userMapper.findAll"); 30 //打印结果 31 System.out.println(userList); //[User{id=1, username='zhangsan', password='123'}, User{id=2, username='lisi', password='345'}, User{id=3, username='wangwu', password='789'}] 32 //释放资源 33 sqlSession.close(); 34 } 35 36 }