博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBitis(iBitis)系列随笔之一:MyBitis入门实例
阅读量:5374 次
发布时间:2019-06-15

本文共 3208 字,大约阅读时间需要 10 分钟。

 

 
 

 

MyBits前身是iBitis,相对于Hibernate而言,它是半自动化ORM框架。本着分享和学习的目的,笔者将陆续把学习笔记与代码贴出,希望对想学习mybitis的同窗们有所帮助。

       鉴于我的测试数据库是mysql,同仁们现在把mysql装好,然后准备好mysql驱动以及从官网上下载mybitis()。我下载的是最新的mybatis-3.2.2.zip。

   

      创建数据库test

       然后创建表t_user

[sql]   
 
  1. DROP TABLE IF EXISTS `t_user`;  
  2. CREATE TABLE `t_user` (  
  3.   `id` int(11) NOT NULL AUTO_INCREMENT,  
  4.   `name` varchar(20) DEFAULT NULL,  
  5.   `pass` varchar(20) DEFAULT NULL,  
  6.   PRIMARY KEY (`id`)  
  7. ) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=gbk;  
  8.   
  9. INSERT INTO `t_user` VALUES ('1', 'ssssssssssssssss', 'ddsssssssdd');  

     然后创建与表对应的Java bean对象

 

[java]   
 
  1. <span style="color:#000000;">package com.jefry;  
  2.   
  3. public class User {  
  4.     private int id;  
  5.     private String name;  
  6.     private String pass;  
  7.       
  8.       
  9.   
  10.     public String getPass() {  
  11.         return pass;  
  12.     }  
  13.   
  14.     public void setPass(String pass) {  
  15.         this.pass = pass;  
  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 getName() {  
  27.         return name;  
  28.     }  
  29.   
  30.     public void setName(String name) {  
  31.         this.name = name;  
  32.     }  
  33.   
  34. }</span>  

       接下来,在classpath目录下面创建与配置mybatis-config.xml文件

       内容如下:

[html]   
 
  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.     <environments default="development">  
  7.         <environment id="development">  
  8.             <transactionManager type="JDBC"/>  
  9.             <dataSource type="POOLED">  
  10.                 <property name="driver" value="com.mysql.jdbc.Driver"/>  
  11.                 <property name="url" value="jdbc:mysql://127.0.0.1:3306/test"/>  
  12.                 <property name="username" value="root"/>  
  13.                 <property name="password" value="root"/>  
  14.             </dataSource>  
  15.         </environment>  
  16.     </environments>  
  17.     <mappers>  
  18.      <!--这个文件下面将创建-->  
  19.      <mapper resource="com/jefry/UserMapper.xml"/>  
  20.     </mappers>  
  21. </configuration>  

        通过mybatis-config.xml中<mapper resource="com/jefry/UserMapper.xml"/>配置项,我们在包com.jefry下面创建文件UserMapper.xml
         内容如下:

[html]   
 
  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="User">  
  6.     <!--resultType 表示com.jefry.User这样一个实体对象 -->  
  7.     <select id="selectUser" parameterType="int" resultType="com.jefry.User">  
  8.         select * from t_user where id = #{id}  
  9.     </select>  
  10. </mapper>  

     编写测试代码

[java]   
 
  1. package com.jefry;  
  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. public class Test {  
  12.     static String resource = "mybatis-config.xml";  
  13.   
  14.     public static void main(String[] args) throws IOException {  
  15.         // TODO Auto-generated method stub  
  16.         InputStream inputStream = Resources.getResourceAsStream(resource);  
  17.         SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);  
  18.         SqlSession session = sqlSessionFactory.openSession();  
  19.         try {  
  20.             //User.selectUser中User对应UserMapper.xml文件中标签<mapper namespace="User"> namespace的值  
  21.             //selectUser 对应UserMapper.xml文件中标签<select id="selectUser" parameterType="int" resultType="com.jefry.User">中id值  
  22.             User user = session.selectOne("User.selectUser", 1);  
  23.             System.out.println("user.getName()=" +  user.getName());  
  24.         } finally {  
  25.             session.close();  
  26.         }  
  27.     }  
  28.   
  29. }  

通过运行就可以结果:user.getName()=ssssssssssssssss

转载于:https://www.cnblogs.com/shijiaoyun/p/5157523.html

你可能感兴趣的文章
显示密码
查看>>
实现one hot encode独热编码的两种方法
查看>>
ubuntu中文英文环境切换
查看>>
[sql]mysql启停脚本
查看>>
[elk]Mutate filter plugin增删改查字段
查看>>
Java内功心法,行为型设计模式
查看>>
向github项目push代码后,Jenkins实现其自动构建
查看>>
jquery中的ajax方法参数的用法和他的含义
查看>>
BZOJ 1226: [SDOI2009]学校食堂Dining
查看>>
数组去重的几种方法
查看>>
包装类的自动装箱与拆箱
查看>>
ShareSDk的使用
查看>>
android使用web加载网页的js问题
查看>>
poj 1068 Parencodings
查看>>
docker 数据卷管理
查看>>
如何让一个div的大小,从某一个特定值开始,随内容的增加而自动变化?
查看>>
P1977 出租车拼车(DP)
查看>>
iOS开发--完整项目
查看>>
我的博客园皮肤模板
查看>>
正则表达式
查看>>