1、编写Mapper.java接口
2、编写Mapper.xml文件
3、编写测试类
样例如下
更改数据库需要提交事务
- 接口
public interface PeopleMapper {
List<People> getPeopleList();
List<People> getPeopleById(int i);
int addPeople(People people);//更新数据库返回值是受影响的行数,所以是int
int delPeople(String name);
int updateP(People people);
}
- mapper.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="com.mybatis.DAO.PeopleMapper">
<select id="getPeopleList" resultType="com.mybatis.pojo.People">
select * from mybatis.people;
</select>
<select id="getPeopleById" resultType="com.mybatis.pojo.People">
select * from mybatis.people where id=#{id};
</select>
<insert id="addPeople" parameterType="com.mybatis.pojo.People">
insert into mybatis.people(id, name, age, address) VALUES (#{id},#{name},#{age},#{address});
</insert>
<delete id="delPeople" parameterType="String" >
delete from mybatis.people where name=#{name};
</delete>
<update id="updateP" parameterType="com.mybatis.pojo.People" >
update mybatis.people set name=#{name},age=#{age},address=#{address} where id=#{id};
</update>
</mapper>
- 测试类
public class PeopleDAOtest {
@Test
public void print() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
PeopleMapper peopleMapper = sqlSession.getMapper(PeopleMapper.class);
List<People> people = peopleMapper.getPeopleList();
for (People p :people){
System.out.println(p);
}
sqlSession.close();
}
@Test
public void test01(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
PeopleMapper peopleMapper = sqlSession.getMapper(PeopleMapper.class);
List<People> people = peopleMapper.getPeopleById(1);
for (People p :people){
System.out.println(p);
}
sqlSession.close();
}
@Test
public void test02(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
PeopleMapper peopleMapper = sqlSession.getMapper(PeopleMapper.class);
int i = peopleMapper.addPeople(new People(5,"hhh",12,"马来西亚"));
sqlSession.commit();//更新数据库一定要提交事务
print();
}
@Test
public void test03(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
PeopleMapper peopleMapper = sqlSession.getMapper(PeopleMapper.class);
peopleMapper.delPeople("hhh");
sqlSession.commit();//!!!!!!!!!!!!!!!!!
print();
}
@Test
public void test04(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
PeopleMapper peopleMapper = sqlSession.getMapper(PeopleMapper.class);
peopleMapper.updateP(new People(1,"kittyguy",500,"意大利"));
sqlSession.commit();//!!!!!!!!!!!!!!!!!!!!!!!!!!!
print();
}
}