本篇博客知识点:
快速搭建一个简单的mybatis项目
第一步:准备好mybatis框架所需要的包~
第二步:需要写一个mybatis的配置文件 mybatis-config.xml
<?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="cn.hncu.domain.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/mybatis?characterEncoding=UTF-8"/>
<property name="username" value="root"/>
<property name="password" value="1234"/>
<property name="poolMaximumActiveConnections" value="5"/><!-- 池大小 -->
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="cn/hncu/domain/User.xml"/>
<mapper resource="cn/hncu/domain/User2.xml"/>
</mappers>
</configuration>
第三步:写一个获取Session的工具类SqlSessionUtils
package cn.hncu.utils;
import java.io.InputStream;
import java.sql.Connection;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
/**
* @author<a href="mailto:953801304@qq.com">胡龙华</a>
* @version 2017-8-26 下午4:04:14
* @fileName SqlSessionUtils.java
*/
public class SqlSessionUtils {
private static SqlSessionFactory sessionFactory=null;//DataSource --pool
static{
try {
InputStream in = Resources.getResourceAsStream("mybatis-config.xml");//加载配置文件
sessionFactory = new SqlSessionFactoryBuilder().build(in);
/*
这里给一种不使用Resources类加载配置文件的方法(我们自己利用classLoader以底层的方式加载):
sessionFactory = new SqlSessionFactoryBuilder().build(SqlSessionUtils.class.getClassLoader().getResourceAsStream("mybatis-config.xml") );
*/
} catch (Exception e) {
e.printStackTrace();
}
}
public static SqlSessionFactory getSessionFactory() {
return sessionFactory;
}
//Session ----Connection
public static SqlSession getSqlSession() {
return sessionFactory.openSession();
}
public static SqlSession getSqlSession(boolean boo) {
return sessionFactory.openSession(boo);//con.setAutoCommit(boo)
}
}
测试一下工具类是否成功
第四步:建立数据库表和值对象之间的联系
数据库表users
CREATE TABLE users(
id VARCHAR(32) PRIMARY KEY,
NAME VARCHAR(32),
pwd VARCHAR(32)
);
值对象
package cn.hncu.domain;
/**
* @author<a href="mailto:953801304@qq.com">胡龙华</a>
*/
public class User {
private String id;
private String name;
private String pwd;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + ", pwd=" + pwd + "]";
}
}
还需要一个user.xml来描述user—等下所以要执行是select的语句都再这儿写 以一个简答的查询为例
<?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">
<!-- 说明数据库定义的表示users -->
<mapper namespace="users">
<select id="all" resultType="cn.hncu.domain.User">
select * from users
</select>
</mapper>
使用,成功通过mabatis框架查询到底层信息