mybatis 第一天环境的搭建(一)
因上一章中写的列子不是很规范,接下来将介绍实现该功能的第二种形式,我这边尽量用代码来表达我的意思,理论有不清楚的可以参考官网文档:
http://mybatis.github.io/mybatis-3/zh/getting-started.html
namespace="X",x是这个类的实际地址
以下开拔各个文件代码:
1. 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> <typeAliases> <typeAlias alias="User" type="com.bugyun.mybatis.model.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/test" /> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com/bugyun/mybatis/model/UserMapper.xml"/> </mappers> </configuration>
2. UserMapper.xml
<!-- 如果用第二种方式 namespace=“X” X=X。java类的地址 --> <mapper namespace="com.bugyun.mybatis.model.UserMapper"> <select id="selectUserInfo" parameterType="int" resultType="User"> select * from user where id = #{id} </select> </mapper>
3. UserMapper.java ( 这里面的方法 名要和 UserMapper.xml 里的 id 名称一一对应)
package com.bugyun.mybatis.model;
public interface UserMapper {
public User selectUserInfo(int i);
}
4. Test.java
package com.bugyun.test;
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.bugyun.mybatis.model.User;
import com.bugyun.mybatis.model.UserMapper;
public class Test {
private static SqlSessionFactory sqlSessionFactory;
private static Reader reader;
static {
try {
reader = Resources.getResourceAsReader("configuration.xml");
sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
} catch (Exception e) {
e.printStackTrace();
}
}
public static SqlSessionFactory getSession() {
return sqlSessionFactory;
}
public static void main(String[] args) {
SqlSession session = sqlSessionFactory.openSession();
try {
UserMapper userMapper = session.getMapper(UserMapper.class);
User user = userMapper.selectUserInfo(1);
System.out.println(user.getUserAddress());
System.out.println(user.getUserName());
} finally {
session.close();
}
}
详情见附件,有不清楚的请留言,谢谢!