SSM老项目修改为SpringBoot项目(springboot与jsp整合)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
全局流量管理 GTM,标准版 1个月
简介: SSM老项目修改为SpringBoot项目(springboot与jsp整合)

前言

要想知道改为springboot项目需要修改什么配置什么,就要知道SSM项目web.xml和springmvc.xml给我配置了啥?

web.xml配置了中央调度器,以及初始化了一些容器,编码,路由映射(为了将url转发到dispatcherServlet),指定springmvc配置文件的路径等等。

srpingmvc.xml里面主要配置了 控制器controller配置,视图解析器,static静态资源映射等等。

springboot帮我们自动配置了些什么?

springboot帮我们自动扫描了controller类,中央调度器自动装配,视图解析器自动默认解析classpath:/templates/ , 静态资源自动默认解析 classpath:/static/ 或者classpath:/public/ 或者 classpath:/resources/ 。。。

所以我们ssm变springboot项目可能就仅仅配置以下依赖,spring-boot的依赖相对旧项目依赖要变化。

还有就是springboot要整合一下jsp。

步骤:

0.sql文件导入 创建数据库

1.新建一个springboot项目

并且创建好相关的文件目录,把相关的文件放到相应的目录下。

目录一般如下:

3ff90bffafb7d6bc7a735efeb5318c6.png

之后添加依赖:

一般添加如下依赖:

spring-boot-starter-web web模块

mybatis-spring-boot-starter 数据库mybatis

阿里巴巴数据源druid

数据库驱动 mysql-connector-java

tomcat-embed-jasper jsp解析模块支持(springboot内置的tomcat没有这个依赖,添加这个用于jsp的解析)

其他依赖的话,就按照你的项目按需添加了!!!!

maven:

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
    <scope>provided</scope>
</dependency>
<!--springboot中使用jsp-start-->
<!---引入springboot内嵌的tomcat对jsp的解析包-->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>
<!--mybatis-->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.1.4</version>
</dependency>
<!--druid 阿里巴巴数据源-->
<!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid</artifactId>
    <version>1.2.5</version>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <scope>runtime</scope>
    <optional>true</optional>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>

2.application.properties配置

需要配置如下内容:

1.需要配置数据源连接数据库

2.配置视图解析器jsp整合

3.配置静态资源解析器

4.配置mybatis

这里配置,需要一步步测试,先配置数据源数据库,并且先测试是否能成功连接。

application.yml:

spring:
  datasource:
    username: root
    password: 123456
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/trip_Web_db?characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2b8
    # 使用阿里巴巴的Druid数据库连接池
    type: com.alibaba.druid.pool.DruidDataSource
    # 连接池的配置信息
    # 初始化大小,最小,最大连接数
    initial-size: 10
    min-idle: 10
    maxActive: 20
    # 配置获取连接等待超时的时间
    maxWait: 60000
    # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是ms
    timeBetweenEvictionRunsMillis: 60000
    # Destory线程中如果检测到当前连接的最后活跃时间和当前时间的差值大于
    # minEvictableIdleTimeMillis,则关闭当前连接。单位是ms
    minEvictableIdleTimeMillis: 300000
    # 用来检测连接是否有效的sql,要求是一个查询语句。
    validationQuery: SELECT 1
    #建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
    testWhileIdle: true
    # 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
    testOnBorrow: false
    # 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能
    testOnReturn: false
    # 打开PSCache,并且指定每个连接上PSCache的大小
    poolPreparedStatements: true
    # 配置监控统计拦截的filters,监控统计用的stat、日志用的log4j、 防御sql注入的wall
    filters: stat,wall,slf4j
    # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
    connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
    useGlobaiDataSourceStat: true
    maxPoolPreparedStatementPerConnectionSize: 20
  mvc:
    #视图解析器  需要整合jsp的话  需要这个配置
    view:
      prefix: /WEB-INF/jsp/
      suffix: .jsp
#mybatis
mybatis:
  type-aliases-package: com.web.tripweb.pojo  #实体类包
  mapper-locations: classpath:/mapper/*.xml  #xml文件

3.springboot-jsp的整合

老项目用的jsp就需要整合,如果是thymeleaf就没事~~

application.yml配置了之后,数据库测试保证能正常连接数据库,修改mybatis 什么xml,保证功能都能正常使用。

之后就试试项目是否正常运行。

主要看视图能否正常打开,不能的话,就看这篇文章👉springboot整合jsp

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6天前
|
Java 应用服务中间件
SpringBoot获取项目文件的绝对路径和相对路径
SpringBoot获取项目文件的绝对路径和相对路径
41 1
SpringBoot获取项目文件的绝对路径和相对路径
|
2天前
|
前端开发 Oracle 关系型数据库
关于使用SSM+JSP开发时setter、getter隐式调用问题的小结
本文主要分享了在使用SSM+JSP进行网站开发时,因忽视setter、getter的隐式调用问题而导致的常见bug及其解决方法。详细介绍了setter和getter的隐式调用时机,并给出了具体示例,帮助开发者避免类似问题。
24 11
|
1天前
|
分布式计算 关系型数据库 MySQL
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型 图像处理 光通信 分布式计算 算法语言 信息技术 计算机应用
17 8
|
26天前
|
JavaScript 前端开发 Java
解决跨域问题大集合:vue-cli项目 和 java/springboot(6种方式) 两端解决(完美解决)
这篇文章详细介绍了如何在前端Vue项目和后端Spring Boot项目中通过多种方式解决跨域问题。
289 1
解决跨域问题大集合:vue-cli项目 和 java/springboot(6种方式) 两端解决(完美解决)
|
8天前
|
JavaScript 前端开发 Java
SpringBoot项目的html页面使用axios进行get post请求
SpringBoot项目的html页面使用axios进行get post请求
27 2
|
8天前
|
前端开发 Java Spring
SpringBoot项目thymeleaf页面支持词条国际化切换
SpringBoot项目thymeleaf页面支持词条国际化切换
29 2
|
8天前
|
JSON Java 数据库
SpringBoot项目使用AOP及自定义注解保存操作日志
SpringBoot项目使用AOP及自定义注解保存操作日志
26 1
|
10天前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
10天前
|
关系型数据库 MySQL Java
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
20 0
|
26天前
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
106 0