MyBatis是支持定制化SQL、存储过程以及高级映射的优秀持久层框架。MyBatis 避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以对配置和原生Map使用简单的xml或注解,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。

  MyBatis目前最新版本为MyBatis的-3.4.4,此版本和 MyBatis的-3.4.3 版本是没有变化的,只是因为在Meven Central的3.4.3 JAR中有一个错误,所以释放3.4.4来解决它。下载地址为:https://github.com/mybatis/mybatis-3/releases 。下载之后解压,目录情况如图:

                                

在eclipse中进行环境的搭建和配置。需要导入mybatis-3.4.4.jar包。lib目录下也有很多其他jar包,暂时先不用,然后导入一个操作数据库的jar包,这里我们用的是mysql-connector-java-5.1.7-bin.jar,在src下建立一个sqlmap-config.xml文件,指明了mybatis的配置信息。文件内容模板如下:

<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN" "http://ibatis.apache.org/dtd/ibatis-3-config.dtd">
<configuration>
<environments default="environment">
<environment id="environment">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" 
value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/mydb1" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper/Mapper.xml" />
</mappers>
</configuration>

这里需要注意的是数据库连接部分,这里指明了数据库连接信息。

如果用的oracle数据库,需要修改driver和url为oracle的,username和password为你自己的数据库用户名和密码。

然后需要创建一个名为mapper(与<mapper resource="mapper/Mapper.xml" /></mappers>路径一致)的包,然后创建Mapper.xml映射文件,指明映射规则。模板如下:

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN" 
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">
<mapper namespace="mapper.Mapper">

<!-- 查找所有员工 -->

<select id="findAll" resultType="bean.Emp">
select * from emp
</select>

<!-- 可以写多条语句-->

</mapper>

MyBatis是接口编程,命名空间指定了对应的接口名和路径。

当然需要一个Emp类,和数据库中的emp表字段一样。

需要在mapper包下建立一个Mapper.java的接口。

public List<Emp> findAll();

这个为接口的方法,方法名与映射文件的id名一致,方法的返回值对应映射器的resultType,如果有参数的话,参数对应parameterType。

到此,MyBatis环境已经完成,可以写一个测试类进行测试一下。测试前需要写一个MyBatisUtil类,进行连接数据库。代码如下:

package util;
import java.io.InputStream;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;

public class MybatisUtil {
public static SqlSession getSqlSession(){
SqlSessionFactoryBuilder ssfb = new SqlSessionFactoryBuilder();
InputStream is = MybatisUtil.class.getClassLoader().getResourceAsStream("sqlmap-config.xml");
SqlSessionFactory ssf = ssfb.build(is);
SqlSession ss = ssf.openSession();
return ss;
}
@Test
public void test(){
SqlSession ss = MybatisUtil.getSqlSession();
System.out.println(ss);
}
}

运行test测试方法,没有报错,输出org.apache.ibatis.session.defaults.DefaultSqlSession@211af1b1

至此,环境没有问题,可以开始编码了。

MyBatis 框架的搭建和配置的更多相关文章

  1. 用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建四:配置springmvc

    在用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建三:配置spring并测试的基础上 继续进行springmvc的配置 一:配置完善web.xml文件

  2. 用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建三:配置spring并测试

    这一部分的主要目的是 配置spring-service.xml  也就是配置spring  并测试service层 是否配置成功 用IntelliJ IDEA 开发Spring+SpringMVC+M ...

  3. 用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建二:配置MyBatis 并测试(2 配置spring-dao和测试)

    用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建二:配置MyBatis 并测试(1 搭建目录环境和依赖) 四:在\resources\spring 下面 ...

  4. 用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建二:配置MyBatis 并测试(1 构建目录环境和依赖)

    引言:在用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建一   的基础上 继续进行项目搭建 该部分的主要目的是测通MyBatis 及Spring-dao ...

  5. Spring+SpringMvc+Mybatis框架集成搭建教程

    一.背景 最近有很多同学由于没有过SSM(Spring+SpringMvc+Mybatis , 以下简称SSM)框架的搭建的经历,所以在自己搭建SSM框架集成的时候,出现了这样或者那样的问题,很是苦恼 ...

  6. 用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建一:建立MAVEN Web项目

    一:创建maven web项目er

  7. SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)

    1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下 ...

  8. MyBatis框架基于XML的配置

    什么是MyBatis? 答:它是一个持久层框架 说的太简单了吗?那让我们来看一下官方的文档描述: MyBatis有什么作用呢? 1.持久层的零实现 2.可以自动将数据封装到对象里面不需要手工编写映射的 ...

  9. MyBatis框架的搭建

    前言:MyBatis框架的前身是iBatis,本身是Apache的一个开源项目. MyBatis框架是一个半自动的orm映射框架,是实体类和sql语句之间建立映射关系,sql语句写在单独的配置文件中, ...

随机推荐

  1. redis学习(2)--- Redis概述

    一.Redis介绍 高性能键值对数据库,支持的键值对数据类型: 字符串类型 列表类型 有序集合类型 散列类型 集合类型 官方测试读写速度: 测试50个并发程序,执行10万次请求 读的速度:每秒11万次 ...

  2. Spring学习(14)--- 基于Java类的配置Bean 之 @ImportResource & @Value 注解

    学习如何使用@ImportResource 和 @Value 注解进行资源文件读取 例子: 先创建一个MyDriverManager类(模拟读取数据库配置信息) package com.beanann ...

  3. 在Caffe添加Python layer详细步骤

    本文主要讨论的是在caffe中添加python layer的一般流程,自己设计的test_python_layer.py层只是起到演示作用,没有实际的功能. 1) Python layer 在caff ...

  4. Windows系统前端常用PS快捷键:

    1.设置滚轮放大缩小: 编辑--首选项--常规--用滚轮缩放 2.V 移动 ctrl+v 自动选中(图层), 3.M 选框 Shift+M 变换形状 Alt :确定圆形/矩形中心 Shift: 圆形/ ...

  5. C# servicestack.redis 互通 java jedis

    拥抱变化,如今也走上了.net/java通吃的时代,下面就讲讲如何让.net/java都能正常访问分片的redis吧. 有几个关键点:一致性环哈希.哈希算法.序列化.反序列化 后两个都比较直接,只要选 ...

  6. Filter自动登录

    Dao层略过 Domain略过 Service层过 Web层 Select逻辑 获取表单数据,Web-service--Dao返回用户信息 如果返回不为null否则,重定向到登录页面.则判断用户是否勾 ...

  7. jsp传到java的control层的方法

    jsp传到java的control层的方法1.form表单 用<input type="submit">提交,提交到后台的参数在form表单内<form meth ...

  8. js字符串转换为数字 总结

    a. 将一个字符串转换为数字的一种缺少些技巧但是很清楚明白的方法就是:把Number()构造函数作为一个函数来调用:  var number = Number(string_value); b. pa ...

  9. VS2015 +Qt5 串口工具

    简单的小工具是VS2015 + Qt5.6.1实现的,界面部分是Qt实现,串口是封装的WinAPI,把串口收发模块封装成了个Serialport.dll 供Qt界面调用. 由于VS2015需要CRT运 ...

  10. SharePoint 2016 修改左上角连接

    SharePoint 2016默认会有左上角这样的一个功能.  估计都想把它改掉. 方法1: 打开,输入下面的命令,可将图中的sharepoint修改为想要的文字 $webapp = Get-SPWe ...