Mybatis框架下面的增删改查(含代码)

目录

一、总括项目

二、项目的增删改查

查询

 插入

 删除

更改

三、 MyBatis参数详解

四、配置简单易懂的sql输出日志


一、总括项目

1.在enty下面的是实体类,私有类型,跟数据库字段联系,并有get/set类型+toString

2.实体类建好去mapper下面的xml写数据库语句,resultType(出参类型)parameterType(入参类型)

3.数据库连接的xml不需要改动

4.写接口层dao层

5.写测试类,运行

二、项目的增删改查

查询

UserMapper.xml

<select id="findByName" resultType="com.qcby.enty.User" parameterType="java.lang.String">
        select * from user where username = #{username}
    </select>

UserDao.java

  /**
    * 通过用户名查询
    * @param username
    * @return
    */
User findByName(String username);

MyBatisTest.java

@Test
    public void findByName(){
        mapper.findByName("熊大");
    }

 插入

:插入是没有出参的

UserMapper.xml

 <insert id="insert" parameterType="com.qcby.enty.User">
        insert into user(username,birthday,sex,address) values (#{username},#{birthday},#{sex},#{address})
    </insert>

UserDao.java

   /**
    * 插入
    * @param user
    * @return
    */
   int insert(User user);

MyBatisTest.java

    @Test
    public void insert(){
        User user =new User();
        user.setAddress("保定");
        Date data = new Date();
        user.setBirthday(data);
        user.setSex("男");
        user.setUsername("张老三");
        int count =mapper.insert(user);
        session.commit();
        System.out.println(count);
    }

 删除

UserMapper.xml

<delete id="delect" parameterType="java.lang.Integer">
        delete from user where id = #{id}
    </delete>

UserDao.java

  /**
    * 删除
    * @param id
    * @return
    */
   int delect(Integer id);

MyBatisTest.java

 @Test
    public void delete(){
        int count = mapper.delect(4);
        session.commit();
        System.out.println(count);
    }

更改

UserMapper.xml

 <update id="update" parameterType="com.qcby.enty.User">
        update user set username =#{username}, birthday =#{birthday},sec = #{sex},address=#{address}
    </update>

UserDao.java

/**
    * 更改
    * @param user
    * @return
    */
   int update(User user);

MyBatisTest.java

@Test
    public void update(){
        User user =new User();
        user.setAddress("保定");
        Date data = new Date();
        user.setBirthday(data);
        user.setSex("男");
        user.setUsername("张老三");
        user.setId(7);
        int count =mapper.insert(user);
        session.commit();
        System.out.println(count);
    }

三、 MyBatis参数详解

1. parameterType

1. 简单数据类型

int double类型 String类型

简单的写法:java.lang.Integer --> int integer Int Integer 都可以,框架提供简写的方式。

2. POJO(JavaBean实体类)对象类型,默认是不能简写,可以配置。

User对象

2. resultType

1. 返回简单数据类型

int double long String

2. 返回POJO数据类型

返回User对象类型

3. resultMap结果类型

resultType可以指定pojo将查询结果映射为pojo,但需要pojo的属性名和sql查询的列名一致方可映射成功。

如果sql查询字段名和pojo的属性名不一致,可以通过resultMap将字段名和属性名作一个对应关系 ,

resultMap实质上还需要将查询结果映射到pojo对象中。 resultMap可以实现将查询结果映射为复杂类型的

pojo,比如在查询结果映射对象中包括pojo和list实现一对一查询和一对多查询。

四、配置简单易懂的sql输出日志

注意:要在配置文件的第一行进行配置

<!-- settings:控制mybatis的全局行为-->
<settings>
    <!--设置mybatis输出日志-->
    <!--logImpl:表示对日志的控制-->
    <!--STDOUT_LOGGING:将日志输出到控制台上-->
    <setting name="logImpl" value="STDOUT_LOGGING" />
</settings>

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叫我老伯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值