myBatis简单配置和使用
2016-05-04 14:06
375 查看
----配置文件----
1.核心配置:mybatis-config.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="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl" />
<property name="username" value="ibatis" />
<property name="password" value="ibatis" />
</dataSource>
</environment>
</environments>
<!-- mapping 文件路径配置 -->
<mappers>
<mapper resource="com/zhang/res/UserMapper.xml" />
</mappers>
</configuration>
2.映射配置:UserMapper.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="UserMapper">
<select id="queryUser" resultType="com.zhang.model.User">
select * from t_user
</select>
<select id="findUserById" resultType="com.zhang.model.User" parameterType="long">
select * from t_user where id = #{id}
</select>
<select id="findUserByName" resultType="com.zhang.model.User" parameterType="java.lang.String">
select * from t_user where name like '%'||#{name}||'%'
</select>
<insert id="addUser">
insert into t_user(id,name) values(#{id},#{name})
</insert>
<update id="updateUser" parameterType="com.zhang.model.User">
update t_user set name = #{name} where id = ${id}
</update>
<delete id="deleteUser" parameterType="java.lang.Long">
delete t_user where id = #{id}
</delete>
</mapper>
----使用----
获取工厂
SqlSessionFactoryBuilder
-->
.build(Reader
reader)
-->
SqlSessionFactory
获取连接
SqlSessionFactory
-->
.openSession()
-->
SqlSession
提交
SqlSession
--> .[b]commit()[/b]
关闭连接
SqlSession
-->
.close()
----sql操作----
查
List<User> users = session.selectList("UserMapper.queryUser");
User user = session.selectOne("UserMapper.findUserById",id);
List<User> users = session.selectList("UserMapper.findUserByName",name);
增
session.insert("UserMapper.addUser", user);
session.commit();
改
session.update("UserMapper.updateUser", user);
session.commit();
删
session.delete("UserMapper.deleteUser",id);
session.commit();
1.核心配置:mybatis-config.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="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl" />
<property name="username" value="ibatis" />
<property name="password" value="ibatis" />
</dataSource>
</environment>
</environments>
<!-- mapping 文件路径配置 -->
<mappers>
<mapper resource="com/zhang/res/UserMapper.xml" />
</mappers>
</configuration>
2.映射配置:UserMapper.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="UserMapper">
<select id="queryUser" resultType="com.zhang.model.User">
select * from t_user
</select>
<select id="findUserById" resultType="com.zhang.model.User" parameterType="long">
select * from t_user where id = #{id}
</select>
<select id="findUserByName" resultType="com.zhang.model.User" parameterType="java.lang.String">
select * from t_user where name like '%'||#{name}||'%'
</select>
<insert id="addUser">
insert into t_user(id,name) values(#{id},#{name})
</insert>
<update id="updateUser" parameterType="com.zhang.model.User">
update t_user set name = #{name} where id = ${id}
</update>
<delete id="deleteUser" parameterType="java.lang.Long">
delete t_user where id = #{id}
</delete>
</mapper>
----使用----
获取工厂
SqlSessionFactoryBuilder
-->
.build(Reader
reader)
-->
SqlSessionFactory
获取连接
SqlSessionFactory
-->
.openSession()
-->
SqlSession
提交
SqlSession
--> .[b]commit()[/b]
关闭连接
SqlSession
-->
.close()
----sql操作----
查
List<User> users = session.selectList("UserMapper.queryUser");
User user = session.selectOne("UserMapper.findUserById",id);
List<User> users = session.selectList("UserMapper.findUserByName",name);
增
session.insert("UserMapper.addUser", user);
session.commit();
改
session.update("UserMapper.updateUser", user);
session.commit();
删
session.delete("UserMapper.deleteUser",id);
session.commit();
相关文章推荐
- 一步一步写算法(之单向链表)
- 【图像算法】图像特征:GLCM灰度共生矩阵纹理特征
- 20. Valid Parentheses
- wind.js助力异步编程
- [spring源码学习]四、IOC源码——普通bean初始化
- 在JSP页面下使用AJAX实现用户名存在的检测
- Tomcate的启动问题
- python 装饰器的使用
- JAVA第一课
- JSONArray 数组 在不转为对象的情况下取出 某个元素组成列表
- tornado系列一:tornado基础
- Spark性能优化指南——基础篇
- 唐老师写给同学们的一封信
- 深入浅出Mybatis系列(二)---配置简介(mybatis源码篇)
- C语言4(数组)
- android 画一条分割线
- Terminal initialization failed; falling back to unsupported
- sorted()排序详解
- Java内存区域详解
- app在android 6.0或以上平台版本运行过程中请求权限