Java--MyBatis基本配置及实现简单的部门查询(SQLServer)


1.初始准备(引入jar包)

   把所需要的 jar 包放到 lib 文件夹中 (mybatis-3.2.3.jar、sqljdbc1.jar、sqljdbc41.jar、mysql-connector-java-5.1.29-bin.jar)

   然后 在对应的 jar包上 右键 Build Path->Add to Build Path 加载进去

 

2.数据库配置(用的SQLSever 其他的类似)

   

  3.配置MyBatisConfig.xml 文件

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 
 3 
 4 
 5     
 6     
 7     
 8     
 9     
10         
11         
12         <package name = "com.monv.mybatis.entity" />
13     
14     
15     
16     default="development">
17         
18             
19             
20              
21                      
22                      
23                      
24                      
25                                     
26         
27     
28     
29     
30     
31         
32         
33         
34         
35         <package name="com.monv.mybatis.mapper"/>
36     
37 

4.定义部门的实体类(BuMen.java)

  添加默认的方法

  添加 Get()Set() 方法

  添加 toString() 方法 方便打印显示

 1 package com.monv.mybatis.entity;
 2 
 3 public class BuMen {
 4     
 5     private Integer id;
 6     private String innerCode;
 7     private String deptName;
 8     
 9     public BuMen() {
10         super();
11     }
12 
13     public Integer getId() {
14         return id;
15     }
16     public void setId(Integer id) {
17         this.id = id;
18     }
19     public String getInnerCode() {
20         return innerCode;
21     }
22     public void setInnerCode(String innerCode) {
23         this.innerCode = innerCode;
24     }
25     public String getDeptName() {
26         return deptName;
27     }
28     public void setDeptName(String deptName) {
29         this.deptName = deptName;
30     }
31 
32     @Override
33     public String toString() {
34         return "BuMen [id=" + id + ", innerCode=" + innerCode + ", deptName="
35                 + deptName + "]";
36     }
37     
38 }

5.定义Mapper接口实现查询功能(BuMenMapper.java)

1 package com.monv.mybatis.mapper;
2  
3 import com.monv.mybatis.entity.BuMen;
4 
5 public interface BuMenMapper  {
6     
7     BuMen selectBuMen(Integer id);//部门的查询 返回类型 是部门
8     
9 }

6.定义Mapper.xml 编写SQL语句(BuMenMapper.xml)

namespace="com.monv.mybatis.mapper.BuMenMapper" //对应的是第5步定义的Mapper接口文件
id = "selectBuMen" //对应的是 第5步定义的Mapper接口中的 selectBuMen() 方法的名字;
parameterType = "int" //对应的是 第5步定义的Mapper接口中的 selectBuMen() 方法 中的参数类型;
resultType="BuMen" //对应的是 第5步定义的Mapper接口中的 selectBuMen() 方法 中的返回类型;
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 
 3 
 4 
 5 
 6     
 7     
 8     
11     
12 

7.从XML构建 SqlSessionFactory

 1 package com.monv.mybatis.utils;
 2  
 3 import java.io.IOException;
 4 import java.io.InputStream;
 5 import org.apache.ibatis.io.Resources;
 6 import org.apache.ibatis.session.SqlSession;
 7 import org.apache.ibatis.session.SqlSessionFactory;
 8 import org.apache.ibatis.session.SqlSessionFactoryBuilder;
 9 
10 public class BuMenUtil {
11     
12     private static SqlSessionFactory sqlSessionFactory = null;
13 
14     static{
15         
16         try {
17             InputStream in = Resources.getResourceAsStream("MyBatisConfig.xml");
18             sqlSessionFactory = new SqlSessionFactoryBuilder().build(in);
19         } catch (IOException e) {
20             e.printStackTrace();
21         }
22          
23     }
24      
25     private BuMenUtil(){};
26     
27     public static SqlSession getSqlSession(){
28         return sqlSessionFactory.openSession();
29     }
30 }

8.测试

 测试方法一:调用BuMenUtil里的方法 获得session

 1 package com.monv.mybatis.test;
 2 
 3 import org.apache.ibatis.session.SqlSession;
 4 
 5 import com.monv.mybatis.entity.BuMen;
 6 import com.monv.mybatis.mapper.BuMenMapper;
 7 import com.monv.mybatis.utils.BuMenUtil;
 8 
 9 public class TestBuMen {
10     public static void main(String[] args) {
11      
12         SqlSession session = BuMenUtil.getSqlSession();
13         BuMenMapper buMenMapper = session.getMapper(BuMenMapper.class);
14         BuMen buMen = buMenMapper.selectBuMen(30);        
15         session.close();
16         
17         System.out.println(buMen);        
18 
19     }
20 }

  测试方法二:在测试程序中 直接定义

 1 package com.monv.mybatis.test;
 2 
 3 import java.io.IOException;
 4 import java.io.InputStream;
 5 
 6 import org.apache.ibatis.io.Resources;
 7 import org.apache.ibatis.session.SqlSession;
 8 import org.apache.ibatis.session.SqlSessionFactory;
 9 import org.apache.ibatis.session.SqlSessionFactoryBuilder;
10 
11 import com.monv.mybatis.entity.BuMen;
12 import com.monv.mybatis.mapper.BuMenMapper;
13 
14 
15 public class TestBuMen {
16     public static void main(String[] args) throws IOException {
17      
18 //        SqlSession session = BuMenUtil.getSqlSession();
19 //        BuMenMapper buMenMapper = session.getMapper(BuMenMapper.class);
20 //        BuMen buMen = buMenMapper.selectBuMen(30);        
21 //        session.close();
22 //        
23 //        System.out.println(buMen);        
24         //1.加载配置文件
25         InputStream in = Resources.getResourceAsStream("MyBatisConfig.xml");
26         //2. 构建SqlSessionFactory
27         SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(in);
28         //3. 通过SqlSessionFactory 创建 SqlSession
29         SqlSession session = sqlSessionFactory.openSession();
30         //4. 通过SqlSession 获得DAO的实现类
31         BuMenMapper buMenMapper = session.getMapper(BuMenMapper.class);
32         //5. 测试方法
33         BuMen buMen = buMenMapper.selectBuMen(20);
34         session.close();
35         System.out.println(buMen);
36 
37     }
38 }

 放在最后目录结构

   

接口