mybatis映射文件之基本的增删改查

借之前配置好的环境:

1、首先在Employee .java中加上有参的构造器和无参的构造器。

2、采用mapper中的class属性配置映射文件。

    <mappers>
        <mapper class="com.gong.mybatis.dao.EmployeeMapper" />
    </mappers>

3、EmployeeMapper.java

package com.gong.mybatis.dao;

import com.gong.mybatis.bean.Employee;

public interface EmployeeMapper {
    public Employee getEmpById(Integer id);

    public boolean addEmp(Employee employee);

    public void updateEmp(Employee employee);

    public void deleteEmp(Integer id);
}

4、EmployeeMapper.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.gong.mybatis.dao.EmployeeMapper">
    <select id="getEmpById" resultType="com.gong.mybatis.bean.Employee">
        select id,last_name lastName,email,gender from tbl_employee where id = #{id}
    </select>
    <insert id="addEmp" parameterType="com.gong.mybatis.bean.Employee">
        insert into tbl_employee(last_name,gender,email)
        values(#{lastName},#{gender},#{email})
    </insert>
    <update id="updateEmp" >
        update tbl_employee set last_name=#{lastName},gender=#{gender},email=#{email}
        where id = #{id}
    </update>
    <delete id="deleteEmp">
        delete from tbl_employee where id=#{id}
    </delete>
</mapper>

说明:接口中的增删改方法可以有Integer、long、boolean返回值。在EmployeeMapper.xml中parameterType为输入的参数类型,resultType为返回的参数类型。

5、在TestMybatis.java中进行单元测试

package com.gong.mybatis.test;

import java.io.IOException;
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;
import org.junit.Test;

import com.gong.mybatis.bean.Employee;
import com.gong.mybatis.dao.EmployeeMapper;
import com.gong.mybatis.dao.EmployeeMapperAnnotation;

public class TestMybatis {

    public SqlSessionFactory getSqlSessionFactory() throws IOException {
        String resource = "mybatis-config.xml";
        InputStream is = Resources.getResourceAsStream(resource);
        return new SqlSessionFactoryBuilder().build(is);
    }

    @Test
    public void test03() throws IOException {
        SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
        //不会自动提交数据
        SqlSession openSession = sqlSessionFactory.openSession();
        try {
            EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class);
            /*
            //添加员工
            Employee employee = new Employee(null,"bob","1","[email protected]");
            mapper.addEmp(employee);

            /*
            //修改员工
            Employee employee = new Employee(1,"xiximayou","1","[email protected]");
            mapper.updateEmp(employee);
            */
            /*
            //删除员工
            Integer id = 3;
            mapper.deleteEmp(id);
            */
            //手动提交数据
            openSession.commit();

        } finally {
            // TODO: handle finally clause
            openSession.close();
        }
    }

}

原本数据库中存在的数据:

结果:

(1)添加

(2)修改

(3) 删除

继查找功能之后,本节实现的增删改功能均已正确实现。

原文地址:https://www.cnblogs.com/xiximayou/p/12210113.html

时间: 2024-11-06 03:53:10

mybatis映射文件之基本的增删改查的相关文章

通用DAO之MyBatis封装,封装通用的增删改查(二)

曾经发过一篇文章,大概写的就是阿海多么多么厉害,见到某位同事在Hibernate的基础上封装了一下,就以一己之力开发什么什么框架,最后写了个超大的一坨的事. 那么,后续篇来了.阿海不是自负之人,当之前的CRUD框架并没有达到理想的结果时,阿海转向了Mybatis封装.别问我为什么不是Hibernate.我本来就不喜欢Hibernate,即使在之前的一家公司一直被强制性的约束使用Hibernate时,也没有对Hibernate产生什么真正的好感,反而屡次发现了Hibernate的一些问题. 或许是

通用DAO之MyBatis封装,封装通用的增删改查(三)

曾将发布过俩篇关于Mybatis封装的文章,当时曾曾承诺过当测试没有问题后阿海会整理一下然后将原代码发布出来. 那么今天正好朋友找我要一份那套mybatis封装的源码,我便整理了一份,想想这么长时间了并没有发现什么明显的bug,于是决定将它发出来. 喜欢的朋友可以在这里下载: http://aiyiupload.oss-cn-beijing.aliyuncs.com/blog/img/2016/06/28/15/6d69ad50-ab53-4f4f-b4e7-1fed010bfdb9.rar 关

基于Java的XML文件模拟数据库进行增删改查操作

我们知道XML文件既可以用来进行数据的传输,也可以配合DTD约束文件用来作为配置文件,当然其本质就是一个加了标签以及众多空格保持格式的字符串,那么就可以用Java进行操作. 本例是使用MyEclipse带入DOM4j解析时要用的jar包的基础上做的:当然DOM4j相对于DOM SAX 等解析方式的方便程度是不言而喻的. 下面是本次用例XML文件 <?xml version="1.0" encoding="UTF-8"?> <persons> 

函数、文件操作实现数据增删改查---low版本

首先说明这个脚本很low,目前水平有限,只能实现使用固定的语法对数据进行增删改查.但是现在脚本不low,怎么让明年的我来嘲笑今年的自己 需求    a.可进行模糊查询,语法至少支持下面3种:  select name,age from staff_table where age > 22  select  * from staff_table where dept = "IT"      select  * from staff_table where enroll_date l

Oracle+mybatis实现对数据的简单增删改查

第一步:--创建一个表空间:名字叫 mybatis,建在D盘下的date文件夹下: 第二步:创建用户,名字叫  lisi  ,密码为  :123456 第三步:给用户授权: 第四步:我们在    lisi  用户下创建一个emp表: 随便插入几个值: (这个表在网上有,可以扒下来) 第五步:(这里用的是eclipse)打开eclipse建立一个maven项目,在网上maven仓库中搜索mybatis导包 我们用3.4.6这个: 将这段代码粘在刚才在eclipse中建的项目的pom.xml中<必须

Mybatis通过接口的方式实现增删改查

导入jar包 [mybatis] [oracle] 生成数据库 1.添加Mybatis的配置文件mybatis-config.xml 在src目录下创建一个mybatis-config.xml文件,如下图所示: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" &q

Mybatis 接口方式对数据的增删改查 一对一关联查询

数据库中有两个表 student 和studentInfo student表中的字段和数据 studentInfo表中的字段 ok数据库说完了,开始建立一个项目,对数据库中的数据进行操作吧 新建java项目,将mybatis的jar包和oracle数据库的访问包导入 建立几个需要用的包 entities, dao,util , test建立映射文件(.xml)和db.properties文件 db.properties: mybatis-config.xml: <?xml version="

mybatis映射文件之获取自增的主键

<insert id="addEmp" parameterType="com.gong.mybatis.bean.Employee" useGeneratedKeys="true" keyProperty="id"> insert into tbl_employee(last_name,gender,email) values(#{lastName},#{gender},#{email}) </insert&

5、Spring+Struts2+MyBatis+分页(无代理)增删改查

1.创建如下项目结构 2.在src下的com.entity包下创建Dept.java 1 package com.entity; 2 /** 3 * 部门表 4 * @author Holly老师 5 * 6 */ 7 public class Dept { 8 private Integer deptno; //部门编号 9 private String dname; //部门名称 10 private String loc; //位置 11 12 13 public Dept() { 14