SSM项目 替换为 SpringBoot

一、运行SSM项目

保证项目改为SpringBoot后运行正常,先保证SSM下运行正常。
项目目录结构
SSM项目 替换为 SpringBoot_第1张图片

  • 创建数据库,导入sql文件
    SSM项目 替换为 SpringBoot_第2张图片
  • 查看项目中连接数据jar版本,修改对应版本,修改数据库配置信息
    SSM项目 替换为 SpringBoot_第3张图片
  • 配置启动tomcat
    SSM项目 替换为 SpringBoot_第4张图片
    SSM项目 替换为 SpringBoot_第5张图片
    运行项目,测试正常。

二、修改为SpringBoot

SSM改为SpringBoot可直接在原项目修改pom文件然后增加启动类或者新建一个SpringBoot项目进行代码迁移。这里采用的是新建SpringBoot项目进行代码迁移。
参考链接:https://blog.csdn.net/weixin_44141495/article/details/109366144

  • 新建SpringBoot项目。
    SSM项目 替换为 SpringBoot_第6张图片
  • 添加基础依赖(mybatis、web,注意版本问题一般SSM项目版本都不太高,SpringBoot和对应mybaits都不应选择太高版本)
     <dependency>
          <groupId>org.springframework.bootgroupId>
          <artifactId>spring-boot-starterartifactId>
      dependency>

      <dependency>
          <groupId>org.springframework.bootgroupId>
          <artifactId>spring-boot-starter-testartifactId>
          <scope>testscope>
      dependency>

      <dependency>
          <groupId>org.springframework.bootgroupId>
          <artifactId>spring-boot-starter-webartifactId>
      dependency>
      <dependency>
          <groupId>org.mybatis.spring.bootgroupId>
          <artifactId>mybatis-spring-boot-starterartifactId>
          <version>2.1.3version>
      dependency>
      <dependency>
          <groupId>org.springframework.bootgroupId>
          <artifactId>spring-boot-starter-testartifactId>
      dependency>
  • 复制后端代码到对应目录,根据代码报错查找SSM中对应依赖加入到SpringBoot的pom文件中

  • 根据SSM中的各个配置文件再SpringBoot项目中增加配置。
    SSM项目 替换为 SpringBoot_第7张图片SSM项目 替换为 SpringBoot_第8张图片
    SSM项目 替换为 SpringBoot_第9张图片

  • 由于项目都是HTML页面发送Ajax请求来完成的,所以不必创建templates这个目录,创建一个static即可,然后把webapp的文件都转移过去。
    设置拦截器(对应spring-mvc.xml中拦截器)
    SSM项目 替换为 SpringBoot_第10张图片
    迁移后项目目录:
    SSM项目 替换为 SpringBoot_第11张图片

  • 运行项目,通过配置端口以及页面的.html路径进行访问,登录页面正常。

遇到问题

1、通过登录页面进行登录时提示用户名不存在,排查发现通过mybatis执行后,sql运行正常,但未映射到实体中。
参考资料:https://blog.csdn.net/weixin_41753664/article/details/122580042
查找资料:mybatis与实体类的映射方式,主要是有两种通过resultMap参数或resultType参数
通过查看原项目中代码发现,原SSM中该sql语句把resultMap参数和resultType参数两参数都用了,后删除resultMap解决(SSM中正常,可能和低版本的mybatis有关)。
SSM项目 替换为 SpringBoot_第12张图片
2、登录成功后通过视图解析器跳转页面提示 html 404 错误。
Path with “WEB-INF” or “META-INF”: [WEB-INF/views/index.html]
查找资料:https://www.oschina.net/question/1476773_2301839
https://blog.csdn.net/weixin_46713508/article/details/119804112
查到的资料说是源码中校验WEB-INF中的html,更改为jsp就可以。尝试更改后仍不可以,后尝试修改WEB-INF文件夹名称,修改视图解析器配置解决。
3、解决根路径跳转至登录页面。

  • 增加配置,添加登录视图
    SSM项目 替换为 SpringBoot_第13张图片
    由于原项目中配置视图解析器跳转的html在veiws文件夹下,所以复制login.html到veiws文件夹下即可。
    SSM项目 替换为 SpringBoot_第14张图片

你可能感兴趣的:(框架,spring,boot,mybatis,java)