SpringMVC+Ibatis项目升级成SpringBoot项目

前言

.
  前一段时间有一个新的任务,将2010年的一个使用SSI框架的老项目升级成SpringBoot的新项目,在这新的项目上做增量开发。同时,在上一篇博客中搭建了SSI框架简单demo,所以这一篇博客就是将上一篇SSI框架demo升级成SpringBoot的demo。
  
                              SpringMVC+Ibatis的demo链接地址

一、创建一个新的SpringBoot项目

1.1、 首先声明本次demo是使用IntelliJ IDEA开发工具完成。
1.2、选择左上角File ==>New ==>Project 弹出如下界面。
SpringMVC+Ibatis项目升级成SpringBoot项目_第1张图片
1.3、按照上图配置,选择自己的SDK,点击Next,弹出如下界面。
SpringMVC+Ibatis项目升级成SpringBoot项目_第2张图片
1.4、填写Group和Artifact等信息,直接Next,弹出如下界面。
SpringMVC+Ibatis项目升级成SpringBoot项目_第3张图片
1.5、因为这里要集成mybatis所以先选中了mybatis相关依赖和web工程的依赖,省的项目建成还得一点一点填写pom.xml文件的依赖,当然在这里你也可以什么也不选择,直接去pom.xml文件添加项目的jar包依赖。
  之后单击Next会弹出选择项目存储路径的界面,可以使用默认的即可,直接单击Finish即可,此时一个项目就创建完成了,目录结构如下。
SpringMVC+Ibatis项目升级成SpringBoot项目_第4张图片
1.6、本次demo中配置文件使用的yml配置文件,所以将application.properties修成成application.yml,并新建application-dev.yml文件,如下图所示。SpringMVC+Ibatis项目升级成SpringBoot项目_第5张图片
1.7、yml配置文件和pom依赖内容。
application.yml文件:

spring:
  profiles:
    #此处是在运行时激活application-dev.yml配置文件,当然此处也可选择激活其它的yml文件。
    active: dev

application-dev.yml文件:

#数据库连接配置
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    name: server
    driverClassName: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/ssi?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&tinyInt1isBit=false&serverTimezone=UTC
    username: root
    password: root
    maximumPoolSize: 20
    maxIdle: 30
    minIdle: 5
    maxWait: 50
    maxActive: 20
    initalSize: 5
    filters: stat
    validationQuery: SELECT 1
    testWhileIdle: true
    timeBetweenEvictionRunsMillis: 120000

#内置tomcat启动端口号修改
server:
  port: 9000
  
