码迷,mamicode.com
首页 > 其他好文 > 详细

[转]mybatis 的简单使用

时间:2015-09-05 08:44:12      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:

 

需要用到的包:(这里只是其中一个版本,其他的百度)

mysql-connector-java-5.1.6-bin

mybatis-3.2.2

先看项目目录:

技术分享

配置文件mybatisconfig.xml:

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE configuration  
  3.     PUBLIC "-//mybatis.org//DTD Config 3.0//EN"  
  4.     "http://mybatis.org/dtd/mybatis-3-config.dtd">  
  5. <configuration>  
  6.     <!-- 用XML映射的时候必须配此项!指定mappers里面的返回值对应的实体类 -->  
  7.     <!-- <typeAliases>   
  8.         <typeAlias alias="User" type="com.miquan.mybatis.bean.User"/>   
  9.     </typeAliases> -->  
  10.     <!-- JDBC配置 -->  
  11.     <environments default="development">  
  12.         <environment id="development">  
  13.             <transactionManager type="JDBC"/>  
  14.             <dataSource type="POOLED">  <!--POOLED指的是:已经缓存的,即使用缓存-->
  15.                 <property name="driver" value="com.mysql.jdbc.Driver"/>  
  16.                 <property name="url" value="jdbc:mysql://localhost:3306/weixinface"/>  
  17.                 <property name="username" value="root"/>  
  18.                 <property name="password" value=""/>  
  19.             </dataSource>  
  20.         </environment>  
  21.     </environments>  
  22.     <!-- mappers,每个实体类对应着一个xml -->  
  23.     <mappers>  
  24.         <mapper resource="com/miquan/mybatis/bean/User.xml"/>  
  25.     </mappers>  
  26. </configuration>  


实体类User.java:

  1. package com.miquan.mybatis.bean;  
  2.   
  3. public class User {  
  4.     private int id;  
  5.     private String userName;  
  6.     private String password;  
  7.       
  8.     public User(int id, String userName, String password) {  
  9.         super();  
  10.         this.id = id;  
  11.         this.userName = userName;  
  12.         this.password = password;  
  13.     }  
  14.     public int getId() {  
  15.         return id;  
  16.     }  
  17.     public void setId(int id) {  
  18.         this.id = id;  
  19.     }  
  20.     public String getUserName() {  
  21.         return userName;  
  22.     }  
  23.     public void setUserName(String userName) {  
  24.         this.userName = userName;  
  25.     }  
  26.     public String getPassword() {  
  27.         return password;  
  28.     }  
  29.     public void setPassword(String password) {  
  30.         this.password = password;  
  31.     }  
  32. }  


User.xml:

  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. <!-- namespace对应着接口类 -->  
  6. <mapper namespace="com.miquan.mybatis.inter.IUserOperation">  
  7.     <!-- <select id="selectById" parameterType="int" resultType="User">  
  8.         select * from User where id = #{id}  
  9.     </select> -->  
  10. </mapper>  


IUserOperation.java:

  1. package com.miquan.mybatis.inter;  
  2.   
  3. import java.util.List;  
  4.   
  5. import org.apache.ibatis.annotations.Delete;  
  6. import org.apache.ibatis.annotations.Insert;  
  7. import org.apache.ibatis.annotations.Select;  
  8. import org.apache.ibatis.annotations.Update;  
  9.   
  10. import com.miquan.mybatis.bean.User;  
  11.   
  12. public interface IUserOperation {  
  13.     @Select("select * from User where id = #{id}")  
  14.     public User selectById(int id);  
  15.       
  16.     @Select("select * from User where userName = #{userName}")  
  17.     public List<User> selectUsers(String userName);  
  18.       
  19.     @Insert("insert into User values(null, #{userName}, #{password})")  
  20.     public boolean addUser(User user);   
  21.       
  22.     @Delete("delete from User where id = #{id}")  
  23.     public boolean delUser(int id);  
  24.       
  25.     @Update("update User "  
  26.             + "set userName = #{userName}, "  
  27.                 + "password = #{password} "  
  28.             + "where id = #{id}")  
  29.     public boolean updateUser(User user);  
  30. }  
  1.   

注意:此处接口不支持多态。

(不知道为什么,用着就是不可以。。。方法名不能一样)


最后进行测试:Test.java:

  1. package com.miquan.mybatis.test;  
  2.   
  3. import java.io.InputStream;  
  4. import java.util.List;  
  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.miquan.mybatis.bean.User;  
  12. import com.miquan.mybatis.inter.IUserOperation;  
  13.   
  14. public class Test {  
  15.     static SqlSession session;  
  16.       
  17.     public static void main(String[] args) {  
  18.         try {  
  19.             //获取session  
  20.             InputStream is = Resources.getResourceAsStream("mybatisconfig.xml");  
  21.             SqlSessionFactory sqlSessionFactory =   
  22.                     new SqlSessionFactoryBuilder().build(is);  
  23.             session = sqlSessionFactory.openSession();  
  24.               
  25.             //XML配置对应用法  
  26. //          User user = session.selectOne("com.miquan.mybatis.bean.UserDB.selectById", 1);  
  27. //          System.out.println(user.toString());  
  28.               
  29.             //接口调用法  
  30.             //////注意:insert、delete和update方法调用之后必须commit才能真正的改变数据  
  31.             IUserOperation userOperation = session.getMapper(IUserOperation.class);  
  32.               
  33.             //查  
  34. //          User user = userOperation.selectById(1);  
  35. //          System.out.println(user.toString());  
  36.               
  37.             //查找List  
  38. //          List<User> users = userOperation.selectUsers("miquan");  
  39. //          System.out.println(users.size());  
  40.               
  41.             //增  
  42. //          User user = new User();  
  43. //          user.setUserName("zhiquan");  
  44. //          user.setPassword("999");  
  45. //          userOperation.addUser(user);  
  46. //          session.commit();  
  47.               
  48.             //删  
  49. //          userOperation.delUser(7);  
  50. //          session.commit();  
  51.               
  52.             //改  
  53.             User user = new User(8, "qiantu", "shaxppp");  
  54.             userOperation.updateUser(user);  
  55.             session.commit();  
  56.         } catch (Exception e) {  
  57.             e.printStackTrace();  
  58.         } finally {  
  59.             try {  
  60.                 session.close();  
  61.             } catch (Exception e) {  
  62.                 e.printStackTrace();  
  63.             }  
  64.         }  
  65.     }  
  66. }  


简单的增删查改可以实现了。

[转]mybatis 的简单使用

标签:

原文地址:http://www.cnblogs.com/ZhuRenWang/p/4782711.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!