• 5.20 mybatis反向生成的映射文件xml(如果需要自己定义其他sql语句时如下)


    解决mybatis-generator 生成的mapper.xml覆盖自定义sql的问题


    mybatis-generator是个好工具,一建即可生成基本增删改成功能的mapper.xml。但这些是不够的,需要自己往mapper.xml里面添加一些sql来满足需求。不过,后期修改表结构的时候就麻烦了,mybatis-generator生成的mapper.xml会与自己自定义的sql相混杂,改动相当麻烦。


            解决方式很简单,使用mybatis-generator生成的mapper.xml就不要去改动里面的代码,自己需要添加sql则需要新建一个mapper_extends.xml 里面的<mappernamespace="">保持一致即可。


       比如我使用mybatis-generator生成了UserMapper.xml,添加一个UserExtendsMapper.xml,UserExtendsMapper.xml的<mapper namespace="" >需要与UserMapper.xml相同,将额外的sql加到UserExtendsMapper.xml,UserMapper.xml就不要改动了,后期表添加字段的话,就不会影响到UserExtendsMapper.xml。

       如果网友有更好的解决方案,请多多指教!


    湿气重专家:湿气重?早晚喝点它,快速逼出体内十年湿气,越喝越漂亮!
    豫用 · 猎媒

        shaft_V
        shaft_V: 多谢.首先保证 自动生成的mapper xml 可以curd. 然后 新建一个UserExtMapper,在里面写自定义的方法, 让自动生成的UserMapper 去 extends 自己创建的 UserExtMapper; 然后 复制UserMapper.xml;删掉里面的sql语句,保留开头和结尾(resultMap) 但是 <mapper namespace="com.east.ext.UserMapperExt"> 这个地方是新生成的. 能运行成功,实际service里还是用userMapper进行操作. 不过 如果userMapper 已经继承了BaseMapper通用mapper 那我就不知道该怎么做了..(1个月前#5楼)收起回复
            shaft_V
            shaft_V回复 NameToJune: interface UserMapper extends UserExtMapper; UserServiceImpl里还是用UserMapper, 新添加自定义的方法全放到UserExtMapper里,具体sql放到UserExtMapper.xml里 重新生成xml model 时就不担心覆盖自己的东西了. 但在用mybatis plus 感觉不知道怎么实现这种情况.(1个月前)
            jkopop123
            NameToJune回复 shaft_V: 都是爬山人,我没能看明白你想表达的。(1个月前)
            shaft_V
            shaft_V回复 NameToJune: 哈哈,请先生教我(1个月前)
            jkopop123
            NameToJune回复 shaft_V: 你成功看晕了我(1个月前)
    ---------------------
    作者:广铁小多多
    来源:CSDN
    原文:https://blog.csdn.net/zdb1314/article/details/79256128
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    数据结构与算法(一)--数组
    Lucene学习
    java虚拟机面试题(JVM)
    Java开发面试题归类( 题目篇)
    java虚拟机学习(六)
    java虚拟机学习(五)--垃圾收集器总结
    21_异常_第21天(异常、企业面试题,思维导图下载)
    20_集合_第20天(Map、可变参数、Collections)
    19_集合_第19天(List、Set)
    18_集合框架_第18天(集合、Iterator迭代器、增强for循环 、泛型)
  • 原文地址:https://www.cnblogs.com/wym591273/p/10894420.html
Copyright © 2020-2023  润新知