# mybatis扫描xml文件地址配置。
mybatis:
  mapper-locations: classpath:mapper/*.xml

pom.xml文件:



	4.0.0
	
		org.springframework.boot
		spring-boot-starter-parent
		2.1.6.RELEASE
		 
	
	com.ebiz.demo
	ssm-project
	0.0.1-SNAPSHOT
	ssm-project
	Demo project for Spring Boot

	
		1.8
	

	
		
			org.springframework.boot
			spring-boot-starter-jdbc
		
		
			org.springframework.boot
			spring-boot-starter-web
		
		
			org.mybatis.spring.boot
			mybatis-spring-boot-starter
			2.0.1
		

		
			mysql
			mysql-connector-java
			runtime
		
		
			org.springframework.boot
			spring-boot-starter-test
			test
		
		
			com.alibaba
			druid
			1.0.31
		
		
		
			org.projectlombok
			lombok
		
		
			org.apache.commons
			commons-lang3
		
	

	
		
			
				org.springframework.boot
				spring-boot-maven-plugin
			
		
	



1.8、此时项目就已经配置完成了,可以试着启动一下,虽然没有业务逻辑。启动步骤如下
SpringMVC+Ibatis项目升级成SpringBoot项目_第6张图片
1.9、运行成功后控制台显示如下日志SpringMVC+Ibatis项目升级成SpringBoot项目_第7张图片

二、复制业务代码

2.1、上一篇SSI的demo的连接地址:
                    
                            ’SpringMVC+Ibatis的demo链接地址

2.2、将SSI(springMVC+Ibatis)项目中代码业务复制到springboot新项目中,如下图。
SpringMVC+Ibatis项目升级成SpringBoot项目_第8张图片
2.3、因为Springboot项目集成的是mybatis框架,所以就可以删掉BaseMapper、dao层的实现类,最终目录如下。
SpringMVC+Ibatis项目升级成SpringBoot项目_第9张图片
2.4、同时在springboot启动类加上@MapperScan注解,让spring扫描的dao层接口,自动生成一个实现类,本项目中注解内容如下。

package com.ebiz.demo.ssmproject;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan("com.ebiz.demo.ssmproject.dao")
public class SsmProjectApplication {

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

}

2.5、由于ibatis和mybatis的xml文件差别还是蛮大的,如果每一处不同都要手动改变的话,那么一旦项目业务复杂,xml文件较多的话,改起来人是会疯的,所以这里就采用了网上开源的项目自动将ibatis的xml文件转换成mybatis的xml文件格式。

2.6、ibatis的xml文件转换成mybatis的xml文件项目链接如下:
                            
                                 ibatistomybatis的git地址

2.7、项目下载成功之后,直接解压到任意目录下即可,我这里是放到:

D:\ibatisToMybatis\ibatis2mybatis-master

之后还要下载Ant ,选择一个适合自己环境的版本下载,下载完之后直接解压到任意目录即可,接下来就是配置环境变量。
                                  Apache Ant 下载地址

配置环境变量步骤:
2.7.1、我的电脑 ==> 属性 ==>高级系统设置 ==>高级 ==>选择环境变量
2.7.2、新建系统变量 ,变量名: ANT_HOME 变量值:E:/apache-ant-1.10.6(因为我把ant解压到E:/apache-ant-1.10.6目录下,所以值得内容请安ant解压路径填写)
2.7.3、找到path的系统变量,后面追加 %ANT_HOME%\bin;,若前面没有 ‘;’,请自行添加
2.7.4、之后打开cmd 输入 ant -version 就会显示出ant的版本信息了,就代表安装成功了,如下图。
在这里插入图片描述

2.8、此时就就可以进行自动转换xml文件了,具体如下。
2.8.1、打开ibatistomybatis项目目录,目录下有一个source文件夹,进入到source文件夹,将ibatis的xml文件放入到此文件夹,如下图
SpringMVC+Ibatis项目升级成SpringBoot项目_第10张图片
2.8.2、回到ibatisToMyabtis项目的根目录下,我这里是ibatis2mybatis-maseter文件夹,在此目录下打开命令窗口(shift+鼠标右键,选择 在此处打开命令窗口),或者随便打开一个命令窗口,自己一点一点进入ibatisToMybatis项目的根目录下,如下图所示。

SpringMVC+Ibatis项目升级成SpringBoot项目_第11张图片
2.8.3、在cmd中输入ant +回车,之后打印出如下日志代表转换完成。
SpringMVC+Ibatis项目升级成SpringBoot项目_第12张图片
2.8.4、此时就可以去ibatisToMybatis项目的根目录下destination文件夹下,找到已经转换好的mybatis的xml文件了,如图。
SpringMVC+Ibatis项目升级成SpringBoot项目_第13张图片

2.8.5、虽然ibatis的xml文件已经转换成mybatis的xml文件了,但并不代表你可以高枕无忧了,你还需要去转换好的myabtis的xml文件去检查一下和修改一些东西才能够跑的起来,如下图。
SpringMVC+Ibatis项目升级成SpringBoot项目_第14张图片
2.8.6、我这里是修改namespace的值,值为IUserLoginDao接口的路径,和resultType路径,因为项目目录结构发生变化,所以响应resultType也要发生变化。此时就可以启动项目了,启动项目在上面有提及。

三、测试

3.1、还是想上一篇一样,用PostMan测试,结果如下图。
图一:
SpringMVC+Ibatis项目升级成SpringBoot项目_第15张图片
图二:
SpringMVC+Ibatis项目升级成SpringBoot项目_第16张图片

你可能感兴趣的:(SpringMVC+Ibatis项目升级成SpringBoot项目)