初识MyBatis
2015-10-04 17:35
288 查看
第一步:添加jar包和配置log4j.properties(在hibernate中人家提供了这种在console打印sql语句的机制,但是mybatis是不提供的,需要自己配置)
下载地址 https://github.com/mybatis/mybatis-3/releases
log4j.properties:文件的内容
log4j.rootLogger=DEBUG, Console
#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
log4j.logger.java.sql.ResultSet=INFO
log4j.logger.org.apache=INFO
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
第二步:编写MyBatisConfig.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">
</transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="jike/book/map/jikeUser.xml"/>
</mappers>
</configuration>
第三步:配置jikeUser.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="/">
<select id="findById" parameterType="int" resultType="com.jike.mybatis.User">
select * from users where id=#{id}
</select>
</mapper>
第四步:创建持续化类User.JAVA
package com.jike.mybatis;
public class User {
private int id;
private String username;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
最后一步:编写一个测试类
package com.jike.mybatis.MyBatisTest;
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 org.apache.log4j.lf5.util.Resource;
import com.jike.mybatis.User;
public class MyBatisTest {
public static void main(String[] args) {
String resource="jike/book/map/MyBatisConfig.xml";
Reader reader=null;
SqlSession session;
try {
reader=Resources.getResourceAsReader(resource);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
SqlSessionFactory sqlMapper=new SqlSessionFactoryBuilder()
.build(reader);
session=sqlMapper.openSession();
User temp=session.selectOne("findById",1);
System.out.println(temp.getUsername());
session.close();
}
}
相关文章推荐
- 以太网帧识别VLAN
- pat1024Palindromic Number (25)
- hdu 1789 doing homework
- Enum:Backward Digit Sums(POJ 3187)
- UWP开发细节记录:加载图像文件到D2D位图和D3D纹理
- 【字符串算法】——KMP算法、压缩字符串、字符串镜像、翻转字符串
- mac 下sublime text 2 跳转到函数定义和jump back的快捷键
- [BZOJ1083] [SCOI2005]繁忙的都市
- hdu 1671 Phone List
- HDU 5495 LCS
- Android编码标准
- 126. Word Ladder II(Map, set, adj, Queue; BFS)
- hdu1211
- jsp页面动态显示当前的日期时间
- hdu1211
- hdu 1072 Nightmare(bfs)
- 路由器 交换机密码恢复
- python gettext使用
- BZOJ 1015 JSOI2008 星球大战 starwar 并检查集合
- 正则表达式