mybatis入门之一、mybatis项目部署
-目录结构
1.1需要用到的jar 包
mybatis.jar
mysql-connector.jar
1.2环境配置文件——-Configure.xml(在src目录下,这个文件完成了对数据库的配置)
<?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.mybatis.models.User" />
</typeAliases>
<environments default="development"> <!-- mybatis 的环境 -->
<environment id="development">
<transactionManager type="JDBC" /><!-- 事务管理器 -->
<dataSource type="POOLED"> <!-- 数据源 -->
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/test" />
<property name="username" value="root" />
<property name="password" value="caorui" />
</dataSource>
</environment>
</environments>
<mappers> <!-- 指定映射文件或映射类 -->
<mapper resource="com/mybatis/models/User.xml" />
</mappers>
</configuration>
1.3对应的java 对象及其映射文件和数据库的表
package com.mybatis.models;
public class User {
private int id;
private String name;
private String phone;
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 getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
}
- 对象的映射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.mybatis.models.UserMapper">
<select id="GetUserByID" parameterType="int" resultType="User">
select * from `user` where id = #{id}
</select>
</mapper>
- 数据库表创建, mysql
dos下,
mysql -u -root -p
密码
use test;
create table user(id int(10) NOT NULL,name varchar(20),phone varchar(20));
insert into user values(1,”ccc”,”333333333”);
1.4 测试类
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 com.mybatis.models.User;
public class HelloWorld {
private static SqlSessionFactory sqlSessionFactory;
private static Reader reader;
static {
try {
reader = Resources.getResourceAsReader("config/Configure.xml");
sqlSessionFactory=new SqlSessionFactoryBuilder().build(reader);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
SqlSession session = sqlSessionFactory.openSession();
try {
User user = (User) session.selectOne(
"com.mybatis.models.UserMapper.GetUserByID", 1);
if(user!=null){
String userInfo = "名字:"+user.getName();
System.out.println(userInfo);
}
} finally {
session.close();
}
}
}