1.創建web項目,添加jar包

2.創建實驗表user_t

3.在src下創建conf.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="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost/mi" /> <property name="username" value="root" /> <property name="password" value="dbdaocom" /> </dataSource> </environment> </environments> </configuration>
2、定義表所對應的實體類,
package com.mi.entity; public class User { private int id; private String userName; private String password; private Integer age; ... }
3、定義操作users表的sql映射文件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.mi.dao.UserInfoMapper"> <select id="queryUserInfo" resultType="com.mi.entity.User"> SELECT id,user_name userName,age FROM user_t where 1=1 </select> <select id="getCount" resultType="int"> SELECT count(*) FROM user_t </select> </mapper>
4、在conf.xml文件中注冊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"> <configuration> <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/mi" /> <property name="username" value="root" /> <property name="password" value="dbdaocom" /> </dataSource> </environment> </environments> <mappers> <mapper resource="com/mi/mapping/UserInfoMapper.xml"/><!-- 注冊userMapper.xml文件, --> </mappers> </configuration>
5、編寫測試代碼:執行定義的select語句
創建一個Test1類,編寫如下的測試代碼:
package com.mi.demo; import java.io.InputStream; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import com.mi.entity.User; public class Test1 { public static void main(String[] args) { //mybatis的配置文件 String resource = "conf.xml"; //使用類加載器加載mybatis的配置文件(它也加載關聯的映射文件) InputStream is = Test1.class.getClassLoader().getResourceAsStream(resource); //構建sqlSession的工廠 SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is); //使用MyBatis提供的Resources類加載mybatis的配置文件(它也加載關聯的映射文件) //Reader reader = Resources.getResourceAsReader(resource); //構建sqlSession的工廠 //SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader); //創建能執行映射文件中sql的sqlSession SqlSession session = sessionFactory.openSession(); /** * 映射sql的標識字符串, * com.mi.mapping.UserInfoMapper是UserInfoMapper.xml文件中mapper標簽的namespace屬性的值, * queryUserInfo是select標簽的id屬性值,通過select標簽的id屬性值就可以找到要執行的SQL */ String statement = "com.mi.mapping.UserInfoMapper.queryUserInfo";//映射sql的標識字符串 User user = session.selectOne(statement,1);//執行查詢返回一個唯一user對象的sql System.out.println(user.getId()); System.out.println(user.getUserName()); System.out.println(user.getAge()); } }
結果如下:

