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.mysql.jdbc.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项目)
结构如下:

结果如下:

时间: 2024-10-20 12:03:38

MyBatis入门的相关文章

MyBatis入门学习教程(一)-MyBatis快速入门_java

      MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis .2013年11月迁移到Github. iBATIS一词来源于"internet"和"abatis"的组合,是一个基于Java的持久层框架.iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO) 首先给大家介绍MyBat

MyBatis入门程序_java

什么是mybatis MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plan Old Java Objects,普通的Java对象)映射成数据库中的记录. (一).程序环境 1.jar包 2.classpath目录下建立SqlMapConfig.xml. mybatis的配置文件.全部设置有如下 同时,数据库的

Mybatis入门教程(四)之mybatis动态sql_java

推荐阅读: MyBatis入门学习教程(一)-MyBatis快速入门  什么是动态SQL? 动态SQL有什么作用? 传统的使用JDBC的方法,相信大家在组合复杂的的SQL语句的时候,需要去拼接,稍不注意哪怕少了个空格,都会导致错误.Mybatis的动态SQL功能正是为了解决这种问题, 其通过 if, choose, when, otherwise, trim, where, set, foreach标签,可组合成非常灵活的SQL语句,从而提高开发人员的效率. 下面就去感受Mybatis动态SQL

MyBatis入门初体验之使用大全(2)_java

MyBatis简介 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis .2013年11月迁移到Github. iBATIS一词来源于"internet"和"abatis"的组合,是一个基于Java的持久层框架.iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO) 1.所需jar包

Mybatis入门例子

Mybatis是轻量级的持久化框架,的确上手非常快. Mybatis大体上的思路就是由一个总的config文件配置全局的信息,比如mysql连接信息等.然后再mapper中指定查询的sql,以及参数和返回值. 在Service中直接调用这个mapper即可. 依赖的jar包 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <versio

mybatis实战教程(mybatis in action),mybatis入门到精通

 目录(?)[-] mybatis实战教程mybatis in action之一开发环境搭建 mybatis实战教程mybatis in action之二以接口的方式编程 mybatis实战教程mybatis in action之三实现数据的增删改查 mybatis实战教程mybatis in action之四实现关联数据的查询 mybatis实战教程mybatis in action之五与spring3集成附源码 mybatis实战教程mybatis in action之六与Spring

【MyBatis框架】MyBatis入门程序第二部分

我们通过写一个简单的MyBatis小项目来在实战中学习MyBatis,接着上一篇继续 我们开始实现需求中的添加和删除用户功能 (1)向数据库中添加用户数据 使用User.xml,加入添加用户的sql语句. <!-- 添加用户 parameterType:指定输入参数类型是pojo(包括用户信息) #{}中指定POJO的属性名,接收到POJO对象的属性值,mybatis通过OGNL获取对象的属性 --> <insert id="insertUser" parameter

后台(35)——MyBatis入门示例

探索Android软键盘的疑难杂症 深入探讨Android异步精髓Handler 详解Android主流框架不可或缺的基石 站在源码的肩膀上全解Scroller工作机制 Android多分辨率适配框架(1)- 核心基础 Android多分辨率适配框架(2)- 原理剖析 Android多分辨率适配框架(3)- 使用指南 自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View

深入浅出Mybatis系列(一)---Mybatis入门

深入浅出Mybatis系列(一)---Mybatis入 一.Mybatis环境搭建及简单实例 1. 新建web项目, 添加依赖包:mybatis包.数据库驱动包(我使用的是mysql).日志包(我使用的是log4j), 由于我的是maven项目, 那么添加依赖包就简单了,直接在pom.xml添加依赖即可. pom.xml: <dependencies> <!-- 添加junit --> <dependency> <groupId>junit</grou

【MyBatis框架】MyBatis入门程序第一部分

我们通过写一个简单的MyBatis小项目来在实战中学习MyBatis 1.需求 根据用户id(主键)查询用户信息 根据用户名称模糊查询用户信息 添加用户 删除 用户 更新用户 mybatis运行环境(jar包): 从https://github.com/mybatis/mybatis-3/releases下载,3.2.7版本 lib下:依赖包 mybatis-3.2.7.jar:核心 包 mybatis-3.2.7.pdf,操作指南 加入mysql的驱动包 加入的所有jar包如图(可以在这里下载