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

SpringBoot整合SSM

1. SSM整合步骤

        今天带大家学习一下基于SpringBoot的SSM整合案例,话不多说,咱们开始,要实现SSM整合,有以下这么几步

  • 导入依赖
  • 创建yml配置文件
  • dao层
  • 静态页面
  • 测试类进行测试

1.1 导入依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<!--    <parent>-->
<!--        <artifactId>springdemo</artifactId>-->
<!--        <groupId>org.example</groupId>-->
<!--        <version>1.0-SNAPSHOT</version>-->
<!--    </parent>--><modelVersion>4.0.0</modelVersion><artifactId>boot</artifactId><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target></properties><!--    引入SpringBoot父级依赖  --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.3.4</version></parent><dependencies><!--       SpringBoot 整合springmvc依赖     --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
<!--        mysql   --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.33</version></dependency>
<!--    整合jdbc    --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId><version>2.7.3</version></dependency>
<!--       整合mybatis     --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-spring-boot3-starter</artifactId><version>3.5.7</version></dependency><!--      整合druid     --><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-3-starter</artifactId><version>1.2.23</version></dependency>
<!--        junit测试 +springboot    --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><version>3.3.5</version><scope>test </scope></dependency>
<!--        lombok     --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.26</version></dependency><!-- JUnit 4 测试框架依赖,用于编写和运行单元测试 --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency></dependencies>
</project>

1.2 application.yml配置文件整合mysql

# 启动端口号
server:port: 8080spring:# 整合 mysql数据源 连接池datasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql:///db1username: rootpassword: 1234type: com.alibaba.druid.pool.DruidDataSource

1.3 写业务

  • pojo

package com.it.pojo;import lombok.Data;@Data
public class Dept {private int id;private String dname;private String loc;
}
  • mapper

package com.it.mapper;import com.it.pojo.Dept;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;//动态扫描代理
@Mapper
public interface DeptMapper {@Select("select * from dept where id=#{id}")public Dept findById(int id);
}

1.4 测试

package com.it.mapper;import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;@SpringBootTest
class DeptMapperTest {@Autowiredpublic DeptMapper deptMapper;@Testvoid findById() {System.out.println(deptMapper.findById(1));}
}

1.5 service

package com.it.service;import com.it.pojo.Dept;public interface DeptService {public Dept findById(int id);
}

1.6 Impl层

package com.it.service.impl;import com.it.mapper.DeptMapper;
import com.it.pojo.Dept;
import com.it.service.DeptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;@Service
public class DeptServiceImpl implements DeptService {@Autowiredpublic DeptMapper deptMapper;@Overridepublic Dept findById(int id) {return deptMapper.findById(id);}
}

1.7 controller层

package com.it.controller;import com.it.pojo.Dept;
import com.it.service.DeptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;@Controller
public class DeptController {@Autowiredprivate DeptService  deptService;//    一个方法就是一个servlet@RequestMapping("/getList")@ResponseBodypublic Dept getList(int id){Dept dept = deptService.findById(id);System.out.println(dept);return dept;}}

1.9 查询数据

        启动项目,进入端口查询数据

http://www.xdnf.cn/news/949483.html

相关文章:

  • React中子传父组件通信操作指南
  • 使用VBA嵌套字典快速转换BOM表格
  • 鸢尾花分类(KNN)
  • 【AI News | 20250609】每日AI进展
  • 测试微信模版消息推送
  • 开源:FTP同步工具
  • 【粤语克隆】粤语声音,一秒克隆:如何用AI为岭南文化按下快进键
  • composer init
  • LeetCode - 647. 回文子串
  • 具身智能之人形机器人核心零部件介绍
  • 教程:PyCharm 中搭建多级隔离的 Poetry 环境(从 Anaconda 到项目专属.venv)
  • 重启Eureka集群中的节点,对已经注册的服务有什么影响
  • 深入理解JavaScript设计模式之单例模式
  • AirPosture | 通过 AirPods 矫正坐姿
  • 安科瑞户储ADL200N-CT:即插即用破解家庭光伏安装困局
  • HBase学习:通俗易懂的实例解析
  • K8S认证|CKS题库+答案| 10. Trivy 扫描镜像安全漏洞
  • Java中HashMap底层原理深度解析:从数据结构到红黑树优化
  • 人工智能 - 在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型
  • Excel处理控件Aspose.Cells教程:在Excel 文件中创建、操作和渲染时间线
  • 国内外UI自动化测试工具全景分析:国产创新与国际领先工具对比
  • Rougamo.Fody 实现一个AOP日志
  • UI框架-通知组件
  • TMC2226超静音步进电机驱动控制模块
  • 高抗扰度汽车光耦合器的特性
  • 渗透实战PortSwigger Labs指南:自定义标签XSS和SVG XSS利用
  • sshd代码修改banner
  • 开发一套外卖系统软件需要多少钱?
  • 简单介绍C++中 string与wstring
  • 动手学深度学习13.3. 目标检测和边界框-笔记练习(PyTorch)