1.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="${driverClass}" /> <property name="url" value="${url}" /> <property name="username" value="${username}" /> <property name="password" value="${password}" /> </dataSource> </environment> </environments> <mappers> <mapper resource="com/ibatis/UserVo.xml" /> </mappers> </configuration>
2.userVo.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.ibatis"> <select id="userVoList" parameterType="int" resultType="com.ibatis.UserVo"> SELECT * FROM UserVo </select> <select id="queryUserVoById" parameterType="int" resultType="com.ibatis.UserVo"> SELECT * FROM UserVo where id= #{id} </select> <insert id="insertUserVo" parameterType="com.ibatis.UserVo"> INSERT INTO UserVo(name,age,sex) values(#{name},#{age},#{sex}) </insert> </mapper>
3.jdbc.properties
driverClass=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost/msb
username=root
password=123456
package com.ibatis;
import java.io.Serializable;
/**
* @ClassName UserVo
* @Description TODO
* @author LiuQing
* @date 2012-10-25 下午10:04:55
*
*/
public class UserVo implements Serializable {
private Integer id;
private String name;
private String sex;
private int age;
public UserVo() {
}
public UserVo(Integer id) {
super();
this.id = id;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "UserVo [id=" + id + ", name=" + name + ", sex=" + sex
+ ", age=" + age + "]";
}
}
test sample
package com.ibatis;
import java.io.IOException;
import java.io.InputStream;
import java.util.Collection;
import java.util.Properties;
import java.util.Random;
import javax.annotation.Resource;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
/**
* @ClassName TestMan
* @Description TODO
* @author LiuQing
* @date 2012-10-25 下午9:54:14
*
*/
public class TestMan {
private static SqlSessionFactory sessionFactory;
private static ThreadLocal<SqlSession> sessiones = new ThreadLocal<SqlSession>();
static {
try {
InputStream myIbatis = TestMan.class.getResourceAsStream("/com/ibatis/myBatis-config.xml");
Properties config = new Properties();
config.load(Resource.class.getResourceAsStream("/com/ibatis/jdbc.properties"));
sessionFactory = new SqlSessionFactoryBuilder().build(myIbatis, config);
}
catch (IOException e) {
e.printStackTrace();
}
}
public SqlSession getSession() {
if (sessiones.get() != null) {
return sessiones.get();
}
SqlSession session = sessionFactory.openSession();
sessiones.set(session);
return session;
}
public void release() {
SqlSession session = sessiones.get();
if (session != null) {
session.close();
sessiones.remove();
}
}
/**
*
* @Title addUserVo
* @Description addition UserVo
* @param userVo
* @return UserVo
*/
public UserVo addUserVo(UserVo userVo) {
SqlSession session = this.getSession();
session.insert("insertUserVo",userVo);
session.commit();
this.release();
return userVo;
}
/**
*
* @Title queryById
* @Description queryById
* @param userVo
* @return UserVo
*/
public UserVo queryById(UserVo userVo) {
return this.getSession().selectOne("queryUserVoById", userVo.getId());
}
/**
*
* @Title queryByAll
* @Description
* @return Collection<UserVo>
*/
public Collection<UserVo> queryByAll() {
return this.getSession().selectList("userVoList");
}
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
TestMan testMan = new TestMan();
UserVo vo = new UserVo();
vo.setName("LouQing" + new Random().nextInt(94));
vo.setAge(new Random().nextInt(34));
vo.setSex("male");
testMan.addUserVo(vo);
Collection<UserVo> userVoes = testMan.queryByAll();
for (UserVo en:userVoes) {
System.out.println(en);
}
testMan.queryById(new UserVo(2));
}
}