mybaits入门(CURD)

1、首先建立工程导入mysql驱动jar包机mybatis-3.1.1.jar

2、编辑配置文件config.properties,mybatis-config.xml,StudentMapper.xml

config.properties

[java]  view plain copy
  1. driver=com.mysql.jdbc.Driver  
  2. url=jdbc:mysql://localhost:3306/student  
  3. user=root  
  4. password=123  

mybatis-config.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 resource="config.properties"><!--读取属性文件-->  
    </properties>
    <typeAliases>
          <typeAlias alias="Student" type="com.mybaits.bean.Student"/>
   </typeAliases>  
    <environments default="development">  
        <environment id="development">  
            <transactionManager type="JDBC"/>  
            <dataSource type="POOLED">  
                <property name="driver" value="${driver}"/>  
                <property name="url" value="${url}"/>  
                <property name="username" value="${user}"/>  
                <property name="password" value="${password}"/>  
            </dataSource>       
        </environment>  
    </environments>  
    <mappers>  
        <mapper resource="com/mybatis/bean/StudentMapper.xml"/>  
    </mappers>  
</configuration>  


StudentMapper.xml(映射文件)

[html]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE mapper   
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"   
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">  
  5. <mapper namespace="com.mbatis.bean">  
  6.   
  7.  <select id="SelectAllStudent" resultType="Student">  
  8.     Select * from student<!-- 此处的student是数据库的student表 -->  
  9.  </select>  
  10.    
  11.  <select id="SelectOneStudent" resultType="Student" parameterType="int">  
  12.     select * from student where student.id=#{id};  
  13.  </select>  
  14.    
  15.  <insert id="AddStudent" parameterType="Student" useGeneratedKeys="true" keyProperty="id">  
  16.     insert into Student(id,name,age,mail)   
  17.     values(#{id},#{name},#{age},#{mail});  
  18.  </insert>  
  19.    
  20.  <delete id="DeleteStudent" parameterType="int">  
  21.     delete from student where student.id=#{id}  
  22.  </delete>  
  23.    
  24.  <update id="UpdateStudent" parameterType="Student">  
  25.     update student set student.name=#{name},student.age=#{age},student.mail=#{mail}  
  26.     where student.id=#{id}  
  27.  </update>  
  28.    
  29. </mapper>    

StudentDaoImpl.java
[java]  view plain copy
  1.   

[java]  view plain copy
  1. package com.Dao.Impl;  
  2. import java.io.IOException;  
  3. import java.io.InputStream;  
  4. import java.util.List;  
  5.   
  6.   
  7. import org.apache.ibatis.io.Resources;  
  8. import org.apache.ibatis.session.SqlSession;  
  9. import org.apache.ibatis.session.SqlSessionFactory;  
  10. import org.apache.ibatis.session.SqlSessionFactoryBuilder;  
  11.   
  12.   
  13. import com.Dao.*;  
  14. import com.Ibatis.Student;  
  15.    
  16.   
  17.   
  18. public class StudentDaoImpl implements StudentDao {  
  19.      private static SqlSessionFactory ssf ;  
  20.       static{  
  21.           String resource ="mybatis-config.xml";  
  22.           InputStream stream;  
  23.         try {  
  24.             stream = Resources.getResourceAsStream(resource);  
  25.              ssf= new SqlSessionFactoryBuilder().build(stream);  
  26.              stream.close();  
  27.         } catch (IOException e) {  
  28.             e.printStackTrace();  
  29.         }  
  30.       }  
  31.        
  32.     public List<Student> GetAllStduent() {  
  33.         List<Student> list = null;  
  34.         SqlSession session = null;  
  35.          try {  
  36.              session = ssf.openSession();  
  37.              list= session.selectList("com.mybatis.SelectAllStudent");  
  38.         } catch (Exception e) {  
  39.             e.printStackTrace();  
  40.         }  
  41.         finally{  
  42.             session.close();  
  43.         }  
  44.          return list;  
  45.     }  
  46.   
  47.   
  48.     public void AddStudent(Student student) {  
  49.          SqlSession session = null;  
  50.          try {  
  51.              session = ssf.openSession();  
  52.             session.insert("com.mybatis.AddStudent",student);  
  53.              session.commit();  
  54.         } catch (Exception e) {  
  55.             e.printStackTrace();  
  56.         }  
  57.         finally{  
  58.             session.close();  
  59.         }  
  60.     }  
  61.   
  62.   
  63.     public void DeleteStudent(int id) {  
  64.          SqlSession session = null;  
  65.          try {  
  66.              session = ssf.openSession();  
  67.              session.delete("com.mybatis.DeleteStudent", id);  
  68.              session.commit();  
  69.         } catch (Exception e) {  
  70.             e.printStackTrace();  
  71.         }  
  72.         finally{  
  73.             session.close();  
  74.         }  
  75.     }  
  76.   
  77.   
  78.     public Student GetOneStudent(int id) {  
  79.          Student student = null;   
  80.          SqlSession session = null;  
  81.          try {  
  82.              session = ssf.openSession();  
  83.              student =session.selectOne("com.mybatis.SelectOneStudent", id);  
  84.         } catch (Exception e) {  
  85.             e.printStackTrace();  
  86.         }  
  87.         finally{  
  88.             session.close();  
  89.         }  
  90.          return student;  
  91.     }  
  92.   
  93.   
  94.     public void UpdateStudent(Student student) {  
  95.         SqlSession session = null;  
  96.          try {  
  97.              session = ssf.openSession();  
  98.              session.update("com.mybatis.UpdateStudent", student);  
  99.              session.commit();  
  100.         } catch (Exception e) {  
  101.             e.printStackTrace();  
  102.         }  
  103.         finally{  
  104.             session.close();  
  105.         }  
  106.     }  
  107. }  


StudentTest.java

[java]  view plain copy
  1. public static void main(String[] args) {  
  2.         StudentDao dao = new StudentDaoImpl();  
  3.           
  4.         System.out.println("***********查询所有***************************");   
  5.         List<Student> list = dao.GetAllStduent();  
  6.         for(Student s:list){  
  7.             System.out.println(s.toString());  
  8.         }  
  9.           
  10.         System.out.println("************增加新的记录************************");   
  11.           
  12.         Student student1 = new Student();  
  13.         student1.setAge(45);  
  14.         student1.setName("ant");  
  15.         student1.setMail("[email protected]");  
  16.         dao.AddStudent(student1);   
  17.           
  18.         System.out.println("*************删除前查询第12条记录***************");   
  19.           
  20.         Student student3 = dao.GetOneStudent(12);  
  21.         if(student3==null){  
  22.             System.out.println("第12条记录删除了");  
  23.         }else{  
  24.             System.out.println(student3.toString());  
  25.         }  
  26.           
  27.         System.out.println("**************删除第12条记录*****************");   
  28.          
  29.         dao.DeleteStudent(12);  
  30.           
  31.         System.out.println("**************删除后查询第12条记录**************");   
  32.           
  33.         Student student2 = dao.GetOneStudent(12);  
  34.         if(student2==null){  
  35.             System.out.println("第12条记录 删除了");  
  36.         }else{  
  37.             System.out.println(student2.toString());  
  38.         }  
  39.            
  40.         System.out.println("**************获得更新前的记录********************");   
  41.           
  42.         Student student4 = dao.GetOneStudent(4);  
  43.         System.out.println(student4.getName());  
  44.         student4.setName("my name is changed");  
  45.         dao.UpdateStudent(student4);   
  46.           
  47.         System.out.println("**************获得更新后的记录********************");   
  48.           
  49.         Student student5 = dao.GetOneStudent(4);  
  50.         System.out.println(student5.getName());  
  51.     }  

参考:http://blog.csdn.net/qiufengsaoluoye01/article/details/7881241

http://www.javacodegeeks.com/2012/11/mybatis-tutorial-crud-operations-and-mapping-relationships-part-1.html

http://mybatis.co.uk/index.php/2010/09/mybatis-simple-and-complete-example.html

MyBatisMyBatis存储过程、MyBatis分页、MyBatis一对多增删改查操作

:http://blog.csdn.net/qiufengsaoluoye01/article/details/7891930


猜你喜欢

转载自blog.csdn.net/huang798807481/article/details/20376061