MyBatis环境配置及入门
Mybatis 开发环境搭建,选择: MyEclipse8.5 版本,mysql 5.5, jdk 1.8, mybatis3.2.3.jar 包。这些软件工具均可以到各自的官方网站上下载。
整个过程在概如下,
1. 在本教程中,建立 java 工程,但一般都是开发 web 项目,这个系列教程最后是 web,但这里为了方便学习,本教程前面建立的都是 java 工程。
2. 将 mybatis-3.2.3.jar,mysql-connector-java-5.1.25-bin.jar 创建两个用户自定库(User Libary):mysql-connector 和 mybatis;
3. 创建 mysql 测试数据库和用户表, 注意,数据库使用的是 utf-8 编码。以解决不必要的中文乱码问题。
一、创建 Java 工程
首先建立一个名字为 Helloword 的 java project。选择 "File" -> "New" ->"Java Project",如下图所示:

这样就创建了一个 Java 工程了,我们继续下一步。接下来我们在 mybatis-start 项目中加入两个所需的程序库:mysql-connector 和 mybatis,右键点击 "mybatis-start" 项目,从弹出的菜单中选择: "Build Path" -> "Add Libaries..." ,如下图所示:

从中选择“User Library",点击“Next>",创建两个类库为:mysql-connector 和 mybatis,如下所示:

点击“User Libararies...",继续下一步,创建一个新的类库,如下图所示:

到此用户的一个类库创建完成,以相同的方式来创建另一个类库:
二、创建数据库和 User 表
创建所需的数据库和表,要创建的数据库是:yiibai,并在 yiibai 数据库创建一个表:user,如下图所示:
创建数据库:yiibai,使用 utf-8 编码。

接下我们创建一个表:user,并插入一条记录信息,其结构如下所示:
CREATE TABLE `user` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(64) NOT NULL DEFAULT '',
`dept` varchar(254) NOT NULL DEFAULT '',
`website` varchar(254) DEFAULT '',
`phone` varchar(16) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; -- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('1', 'yiibai', 'Tech', 'http://www.yiibai.com', '13800009988');
三、创建 Mybatis 配置文件


