测试类
package mybatis311_03_update;
import java.io.InputStream;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class UpdateTest {
public static void main(String[] args) throws Exception {
InputStream is=Resources.getResourceAsStream("mybatis-config.xml");
SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(is);
SqlSession sqlSession=sessionFactory.openSession();
//模拟更新数据
Emp emp=new Emp();
emp.setEmpno(7900);
emp.setEname("JAMES");
int rows=sqlSession.update("emp.updateEmp", emp);
sqlSession.commit();
//模拟添加数据
Emp emp2=new Emp();
emp2.setEmpno(1111);
emp2.setEname("刘德华");
int rows2=sqlSession.insert("emp.insertEmp", emp2);
sqlSession.commit();
sqlSession.close();
}
}
mybatis映射文件EmpMapper.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="emp">
<update id="updateEmp" parameterType="mybatis311_03_update.Emp">
update emp set ename=#{ename} where empno=#{empno}
</update>
<insert id="insertEmp" parameterType="mybatis311_03_update.Emp">
insert into emp(empno,ename) values(#{empno},#{ename})
</insert>
</mapper>
主配置文件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="armbank">
<environment id="armbank">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="pooled">
<property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"/>
<property name="username" value="scott"/>
<property name="driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="password" value="tiger"/>
</dataSource>
</environment>
</environments>
<mappers>
<!-- 映射文件写好之后一定要告诉主配置文件,否则报错 -->
<mapper resource="EmpMapper.xml"/>
</mappers>
</configuration>
Emp实体类
package mybatis311_03_update;
public class Emp {
private Integer empno;
private String ename;
public Integer getEmpno() {
return empno;
}
public void setEmpno(Integer empno) {
this.empno = empno;
}
public String getEname() {
return ename;
}
public void setEname(String ename) {
this.ename = ename;
}
@Override
public String toString() {
return "Emp [empno=" + empno + ", ename=" + ename + "]\n";
}
}