配置mybatis的配置文件。mybatis.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>
<settings>
<setting name="logImpl" value="LOG4J"/>
</settings>
<typeAliases>
<!-- 给一个类起别名 -->
<typeAlias type="cn.liu.pojo.User" alias="user"/>
<!-- 给包下所有类起别名 -->
<package name="cn.liu.pojo"/>
</typeAliases>
<environments default="default">
<environment id="default">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://127.0.0.1:3306/my01"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="cn/liu/mapper/UserMapper.xml"/>
</mappers>
</configuration>
mapper.xml的sql语句。
<?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="a.b">
<!-- 1.第一种查询方式 -->
<select id="selone" parameterType="int" resultType="cn.liu.pojo.User">
select * from user where uid=#{0}
</select>
<select id="sel" parameterType="int" resultType="cn.liu.pojo.User">
select * from user where uid=#{param1}
</select>
<!-- 2.多个参数导入 -->
<select id="selmap" parameterType="map" resultType="cn.liu.pojo.User">
select * from user where uid=#{uid} and age=#{age}
</select>
<!-- 分页 -->
<select id="sellimit" parameterType="map" resultType="cn.liu.pojo.User">
select * from user limit #{page},#{num}
</select>
<!-- 用别名 -->
<select id="seltwo" resultType="user">
select * from user
</select>
<!-- 用别名 -->
<select id="selthree" resultType="User">
select * from user
</select>
<!-- 新增 -->
<insert id="ins" parameterType="user">
insert into user values(#{uid},#{uname},#{age})
</insert>
<!-- 更新 -->
<update id="up" parameterType="user">
update user set uname=#{uname} where uid=#{uid}
</update>
<!-- 删除 -->
<delete id="de" parameterType="int">
delete from user where uid=#{0}
</delete>
</mapper>
测试类:
package cn.liu.test;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
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 cn.liu.pojo.User;
public class Test {
public static void main(String[] args) throws IOException{
//读取xml,转换为流对象
InputStream is = Resources.getResourceAsStream("mybatis.xml");
//使用工厂设计模式
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
//生成一个Sqlsession
SqlSession session = factory.openSession();
/*
HashMap<String, Object> map = new HashMap();
map.put("uid", 1);
map.put("age", 21);
User u = session.selectOne("a.b.selmap", map);
System.out.println(u);
int page = 2;
int num = 3;
HashMap<String,Object> map = new HashMap();
map.put("page", page);
map.put("num", num);
List<User> list = session.selectList("a.b.sellimit", map);
System.out.println(list.toString());
List<User> list = session.selectList("a.b.selthree");
List<User> list2 = session.selectList("a.b.seltwo");
System.out.println(list2.toString());
User u = new User();
u.setAge(28);
u.setUname("李红");
u.setUid(10);
int i = session.insert("a.b.ins",u);
if(i>0){
System.out.println("新增成功");
}else{
System.out.println("新增失败");
}
session.commit();
int i = session.delete("a.b.de",10);
if(i>0){
System.out.println("删除成功");
}else{
System.out.println("删除失败");
}
session.commit();
User u = new User();
u.setAge(28);
u.setUname("龚红");
u.setUid(8);
int i = session.update("a.b.up", u);
if(i>0){
System.out.println("更新成功");
}else{
System.out.println("更新失败");
}
*/
User one = session.selectOne("a.b.selone",8);
System.out.println(one.toString());
session.commit();
session.close();
}
}