到此为止,前期准备工作就完成了。下面开始真正配置 mybatis-start 项目。设置 mybatis 配置文件: Configure.xml, 在 src/config 目录下建立此文件,内容如下:
<?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>
<typeAliases>
<typeAlias alias="User" type="com.yiibai.mybatis.models.User" />
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://127.0.0.1:3306/yiibai" />
<property name="username" value="root" />
<property name="password" value="" />
</dataSource>
</environment>
</environments> <mappers>
<!-- // power by http://www.yiibai.com -->
<mapper resource="com/yiibai/mybatis/models/User.xml" />
</mappers>
</configuration>
四、创建实体类和映射文件
首先创建一个包:com.yiibai.mybatis.models,并在下创建与数据库表对应的 User.java 类及其映射文件:User.xml,详细如下图所示:
package com.yiibai.mybatis.models;
public class User {
private int id;
private String name;
private String dept;
private String phone;
private String website;
public String getWebsite() {
return website;
}
public void setWebsite(String website) {
this.website = website;
}
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 getDept() {
return dept;
}
public void setDept(String dept) {
this.dept = dept;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
}

同时建立这个 User 类对应的映射文件 User.xml,详细如下代码所示:
<?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="com.yiibai.mybatis.models.UserMapper">
<select id="GetUserByID" parameterType="int" resultType="User">
select * from `user` where id = #{id}
</select>
</mapper>
下面是对这几个配置文件一点解释说明:
1、配置文件 Configure.xml 是 mybatis 用来建立 sessionFactory,里面主要包含了数据库连接相关内容,还有 java 类所对应的别名,比如:<typeAlias alias="User" type="com.yiibai.mybatis.models.User"/> 这个别名非常重要,在具体的类的映射中,比如:User.xml 中 resultType 就是对应这个。要保持一致,这里的 resultType 还有另外单独的定义方式,后面学习到我们再详细介绍说明。
2、Configure.xml 里面 的<mapper resource="com/yiibai/mybatis/models/User.xml"/>是包含要映射的类的 xml 配置文件。
3、在User.xml 文件里面主要是定义各种 SQL 语句,以及这些语句的参数,以及要返回的类型等等。
五、运行程序测试结果
在 src 源码目录下建立 一个类叫作:HelloWord, 来运行测试配置环境是否成功,具体代码如下示:
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.yiibai.mybatis.models.*; /**
*
* @author yiibai
* @copyright http://www.yiibai.com
* @date 2015/09/22
*/
public class HelloWord {
private static SqlSessionFactory sqlSessionFactory;
private static Reader reader; static {
try {
reader = Resources.getResourceAsReader("config/Configure.xml");
sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
} catch (Exception e) {
e.printStackTrace();
}
}
public static SqlSessionFactory getSession() {
return sqlSessionFactory;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SqlSession session = sqlSessionFactory.openSession();
try {
User user = (User) session.selectOne(
"com.yiibai.mybatis.models.UserMapper.GetUserByID", 1);
if(user!=null){
String userInfo = "名字:"+user.getName()+", 所属部门:"+user.getDept()+", 主页:"+user.getWebsite();
System.out.println(userInfo);
}
} finally {
session.close();
}
} }
现在运行这个程序,不是得到查询结果了?正确的输出结果应该如下:
名字:yiibai, 所属部门:Tech, 主页:http://www.yiibai.com

MyBatis环境配置及入门的更多相关文章
- mybatis环境配置与入门例子
1.jar包的导入 mybatis需要jar包:mybatis-3.4.6.jar mysql驱动jar包:mysql-connector-java-5.1.34.-bin.jar 日志记录jar包: ...
- idea spring+springmvc+mybatis环境配置整合详解
idea spring+springmvc+mybatis环境配置整合详解 1.配置整合前所需准备的环境: 1.1:jdk1.8 1.2:idea2017.1.5 1.3:Maven 3.5.2 2. ...
- Mybatis环境配置学习
Mybatis的使用环境配置步骤主要分为以下三步 1.导入jar包 2.创建mybatis的全局配置文件,并编写 3.创建mapper的配置文件 一.导入jar包 --- (踩坑:这一步中的导入mys ...
- [教程] Spring+Mybatis环境配置多数据源
一.简要概述 在做项目的时候遇到需要从两个数据源获取数据,项目使用的Spring + Mybatis环境,看到网上有一些关于多数据源的配置,自己也整理学习一下,然后自动切换实现从不同的数据源获取数据功 ...
- MyBatis环境搭建配置文件+入门视频下载
1.MyBatis优点 操作简单话,代码量少,效率高,成本就降低了 2.MyBatis缺点 参数只能限制为一个 selece语都要手动来写 3.与JDBC的关系:是对JDBC的扩展 把sql语句和ja ...
- MyBatis环境配置
<settings> <!-- 使全局的映射器启用或禁用缓存. --> <setting name="cacheEnabled" value=&quo ...
- cocos环境配置 -cocos2dx 入门
cocos最好的是安装官方exe,官方会把cocos 3.10和cocos studio都安装好. Cocos2d-x v3.10:点击http://www.cocos.com/,进入cocos官网, ...
- springboot学习入门简易版八---springboot2.0多环境配置、整合mybatis mysql8+(19-20)
2.11 SpringBoot多环境配置(19) application.properties中配置 Spring.profiles.active=prd 配置环境: Application-dev ...
- Mybatis学习笔记之一(环境搭建和入门案例介绍)
一.Mybatis概述 1.1 Mybatis介绍 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了go ...
随机推荐
- vue中使用animate.css动画库
1.安装: npm install animate.css --save 2.引入及使用: //main.js中 import animated from 'animate.css' Vue.use( ...
- iOS高版本备份恢复到低版本系统的方法
一般来说,在更新iOS系统的时候我们都会建议大家先用iTunes对系统进行完整备份.但时不时都会有人偷懒,或者使用手机OTA升级而没有对系统备份,最终导致不满意新系统了,想降级却无备份可以恢复的尴尬局 ...
- SQL Server 商业智能
原帖:http://bbs.51cto.com/thread-1089708-1.html 商业智能概述一.数据仓库与分析服务(SSAS)二.集成服务(SSIS)三.报表服务(SSRS)以下是SQL ...
- KVM初探之一--存储池与存储卷,使用virt-install创建虚拟机
在机器上装了一个Centos6.2用来测试KVM,对比Windows下的VMware worstation,KVM功能强大,定制性高,只要入了门,绝对是功能强大.用来作云计算不错.不过就是操作性差了点 ...
- ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN
问题描述:FatalListenerStartupException: Authentication failure 问题原因:连接RabbitMQ服务器异常,要么是用户名和密码错误,要么是使用的用户 ...
- WCF 服务应用程序与 服务库之间的区别
简单理解, WCF服务库,可以认为是一个包含WCF服务以及契约定义的类库.这儿库还不能直接运行,你可以在其他项目里引用,在宿主里启用托管这个库. 而WCF应用程序,是一个可以执行的程序,它有独立的进程 ...
- 一个JS引发的血案
转载一篇大师傅的文章: 原文链接:http://xn--i2r.ml/index.php/2017/08/05/39.html 又到了周末,闲来无聊,挖挖补天 找了个目标,发现一个站 查看源码发现一个 ...
- [转]Mustache 使用心得总结
原文地址:https://blog.csdn.net/xuemoyao/article/details/17896203 前言: 之前的一个项目里面就有用到这个前台的渲染模版,当时挺忙的也没时间抽空总 ...
- InstallShield脚本事件
脚本事件主要有三大类:Before Move Data(安装数据前).Move Data(安装数据过程中).After Move Data(安装数据后). OnBegin:在初始化后,被调用 OnFi ...
- Mongo分片集群脚本
bash大法好啊,一键玩mongo. 我的mongo版本是:MongoDB shell version v4.0.2 这里准备为大家献上Mongo创建分片和可复制集的脚本,以及在部署的时候踩的坑. 分 ...