qq联系我:1610710861

个人技术总结——SpringBoot框架之复合条件查询

个人技术总结——SpringBoot框架之复合条件查询

1、技术概述

  • 描述这个技术是做什么
  • 用于对已有数据的条件查询,返回符合条件的数据
  • 学习该技术的原因
  • 对于多而杂的数据,我们需要找到自己所需要的内容,所以组合条件查询就十分必要
  • 技术的难点在哪里
  • 难点在于DAO层的动态sql语句

2、技术详述

描述你是如何实现和使用该技术的,要求配合代码和流程图详细描述。可以再细分多个点,分开描述各个部分。

  1. 主要步骤如下:
  2. 详细描述:
<?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="edu.fzu.zhishe.core.dao.CmsBulletinDAO">

    <resultMap id="BulletinResultMap" type="edu.fzu.zhishe.core.dto.CmsBulletinsDTO">
        <id column="id" jdbcType="INTEGER" property="id" />
        <result column="title" jdbcType="VARCHAR" property="title" />
        <result column="body" jdbcType="VARCHAR" property="body" />
        <result column="create_at" jdbcType="TIMESTAMP" property="createAt" />
        <result column="update_at" jdbcType="TIMESTAMP" property="updateAt" />
    </resultMap>

    <select id="listBulletin" parameterType="java.lang.Integer" resultMap="BulletinResultMap">
     SELECT
        p.id,
        p.club_id,
        p.title,
        p.body,
        p.create_at,
        p.update_at
     FROM
        cms_bulletin AS p
     WHERE
        p.club_id = #{clubId}
        <if test="bulletinQuery.title != null and bulletinQuery.title != ''">
            AND p.title LIKE concat("%",#{bulletinQuery.title},"%")
        </if>
        <if test="bulletinQuery.body != null and bulletinQuery.body != ''">
            AND p.body LIKE concat("%",#{bulletinQuery.body},"%")
        </if>
        ORDER BY
        p.update_at DESC
    </select>
</mapper>

3、技术使用中遇到的问题和解决过程。

其实最开始遇到的问题是不知道步骤,但是请教了组长,他也给了我很详细的步骤(如上所诉)
接下来的问题就是手写DAO中sql语句的编写,不是编译错误就是与预期结果不同,最终才发现是某些符号或位置错误或打错,所以说,打代码时一定要细心,一个小小的符号可能导致结果的大不同。(主要参考组里大佬的文件 FmsPostDAO.xml

4、总结。

一开始前端给我提出这个要求时,我感觉有点难以实现(凭自己的实力),但是请教了组长之后,实现起来还是可以上手的,所以说遇到问题觉得难时,不要轻易放弃,要用于尝试,也可以请教大佬。大数据时代,查询应该可以说是必不可少的,可以多多学习。

5、列出参考文献、参考博客(标题、作者、链接)

主要的步骤、思路等都是由组长(组长的博客)提供,所以暂无其他参考

posted @ 2020-06-22 23:02  邹MH  阅读(675)  评论(2编辑  收藏  举报