文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Spring Boot怎么利用XML方式整合MyBatis

2023-06-30 15:43

关注

本篇内容介绍了“Spring Boot怎么利用XML方式整合MyBatis”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、前言

下图是整个整合过程,接下来开始整合:

Spring Boot怎么利用XML方式整合MyBatis

二、整合过程

最终项目结构如下图所示:

Spring Boot怎么利用XML方式整合MyBatis

新建 Spring Boot 项目

新建一个 Spring Boot 项目,添加 Web 组件,具体过程可以参照我的另一篇博客 Spring Boot 教程之创建项目的三种方式

添加 pom 依赖

由于要整合 MyBatis,所以我们需要在项目的配置文件pom.xml中添加 MySQL 驱动和 SpringBoot MyBatis 整合包;

<!--     springboot mybatis 整合包   --><dependency>    <groupId>org.mybatis.spring.boot</groupId>    <artifactId>mybatis-spring-boot-starter</artifactId>    <version>2.1.3</version></dependency><!--    mysql 驱动    --><dependency>    <groupId>mysql</groupId>    <artifactId>mysql-connector-java</artifactId>    <scope>runtime</scope></dependency>

准备数据库

准备一张 user 表,有 idnameage 三个属性,其中 id 为主键且自增,然后插入三条数据;

CREATE TABLE `user` (  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',  `name` varchar(50) DEFAULT NULL COMMENT '姓名',  `age` int(11) DEFAULT NULL COMMENT '年龄',  PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;INSERT INTO  user values (1,"村雨遥",25);INSERT INTO  user values (2,"张三",26);INSERT INTO  user values (3,"李四",27);

在项目配置文件 application.properties 中配置数据源;

# 数据库配置spring.datasource.username=rootspring.datasource.password=1112233spring.datasource.url=jdbc:mysql://localhost:3306/springboot?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTCspring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

pojo 层

根据数据库创建实体类,为了精简代码,后面过程中都或多或少用了 Lombok 插件,所以需要事先在 pom.xml 引入;

<dependency>    <groupId>org.projectlombok</groupId>    <artifactId>lombok</artifactId>    <optional>true</optional></dependency>
package com.cunyu.pojo;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;@Data@NoArgsConstructor@AllArgsConstructorpublic class User {    private Long id;    private String name;    private Integer age;}

dao 层

实体类创建完成后,编写实体类对应接口;

package com.cunyu.dao;import com.cunyu.pojo.User;import org.apache.ibatis.annotations.Mapper;@Mapperpublic interface UserDao {        User getUserById(Long id);}

在项目配置文件 application.properties 中添加 MyBatis 配置;

# MyBatis 配置mybatis.type-aliases-package=com.cunyu.pojo.Usermybatis.mapper-locations=classpath:mapperpublic interface UserService {        User getUserById(Long id);}
package com.cunyu.service.impl;import com.cunyu.dao.UserDao;import com.cunyu.pojo.User;import com.cunyu.service.UserService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;@Servicepublic class UserServiceImpl implements UserService {    @Autowired    private UserDao userDao;    @Override    public User getUserById(Long id) {        return userDao.getUserById(id);    }}

controller 层

package com.cunyu.controller;import com.cunyu.pojo.User;import com.cunyu.service.UserService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class UserController {        @Autowired    private UserService userService;    @GetMapping("/user")    public User getUserById() {        User user = userService.getUserById(1L);        return user;    }}

入口程序配置

在入口程序中配置 mapper 自动扫描;

package com.cunyu;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@MapperScan(basePackages = "com.cunyu.dao")@SpringBootApplicationpublic class MybatisXmlApplication {    public static void main(String[] args) {        SpringApplication.run(MybatisXmlApplication.class, args);    }}

网页测试

完成上述所有步骤之后,在浏览器中访问 http://localhost:8080/user,就可以在网页中显示对应 id 的 User 对象的所有信息;

Spring Boot怎么利用XML方式整合MyBatis

“Spring Boot怎么利用XML方式整合MyBatis”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