博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis学习手记(一)MaBatis入门
阅读量:6707 次
发布时间:2019-06-25

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

hot3.png

MyBatis学习手记一

前:MyBatis官方学习(中文)文档 

一,首先,要使用MyBatis必须使用官方提供的MyBatis的JAR包

             链接:

            这里使用的数据库是MySQL,所以还需要Mysql的驱动包、

二、其实MyBatis初学很简单。但是也是需要依赖一些配置文件。

            MyBatis-Config.xml (名字随意)

        
    
         
     
         
    
        
        
            
            
            
            
            
                                
        
        
    

三、牛逼的地方来了。例如我们数据库里面有User这个表

    User表

id
name sex address
1 张三 江西
2 李四 上海

我们就在我们项目中新建一个Been  User.java

User.java

public class User{        //类里的属性名与表结构字段名相同	private int id;	private String name;	private String sex;	private String address;	public int getId()	{		return id;	}	public void setId(int id)	{		this.id = id;	}	public String getName()	{		return name;	}	public void setName(String name)	{		this.name = name;	}	public String getSex()	{		return sex;	}	public void setSex(String sex)	{		this.sex = sex;	}	public String getAddress()	{		return address;	}	public void setAddress(String address)	{		this.address = address;	}}

MyBatis-Config.xml 中配置一下

    
    
         
     

然后为了操作数据库的数据,我们新建一个接口,用来封装对数据库的操作

UserMapper.java

package com.xcode.beens.mapperInterfaces;import org.apache.ibatis.annotations.Select;import com.xcode.beens.User;public interface UserMapper{	@Select("select * from user where id = #{id}")	public User selectUserById(int id);}

从字面意思上可以看得出,这个接口封装了一个操作,selectUserById ,我们可以看见,在这个方法的上面有一段注解,:

@Select("select * from user where id = #{id}")

其实最牛逼的就是这个注解了。这个注解成功的将数据库的sql语句封装成了 Java 的操作。

然后 为了让MyBatis知道我们在这里封装了这么一个操作。

我们必须在它的配置文件MyBatis-Config.xml 里面配置一下。让MyBatis知道有这么个东西存在

  
        
    

好了 一切都配置好了。还有一个问题就是,怎么让MyBatis读取到MyBatis-Config.xml这个配置文件呢?这个配置文件放哪里呢?

我们这里呢,将这个配置文件放在 src 目录下。

新建一个Test类。来看看MyBatis的神奇之处。、

Test.java

package com.xcode.Test;import java.io.Reader;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import com.xcode.beens.User;import com.xcode.beens.mapperInterfaces.UserMapper;public class Test{	private static SqlSessionFactory sqlSessionFactory;	private static Reader reader;	public static void main(String[] args) throws Exception	{	        //读取配置文件		reader = Resources.getResourceAsReader("MyBatis-Config.xml");		//绑定配置文件。		sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);				创建操作数据库的session		SqlSession session = sqlSessionFactory.openSession();				//通过接口的 class,它会返回这个接口的实例。		UserMapper userMapper = session.getMapper(UserMapper.class);				//通过调用接口里的定义的方法,就可以达到操作数据库的操作、		User user = userMapper.selectUserById(1);		System.out.println(user.getName());				//操作完了之后必须close掉、		session.close();	}}

不知道你们觉得怎么样。反正我是觉得巨方便无比。

当然了,其中还有很多东西没有说。你们可以去看看它的官方文档。反正有中文的,也不怕看不懂、

转载于:https://my.oschina.net/xiaolei123/blog/505502

你可能感兴趣的文章
stingray 页面布局与设计
查看>>
江南白衣整理和开发的java常用工具类
查看>>
Android.mk 文件语法详解
查看>>
android的armeabi和armeabi-v7a
查看>>
android自己定义控件系列教程-----仿新版优酷评论剧集卡片滑动控件
查看>>
emacs的常用配置备份
查看>>
lvs之 lvs+nginx+tomcat_1、tomcat_2+redis(lvs dr 模式)
查看>>
让js中的函数只有一次有效调用的三种常用方法
查看>>
python实现算24的算法
查看>>
Extending a logical volume in a virtual machine running Red Hat or Cent OS (1006371)
查看>>
操作xml格式的字符串的方法(C#)
查看>>
[转]MySQL索引详解(1)
查看>>
poj 3040 Allowance 贪心
查看>>
分享27款最佳的复古风格 WordPress 主题
查看>>
ASP.NET 打包多CSS或JS文件以加快页面加载速度的Handler
查看>>
让“是男人就下到100层”在Android平台上跑起来
查看>>
hdu 1010:Tempter of the Bone(DFS + 奇偶剪枝)
查看>>
文件和目录之umask函数
查看>>
ecmall的物流配送体系改造
查看>>
[Python]网络爬虫(九):百度贴吧的网络爬虫(v0.4)源码及解析(转)
查看>>