当前位置:

首页 > 编程开发 > 怎么在springboot中集成mybatis xml方式

怎么在springboot中集成mybatis xml方式

springboot集成mybatis1,添加pom引用org.mybatis.spring.bootmybatis-spring-boot-starter1.1.1mysqlmysql-connector-java2application.propertiesmybatis.config-locations=classpath:mybatis/mybatis-config.xmlmybatis.mapper-locations=classpath:mybatis/mapper/*.xmlmybatis.

本文目录

    springboot集成mybatis

    1,添加pom引用

     
      org.mybatis.spring.boot
      mybatis-spring-boot-starter
      1.1.1
     
       
         mysql
         mysql-connector-java
       

    2 application.properties

    mybatis.config-locations=classpath:mybatis/mybatis-config.xml
    mybatis.mapper-locations=classpath:mybatis/mapper/*.xml
    mybatis.type-aliases-package=com.kerry.model
     
    spring.datasource.driverClassName = com.mysql.jdbc.Driver
    spring.datasource.url = jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8
    spring.datasource.username = root
    spring.datasource.password = 123456

    3 在resource目录下创建mybatis目录并创建mybatis-config.xml文件

    
    
    
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
        
     
        
     
     
     
     
     
     
     
     
     
     
     
    

    mybatis目录下创建mapper目录存放mapper类接口文件

    package com.kerry.mapper; 
    import java.util.List; 
    import com.kerry.model.User; 
    public interface UserMapper { 
     List getAll(); 
     User getOne(Integer id); 
     void insert(User user); 
     void update(User user); 
     void delete(Integer id);
     }

    model类文件

    package com.kerry.mapper; 
    import java.util.List;
    import com.kerry.model.User; 
    public interface UserMapper { 
     List getAll(); 
     User getOne(Integer id); 
     void insert(User user); 
     void update(User user); 
     void delete(Integer id);
    }

    userMapper.xml

    
    
    
      
        
        
        
        
      
      
      
        id, name, age, address
      
     
      
        SELECT 
        
      FROM user
      
     
      
        SELECT 
        
      FROM user
      WHERE id = #{id}
      
     
      
        INSERT INTO 
         user
         (id,name,age,address) 
        VALUES
         (#{id},#{name}, #{age}, #{address})
      
      
      
        UPDATE 
         user 
        SET 
        name = #{name},
        age = #{age},
        address = #{address}
        WHERE 
         id = #{id}
      
      
      
        DELETE FROM
         user 
        WHERE 
         id =#{id}
       
    

    controller:

    package com.kerry.web;
    import java.util.List;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.PathVariable;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController; 
    import com.kerry.model.User;
    import com.kerry.mapper.UserMapper; 
    @RestController
    public class UserController { 
     @Autowired
     private UserMapper userMapper;
     
     @RequestMapping("/getUsers")
     public List getUsers() {
     List users=userMapper.getAll();
     return users;
     }
     
      @RequestMapping("/getUser")
      public User getUser(Integer id) {
       User user=userMapper.getOne(id);
        return user;
      }
      
      @RequestMapping("/add")
      public void save(User user) {
       userMapper.insert(user);
      }
      
      @RequestMapping(value="update")
      public void update(User user) {
       userMapper.update(user);
      }
      
      @RequestMapping(value="/delete/{id}")
      public void delete(@PathVariable("id") Integer id) {
       userMapper.delete(id);
      }  
    }

    最后在启动类上加上 扫描maper interface注解

    @SpringBootApplication
    @MapperScan("com.kerry.mapper")
    public class Application {
     
     public static void main(String[] args) {
     SpringApplication.run(Application.class, args);
     }
    }

    或者在每个XXMapper类上加上@mapper注解也行  二选一即可

    比如

    package com.kerry.mapper; 
    import java.util.List;
    import org.apache.ibatis.annotations.Mapper;
    import com.kerry.model.User;
     @Mapper
    public interface UserMapper { 
     List getAll(); 
     User getOne(Integer id); 
     void insert(User user); 
     void update(User user); 
     void delete(Integer id); 
    }

    个人建议使用直接在启动类上application上@MapperScan方便,一次搞定,不必每写一个mapper类都加上@mapper注解

    附上项目结构目录 选中的类以及文件

    怎么在springboot中集成mybatis xml方式

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发
    相关文章 更多
    MyBatis XML开发全面完整指南
    MyBatis XML开发全面完整指南

    MyBatisXML开发方式适合复杂SQL逻辑,通过配置数据库连接与mapper路径,在接口和XML映射文件中实现增删改查操作。XML支持多表查询及结果映射,#{}使用预编译防注入,${}直接拼接需注意字符串引号。

    简单了解XML 树结构
    简单了解XML 树结构

    XML文档采用树形结构,由根元素出发,包含层层嵌套的子元素,形成父子或同胞关系。每个元素可承载文本和属性,标签名称自描述,便于理解,广泛用于数据交换与存储。

    XML和YAML的使用方法
    XML和YAML的使用方法

    YAML相比XML具有可读性强、与脚本语言交互好、语法简洁等优势,通过空格和缩进实现结构,适合配置文件场景。XML侧重于数据存储与传输,标签要求严格成对且区分大小写。YAML继承XML优点,并以更敏捷方式完成相同任务。

    怎样打开XML文件?xml文件如何打开?
    怎样打开XML文件?xml文件如何打开?

    XML是可扩展标记语言,用于标记数据并定义数据类型,适合网络传输和跨平台数据交换。它语法简单,要求标签成对出现、正确嵌套且属性必须加引号。可用记事本或Excel等工具打开,Excel提供多种导入方式。

    XML解析错误:未组织好 的解决办法
    XML解析错误:未组织好 的解决办法

    在Windows上运行ASP.NET网站时,有时你会遇到一个让人摸不着头脑的怪现象:XML文件本身完整无缺,放在Linux下一切正常,可一换到Windows+IIS的环境,浏览器就报错。比如Firefox 2.0会提示“XML解析错误:未组织好”,位置指向页面第一行第二个字符,而IE则显示“无法显示

    一个用xslt样式将xml解析为xhtml的类TransformBinder(兼容FF和IE7.0)
    一个用xslt样式将xml解析为xhtml的类TransformBinder(兼容FF和IE7.0)

    针对XML文件自动生成无法修改的问题,有效开发了TransformBinder类。该类通过XmlDom构造函数统一创建文档对象模型,利用transformXSLT函数实现XSLT到XHTML的转换,兼容IE和Firefox等主流浏览器。同时,封装了registerAction与bind方法,支持外部关联XML与XSLT文件,便于代码复用。

    powerbuilder(pb)中 xml的应用一例
    powerbuilder(pb)中 xml的应用一例

    在PowerBuilder9.0中处理订单与明细的XML导出时,需要先拆分两个数据窗口并分别定义模板,然后通过设置‘StartDetail’属性来控制循环输出,子报表引用的明细数据窗口会忽略顶层节点,最终生成符合指定格式的XML文件内容。

    asp下利用xml打包网站文件
    asp下利用xml打包网站文件

    将整个网站文件夹打包为一个XML文件,上传至虚拟主机后运行解包程序即可完成部署。核心原理是利用XML存储二进制数据。文件数量多时效率需实际验证,此法适合小文件或简化FTP上传场景。

    气象 XML 数据源应用程序开发指南-内容目录
    气象 XML 数据源应用程序开发指南-内容目录

    本指南系统覆盖从账号获取到数据规则的完整流程,详述搜索、气象数据请求与响应、错误处理、资源、数据规则、链接、属性及标志使用等核心内容与注意事项,为天气应用开发人员提供全面系统的参考。

    XML CDATA是什么?
    XML CDATA是什么?

    XML解析器默认解析所有文本,遇到特殊字符(如、&)需转义,否则导致解析错误。若未禁用外部实体,可能引发XXE安全漏洞,加载恶意文件或泄露数据,建议严格配置输入验证并禁用DTD。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。