----配置文件----
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 --> .commit()
关闭连接
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();