• mybatis 使用tips


    执行如下命令:

    mvn -Dmybatis.generator.overwrite=true mybatis-generator:generate

    可以使用mybatis generator

    mybatis 使用多个参数

    自定义方法需要根据多个查询条件去查询:

    SELECT * FROM `db_demo`.`hot_topic` WHERE lang='english' AND category='017' AND  topic_type='video' ORDER BY score DESC;

    推荐使用注解的方式:

    需要自定义方法:

    mapper文件中

      //  使用注解
    JSONArray selectByLangAndCategoryAndTopicType(@Param("lang") String lang, @Param("category") String category, @Param("topicType") String topicType);

    mapper.xml文件中:

    <select id="selectByLangAndCategoryAndTopicType" resultMap="ResultMapWithBLOBs" >
        <!--
          WARNING - @mbggenerated
          This element is automatically generated by MyBatis Generator, do not modify.
          This element was generated on Thu Oct 12 14:51:34 CST 2017.
        -->
        select
        <include refid="Base_Column_List" />
        ,
        <include refid="Blob_Column_List" />
        from hot_topic
        where lang= #{lang,jdbcType=VARCHAR} AND category = #{category,jdbcType=VARCHAR} AND topic_type=#{topicType,jdbcType=VARCHAR}
      </select>

    其他方法

    DAO层的函数方法 

    Public User selectUser(String name,String area);

    对应的Mapper.xml  

    <select id="selectUser" resultMap="BaseResultMap">
        select  *  from user_user_t   where user_name = #{0} and user_area=#{1}
    </select>

    其中,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参数一致往后加即可。


    其他方法

    此方法采用Map传多参数.

    Dao层的函数方法

    Public User selectUser(Map paramMap);

    对应的Mapper.xml

    <select id=" selectUser" resultMap="BaseResultMap">
       select  *  from user_user_t   where user_name = #{userName,jdbcType=VARCHAR} and user_area=#{userArea,jdbcType=VARCHAR}
    </select>

    Service层调用

    Private User xxxSelectUser(){
    Map paramMap=new hashMap();
    paramMap.put(“userName”,”对应具体的参数值”);
    paramMap.put(“userArea”,”对应具体的参数值”);
    User user=xxx. selectUser(paramMap);}

    此方法不够直观,见到接口方法不能直接的知道要传的参数是什么。

  • 相关阅读:
    Raneto Docs(开源的知识库建站程序)
    Elasticsearch索引(company)_Centos下CURL增删改
    Elasticsearch配置详解、文档元数据
    Easticsearch通信方式_API
    全文检索学习历程目录结构(Lucene、ElasticSearch)
    Linux(CentOS 6.7)下配置Mono和Jexus并且部署ASP.NET MVC3、4、5和WebApi(跨平台)
    Apache Lucene(全文检索引擎)—分词器
    Apache Lucene(全文检索引擎)—搜索
    Apache Lucene(全文检索引擎)—创建索引
    Nginx主配置参数详解,Nginx配置网站
  • 原文地址:https://www.cnblogs.com/jwentest/p/7656432.html
Copyright © 2020-2023  润新知