myBatis中的增删改查

myBatis中的增删改查

首先为了简化后续配置,使用myBatis中的

  1. settings标签进行数据库和实类变量名之间匹配的简化:
    例如:s_age匹配sAge
    <!--设置数据库与实类变量的匹配匹配-->
    <settings>
        <setting name="mapUnderscoreToCamelCase" value="true"/>
    </settings>
  1. 类名简化
    例如:Student 在配置时为student
    package表示这个包下的所有类在配置时都遵循这个原则
    typeAlias 表示单个类遵循这个原则
    <typeAliases>
        <package name="com.example.domain"></package>
        <!--<typeAlias type="com.example.domain.Book" alias="book"></typeAlias>-->
    </typeAliases>
  1. 基础配置文件可以参考:myBatis配置文件

1.参数传递

myBatis映射配置文件中的参数传递

2.删除操作

修改mapper映射配置文件

<?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">
<!--配置映射关系-->
        <!--namespace表示名称空间-->
<mapper namespace="com.example.dao.StudentDao">

    <delete id="delete">
        delete from student where s_id=#{param1}
    </delete>
</mapper>

3.修改操作

    <update id="update">
        update student set s_sex=#{arg1} where s_name=#{arg0}
    </update>

4.增加操作

对于一个数据的插入通常会有主键自增,对于逐渐主键的设置对应关系
针对mysql数据库

  • useGeneratedKeys=“true” 表示使用数据库中自动生成的主键回填实体对象,
  • keyProperty=“id” 指定实体的主键对应的属性
  • keyColumn=“id” 指定数据库中的主键列的名字
    <insert id="addOne" parameterType="student" useGeneratedKeys="true" keyProperty="sId" keyColumn="s_id">
        insert into  student (s_name,s_birth,s_sex) values (#{sName},#{sBirth},#{sSex})
    </insert>
  1. 主键自动赋值的特性:
    在增加操作的时候,因为主键自增,默认在类传入的时候是不设置主键值的,在dao新增方法调用前主键值默认为null,在新增方法调用后自动会为该类主键属性赋值
  2. sql参数传递特性
    当一个方法的传递参数是POJO时,在sql语句中直接使用#{属性名}即可

5.查询操作

    <select id="getAll" resultType="student">
      -- 书写sql语句
        select * from student
    </select>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值