mybatis-3.0.6
1.首先是User类,对应数据库中的user table.
package com.mybatis.bean;
public class User {
private int id;
private String name;
private int age;
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 int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return id + " " + name + " " + age;
}
}
2.是User.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="com.mybatis.bean.UserMapper">
<select id="selectOne" parameterType="int" resultType="com.mybatis.bean.User">
select * from [user] where id = #{id}
</select>
<select id="selectList" resultType="com.mybatis.bean.User">
select * from [user]
</select>
<insert id="insertUser" parameterType="com.mybatis.bean.User">
insert into [user] (id, name, age) values(#{id}, #{name}, #{age})
</insert>
<update id="updateUser" parameterType="com.mybatis.bean.User">
update [user] set name = #{name} where id = #{id}
</update>
<delete id="deleteUser" parameterType="int">
delete from [user] where id = #{id}
</delete>
</mapper>
3.配置文件configuration.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>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
<property name="url" value="jdbc:sqlserver://localhost;database=mydatabase;"/>
<property name="username" value="dba"/>
<property name="password" value="1234"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/mybatis/bean/User.xml"/>
</mappers>
</configuration>
4.写一个工具类.
package com.mybatis.until;
import java.io.IOException;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class MybatisUntil {
private static SqlSessionFactory sqlSessionFactory = null;
static {
String resource = "configuration.xml";
Reader reader = null;
try {
reader = Resources.getResourceAsReader(resource);
} catch (IOException e) {
e.printStackTrace();
}
sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
}
public static SqlSessionFactory getSqlSessionFactory(){
return sqlSessionFactory;
}
}
6.Dao类
package com.mybatis.dao;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.mybatis.bean.User;
import com.mybatis.until.MybatisUntil;
public class UserDao {
public User query(int id){
SqlSession session = MybatisUntil.getSqlSessionFactory().openSession();
User user = null;
try{
user = (User)session.selectOne("com.mybatis.bean.UserMapper.selectOne", id);
}catch(Exception e){
e.printStackTrace();
}finally{
session.close();
}
return user;
}
public List<User> queryAll(){
SqlSession session = MybatisUntil.getSqlSessionFactory().openSession();
List<User> list = null;
try {
list = session.selectList("com.mybatis.bean.UserMapper.selectList");
} catch (Exception e) {
e.printStackTrace();
}finally{
session.close();
}
return list;
}
public void insertUser(User user){
SqlSession session = MybatisUntil.getSqlSessionFactory().openSession();
try {
session.insert("com.mybatis.bean.UserMapper.insertUser", user);
session.commit();
} catch (Exception e) {
e.printStackTrace();
}finally{
session.close();
}
}
public void updateUser(User user){
SqlSession session = MybatisUntil.getSqlSessionFactory().openSession();
try {
session.update("com.mybatis.bean.UserMapper.updateUser", user);
session.commit();
} catch (Exception e) {
e.printStackTrace();
}finally{
session.close();
}
}
public void delete(int id){
SqlSession session = MybatisUntil.getSqlSessionFactory().openSession();
try {
session.delete("com.mybatis.bean.UserMapper.deleteUser", id);
session.commit();
} catch (Exception e) {
e.printStackTrace();
}finally{
session.close();
}
}
}
7.测试类
package com.mybatis.test;
import java.util.Iterator;
import java.util.List;
import com.mybatis.bean.User;
import com.mybatis.dao.UserDao;
public class MybatisTest {
public static void main(String[] args) {
UserDao userDao = new UserDao();
// User user = userDao.query(1);
// System.out.println(user);
// List<User> list = userDao.queryAll();
// System.out.println(list.size());
// Iterator<User> iter = list.iterator();
//
// while(iter.hasNext()){
// System.out.println(iter.next());
// }
// User user = new User();
// user.setId(3);
// user.setName("iori");
// user.setAge(20);
// userDao.insertUser(user);
// User user = new User();
// user.setId(3);
// user.setName("iori");
// user.setAge(20);
// userDao.updateUser(user);
// userDao.delete(3);
}
}