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

MyBatis入门

时间:2015-07-27 00:22:05      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:mybatis   持久层框架   可扩展   

一、简介

持久层框架是 Java 开发的重要部分,但是现在流行的 Hibernate 是一种比较重型的框架,MyBatis作用一种轻量化的开源持久层框架,可以提高开发效率,同时MyBatis也是一种方便掌握与使用的框架。MyBatis 最大的优点就是 SQL 与代码完全分离。提高 Java 开发的规范性与可扩展性。

二、准备工作
1、下载地址:
https://github.com/mybatis/mybatis-3/releases/tag/mybatis-3.3.0
2、导入工程所需jar包(连接mysql的jar包也是必须的)
技术分享
3、日志配置
1) 加入log4j.properties配置文件
2) 修改配置文件如下
技术分享

三、MyBatis工作流程
1、概述:读取基本配置文件,生成SqlSessionFactory,建立SqlSession,调用MyBatis的API,查询map配置,返回结果,关闭SqlSession。
2、基本配置文件:MyBatisConfig.xml中引入map配置文件,并且配置数据库的基本信息,如下:

<?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>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">  <!-- 使用连接池 -->
<property name="driver" value="com.mysqljdbc.Driver"/>       <!--  使用mysql数据库 -->
<property name="url" value="jdbc:mysql://localhost:3306/book"/>   <!--  自定义url-->
<property name="username" value="root"/>
<property name="password" value=""/>   <!--  使用自己数据库的密码 -->
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="book/map/User.xml"/>
</mappers>
</configuration>

3、map配置文件:map中包含各种sql语句,如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="book.map.User">
<select id="findById" parameterType="int" resultType="book.pojo.User">
select * from User where id = #{id}
</select>
</mapper>

4、SqlSessionFactory:
每一个MyBatis的应用程序都以一个SqlSessionFactory对象的实例为核心。SqlSessionFactory对象的实例可以通过SqlSessionFactoryBuilder对象来获得。SqlSessionFactoryBuilder对象可以从XML配置文件,或从Configuration类的习惯准备的实例中构建SqlSessionFactory对象。

5、SqlSession:
在 MyBatis 中,你可以使用 SqlSessionFactory 来创建 SqlSession。一旦你获得一个 session 之后,你可以使用它来执行映射语句,提交或回滚连接,最后,当不再需要它的时 候, 你可以关闭 session。

  • 代码如下:
package book.test;
import java.io.IOException;
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 book.pojo.User;
public class Test {
    public static void main(String[] args){
        String resource="book/map/MyBatisConfig.xml";
        Reader reader=null;
        try {
            reader=Resources.getResourceAsReader(resource);
        } catch (IOException e) {
            e.printStackTrace();
        }       
        SqlSessionFactory sqlMapper=new SqlSessionFactoryBuilder().build(reader);
        SqlSession  session=sqlMapper.openSession();    
        User tmp=session.selectOne("findById",1);
        System.out.println("userName=="+tmp.getUserName());
        session.close();     
    }
}

6、建立数据表:如下
技术分享
插入第一个数据:id:1, userName:张山, password:zhangshan。

7、运行程序(注意实例程序建立的是java项目)
结构如下:
技术分享
结果如下:
技术分享

版权声明:本文为博主原创文章,转载请注明本博客地址!look to the master,follow the master,walk with the master,see through the master, become the master.

MyBatis入门

标签:mybatis   持久层框架   可扩展   

原文地址:http://blog.csdn.net/jkxqj/article/details/47074271

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