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)); } }