当前位置: 首页 > article >正文

SpringBoot 整合 SSM

文章目录

  • SpringBoot 整合 SSM
    • 第一步:使用 `Spring Initializr` 创建项目
    • 第二步:现在配置类中配置数据库
    • 第三步:进行 `MyBatis` 相关操作
      • 编写数据表对应的实体类
      • 创建 `mapper` 接口
      • 利用 `MyBaitsX` 插件快速创建 `xml` 文件
      • 创建 `Mapper` 接口 `SQL` 实现
      • 在 启动类 扫描 `mapper` 接口
      • 在配置类配置 `mybatis` 的 ` xml` 文件位置和其他配置
    • 第四步:打包项目
      • 导入打包插件
      • 开始打包
      • `cmd` 运行项目
    • 更改 Druid 数据源
      • 导入 `Druid` 依赖
      • 配置文件 `type` 改为 `Druid`
    • 总结

SpringBoot 整合 SSM

SpringBoot 整合 Spring, SpringMVC, MyBatis

第一步:使用 Spring Initializr 创建项目


  • 进行初始配置

在这里插入图片描述

  • 勾选 SSM 必备场景

也就是勾选 Spring Web, MyBatis Framework, MySQL Driver

在这里插入图片描述

第二步:现在配置类中配置数据库

# 1. 先配置数据源信息
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test
spring.datasource.username=root
spring.datasource.password=Ting123321

第三步:进行 MyBatis 相关操作


编写数据表对应的实体类

@Data
public class TUser {
    private Long id;
    private String loginName;
    private String nickName;
    private String passwd;
}
  • 创建 mapper 接口

public interface UserMapper {
}

在这里插入图片描述

利用 MyBaitsX 插件快速创建 xml 文件

包名可以和 mapper 接口名不一样

  • Alt + Enter 快速创建

在这里插入图片描述
在这里插入图片描述

创建 Mapper 接口 SQL 实现

  • 在 接口写,然后 Alt + Enter 快速 在 xml 生成 SQL骨架,然后自己编写
public interface UserMapper {
    /**
     * 每个方法都在 Mapper 文件中有一个 sql 标签对应
     * 所有参数都应该用 @Param 进行签名, 以后使用指定名字在 SQL 中取值
     * @param id
     * @return
     */
    public TUser getUserById(Integer id);
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.atguigu.ssm.mapper.UserMapper">


    <select id="getUserById" resultType="com.atguigu.ssm.bean.TUser">
		
    </select>
</mapper>

在 启动类 扫描 mapper 接口

/**
 *  1. @MapperScan 告诉 MyBaits, 扫描哪个包下面所有接口
 */
@MapperScan(basePackages = "com.atguigu.ssm.mapper")
@SpringBootApplication
public class SpringbootSsmApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringbootSsmApplication.class, args);
    }

}

在配置类配置 mybatis xml 文件位置和其他配置

# 2. 配置整合 MyBatis

# 指定 xml 文件
mybatis.mapper-locations=classpath:mapper/*.xml

# 开启驼峰映射
mybatis.configuration.map-underscore-to-camel-case=true

# 多表映射可以自动省略符合驼峰式的 result 标签内容
mybatis.configuration.auto-mapping-behavior=full

# 给包里的类起别名
mybatis.type-aliases-package=com.mangfu.pojo

第四步:打包项目


导入打包插件

	<!-- SpringBoot应用打包插件 -->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

开始打包

  • 点击 package 打包

在这里插入图片描述

  • target 这里找到 jar 包打开

在这里插入图片描述

cmd 运行项目

java -jar boot3-01-demo-1.0-SNAPSHOT.jar

在这里插入图片描述

更改 Druid 数据源


导入 Druid 依赖

        <!-- druid启动器的依赖  -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-3-starter</artifactId>
            <version>1.2.18</version>
        </dependency>

配置文件 type 改为 Druid

spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

总结


  • 导入 mybatis-spring-boot-starter
  • 配置数据源信息
  • 配置 mybatis mapper 接口扫描与 xml 映射文件扫描
  • 编写 beanmapper,生成 mapper xml,编写 sql 进行 crud。事务等操作依然和Spring 中用法一样

SpringBoot 中 Mapper 接口的文件夹和 Mapper.xml 文件夹不用完全一样


http://www.kler.cn/a/525646.html

相关文章:

  • Kafka 消费端反复 Rebalance: `Attempt to heartbeat failed since group is rebalancing`
  • 解锁豆瓣高清海报:深度爬虫与requests进阶之路
  • 【微服务与分布式实践】探索 Sentinel
  • C++并发编程指南02
  • 算法的时间复杂度
  • selenium自动化测试框架——面试题整理
  • openRv1126 AI算法部署实战之——ONNX模型部署实战
  • Java集合面试总结(题目来源JavaGuide)
  • mysql 学习2 MYSQL数据模型,mysql内部可以创建多个数据库,一个数据库中有多个表;表是真正放数据的地方,关系型数据库 。
  • 【Block总结】SCSA,探索空间与通道注意力之间的协同效应|即插即用
  • Android createScaledBitmap与Canvas通过RectF drawBitmap生成马赛克/高斯模糊(毛玻璃)对比,Kotlin
  • PyTorch 快速入门
  • Haproxy入门学习二
  • DeepSeek 模型全览:探索不同类别的模型
  • 字符串,集合
  • MySQL数据库(二)
  • redis数据安全与性能保障
  • .gitignore 文件的使用
  • Windows平台免费艺术签名设计工具:一键生成书法级个性签名
  • AIGC时代的Vue或React前端开发
  • 搜索与图论复习1
  • Hive详细讲解-概述与环境搭建
  • 代码随想录算法训练营第三十九天-动态规划-213. 打家劫舍 II
  • Unity实现按键设置功能代码
  • 分享|通过Self-Instruct框架将语言模型与自生成指令对齐
  • 为大模型提供webui界面的利器:Open WebUI 完全本地离线部署deepseek r1