• 自动回复之实现随机回复与常用Mapper XML标签


    【常用Mapper XML标签】

    1、基本的:select、insert、update 等

    2、可读性、方便拼SQL:where、set、trim

    3、减少重复:sql

    4、逻辑控制:if、choose when

    5、映射:collection、association

     

    【自动回复之实现随机回复】

    内容来自 imooc 视屏教程:http://www.imooc.com/video/4721

    言下之意就是发送相同的指令获取不同的回复。

    1、最简单的方法就是用一张表存, 把某一指令对应的回复字段 全部查出来,随机选择一个回复过去。

    2、但是这样的表 在设计上不太好 。。不符合范式 。。。

    类似这种一对多的关系通常需要拆表,一张表专门存指令:

    另一张表存取指令对应的内容(一条指令可能对应多个

    对应多条

    3、“一”的那个表被称为主表,对应的“多”被称为子表,相应的,需要在Java代码中为它们添加实体类,如下所示:

     (略。。Command类需要有一个ContentList)

    4、修改.xml 与DAO 

      <select id="queryCommandList" parameterType="com.imooc.bean.Command" resultMap="CommandResult">
        select a.ID, a.NAME, a.DESCRIPTION, b.ID, b.CONTENT, b.COMMAND_ID 
        from COMMAND a left join COMMAND_CONTENT b
        on a.ID=b.COMMAND_ID
        where 1=1
        <if test="name != null and !&quot;&quot;.equals(name.trim())">
            and a.NAME=#{name}</if>
        <if test="description != null and !&quot;&quot;.equals(description.trim())">
            and a.DESCRIPTION like '%' #{description} '%'</if>
      </select>

     

    上述内容有错 其中一个id 要起别名 否则会冲突。

    5、修改Service...

  • 相关阅读:
    【Comet OJ Contest #15】孤独的吉姆 6
    【SSLOJ1467】U
    【SSLOJ1471】Y
    ajax调用webService
    泛型
    windows Server 2003 FTP
    ajax
    Linq 执行概念
    15款提高工作效率的工具分享
    Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发
  • 原文地址:https://www.cnblogs.com/xkxf/p/7142398.html
Copyright © 2020-2023  润新知