首先大家先要导入好jar,在这基础上编写mybatis.xml主配置文件和工具类,这些程序在之前的博客里面都有,在此我只编写相关的代码。
package com.gg.entity;
public class Person {
private Integer pid;
private String pname;
private String page;
public Person() {
super();
// TODO Auto-generated constructor stub
}
public Person(Integer pid, String pname, String page) {
super();
this.pid = pid;
this.pname = pname;
this.page = page;
}
public Person(String pname, String page) {
super();
this.pname = pname;
this.page = page;
}
@Override
public String toString() {
return "Person [pid=" + pid + ", pname=" + pname + ", page=" + page + "]";
}
public Integer getPid() {
return pid;
}
public void setPid(Integer pid) {
this.pid = pid;
}
public String getPname() {
return pname;
}
public void setPname(String pname) {
this.pname = pname;
}
public String getPage() {
return page;
}
public void setPage(String page) {
this.page = page;
}
}
package com.gg.dao;
import org.apache.ibatis.annotations.Param;
import com.gg.entity.Person;
public interface PersonMapper {
public void insertPerson(Person person);
//通过主键修改名字和年龄
public void update1(Person person);
public void update2( @Param("pid") Integer pid,@Param("pname")String pname ,@Param("page") String page);
//把所有姓牛的同学年龄改为12岁
public void update3(Person person);
public void update4();
//把年龄小于30岁的人的名字修改为wangwu
public void update5(Person person);
//把名字叫wangwu的人 名字改成李四
public void update6(@Param ("oldname")String oldname,@Param ("newname")String newname);
}
<?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.gg.dao.PersonMapper">
<!-- mybatis默认情况下就是支持自动+1 -->
<insert id="insertPerson" keyProperty="pid" useGeneratedKeys="true" >
insert into person values(#{pid},#{pname},#{page})
</insert>
<update id="update1">
update person set pname=#{pname},page=#{page} where pid=#{pid}
</update>
<update id="update2">
update person set pname=#{pname},page=#{page} where pid=#{pid}
</update>
<update id="update3">
update person set page=#{page} where pname like #{pname}
</update>
<update id="update4">
update person set page='16' where pname like 'niu%'
</update>
<update id="update5">
update person set pname=#{pname} where page <#{page}
</update>
<update id="update6">
update person set pname=#{newname} where pname=#{oldname}
</update>
</mapper>
package com.gg.demo;
import org.apache.ibatis.session.SqlSession;
import org.junit.Test;
import com.gg.dao.PersonMapper;
import com.gg.entity.Person;
import com.gg.helper.DBHelper;
public class demo1 {
@Test
public void testUpdate1() {
SqlSession session=DBHelper.getSqlSessionFactory().openSession(false);
PersonMapper mapper= session.getMapper(PersonMapper.class);
Person person=new Person(1, "zhangsan", "13");
mapper.update1(person);
session.commit();
session.close();
}
@Test
public void testUpdate2() {
SqlSession session=DBHelper.getSqlSessionFactory().openSession(false);
PersonMapper mapper= session.getMapper(PersonMapper.class);
/* Person person=new Person(1, "zhangsan", "13");
mapper.update1(person);*/
mapper.update2(2, "lisi", "7");
session.commit();
session.close();
}
@Test
public void testUpdate3() {
SqlSession session=DBHelper.getSqlSessionFactory().openSession(false);
PersonMapper mapper= session.getMapper(PersonMapper.class);
Person person=new Person("niu%", "15");
mapper.update3(person);
session.commit();
session.close();
}
@Test
public void testUpdate4() {
SqlSession session=DBHelper.getSqlSessionFactory().openSession(false);
PersonMapper mapper= session.getMapper(PersonMapper.class);
mapper.update4();
session.commit();
session.close();
}
@Test
public void testUpdate5() {
SqlSession session=DBHelper.getSqlSessionFactory().openSession(false);
PersonMapper mapper= session.getMapper(PersonMapper.class);
Person person =new Person("wangwu", "30");
mapper.update5(person);
session.commit();
session.close();
}
@Test
public void testUpdate6() {
SqlSession session=DBHelper.getSqlSessionFactory().openSession(false);
PersonMapper mapper= session.getMapper(PersonMapper.class);
mapper.update6("wangwu","李四");
session.commit();
session.close();
}
}