mybatis用注解替换xml,不再写.xml了

复制代码
在Service里引用
    @Autowired
    private DemoMapper demoMapper;

下面展示一些 DemoMapper.java代码片。

复制代码
public interface DemoMapper{

 	/**
     * 查询页面信息-根据ID
     */
    @Select("select * from program where id = #{id}")
    Program getById(Long id);

    /**
     * 新增
     */
    @Insert({
            "<script> ",
            "  insert into program\n" +
                    "        <trim prefix=\"(\" suffix=\")\" suffixOverrides=\",\">\n" +
                    "            <if test=\"name != null and name != ''\">name,</if>\n" +
                    "            <if test=\"inDevId != null\">inDevId,</if>\n" +
                    "        </trim>\n" +
                    "        <trim prefix=\"values (\" suffix=\")\" suffixOverrides=\",\">\n" +
                    "            <if test=\"name != null and name != ''\">#{name},</if>\n" +
                    "            <if test=\"inDevId != null\">#{inDevId},</if>\n" +
                    "        </trim>",
            "</script>"
    })
    @Options(useGeneratedKeys = true, keyProperty = "id")
    int insert(Program program);


}

用<script>标签就可以写<if>这些标签哦

@Options(useGeneratedKeys = true, keyProperty = "id") 是返回最新自增主键id

其实就是用注解方式替换.xml写法,可考虑: 这个文章

相关推荐
RuoyiOffice2 小时前
Spring AI+Vue3 企业知识库设计:让每个答案有依据,让每份资料守住权限
java·spring boot·vue3·rag·企业知识库·spring ai·ruoyi office
倔强的石头1063 小时前
【Linux指南】进程通信系列(二):匿名管道 —— pipe 的本质、fork 继承与四种读写规则
java·linux·运维
调试优选官3 小时前
2026年IoT物联网开发赛道年度榜单深度解析:D-coding物联网系统定制与源码交付能力专项解读
java·物联网·struts·iot·开发经验
木井巳3 小时前
【动态规划】三步问题
java·算法·leetcode·动态规划·推荐算法
小张成长计划..3 小时前
【Linux】25:线程概念和控制
java·linux·jvm
蛋蛋的就会顺顺的12 小时前
hot100 p0——栈,贪心算法,动态规划
java·前端·javascript·算法·leetcode·力扣
需要82612 小时前
Spring Bean 生命周期:从实例化到销毁的完整钩子
java·后端·spring
小 黄 鸡12 小时前
HashMap 面试必会知识点详解(JDK 8)
java·面试·职场和发展
伯恩bourne14 小时前
Spring Boot Bean 注册的两种方式:@Component 家族 vs @Configuration + @Bean
java·spring boot·后端
silvamux_15 小时前
curl 测试 OpenAI 兼容 API 的完整流程
java·人工智能·缓存·ai·oneapi