概述

由于公司决定使用spring cloud,但是公司积累了大量的普通的jsp项目,老的项目直接全部修改为springboot成本过高,周期比较长,而且公司业务正在快速拓展,所以需要把之前的老项目修改为springboot项目,特花了几天时间研究如何把老的项目修改为springboot项目,研究过程中非常坎坷,一步一坑,所以现在整理一下相关代码,希望能够对有类似需要的朋友有所帮助。

详细

写在本例子前面的一句话:

本例子的目的是为了提供一个(springweb + jsp + mybatis)转(springboot)项目的一个参考,而不是一个可以将你项目转换springboot项目的工具。

该项目基于标准的springweb + jsp + mybatis项目改版,修改之后和正常的springboot项目唯一不一样的地方就在于正常的springboot项目打成的是jar包,该项目打成的是war包,但是可以使用java - jar project.war执行,其他地方和正常的springboot项目无任何区别。把正常的项目修改为springboot项目可能刚接触的时候没什么思路,思路清晰了修改起来没有什么难度。

一、项目截图

1、需要准备什么环境

数据库使用的mysql5.5,该项目亲测可以执行成功,直接执行Application即可,端口为8080,建议先学习一下springboot,否则可能会比较吃力(建议先看一下readme.txt),里面有注意事项。

2、本例子截图功能

二、配置信息

springboot提倡约定大于配置,项目中删除了所有能删除的xml配置文件,数据库配置主要集中在cn.com.springtest.pt.config.db.MyBatisConfig和cn.com.springtest.pt.config.db.MyBatisMapperScannerConfig中,另外,mybatis那块有个坑,mybatis无法自动扫描war包中的model类,该项目中已经解决掉,具体解决方案请查看readme.txt,MessageConverter、spring的拦截器、filter等配置信息都在WebConfig中(配置比较简单,都是正常的spring mvc 项目中的配置信息直接迁移过来的,唯一的区别就是一个是用的xml配置的,本例子中是写在Java代码中的,一看就懂)。

三、配置文件

配置信息和正常的springboot项目无太大区别,只是这里需要配置jsp相关的配置信息

spring:
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
server:
port: 8080
tomcat:
uri-encoding: UTF-8 ribbon.eureka.enabled: false spring:
application:
name: springtest
http:
encoding:
force: true
charset: UTF-8
enabled: true
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
datasource:
name: test
url: jdbc:mysql://localhost:3306/springtest
username: root
password: root
# 使用druid数据源
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.jdbc.Driver
filters: stat
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20

四、项目运行效果

未做太过复杂的例子,只是简单做了一个插入和查询的例子,经测试正常

五、spring boot入门参考

我在网站找了些入门资料,贴出来供大家参考下。

Spring Boot 入门:

http://blog.csdn.net/isea533/article/details/50278205

百度百科:

http://baike.baidu.com/link?url=3eSMLwbSKvRo8aS1Vzdm9I30OP8uf2X7Hnz-NLQfbTLvQ2rZQoE4KxzF9M7rGW_5U7JHUshlowljjyGMNvvmHOPd2cV0r9Y3ojJR1y3SE9C

注:本文著作权归作者,由demo大师发表,拒绝转载,转载需要作者授权

普通spring jsp+mybatis项目修改为springboot + jsp +mybatis项目的更多相关文章

  1. MyBatis原理,Spring、SpringBoot整合MyBatis

    1. MyBatis概述 MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可 ...

  2. SpringBoot+SpringMVC+MyBatis快速整合搭建

    作为开发人员,大家都知道,SpringBoot是基于Spring4.0设计的,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程.另外Spr ...

  3. 【java框架】SpringBoot(7) -- SpringBoot整合MyBatis

    1.整合MyBatis操作 前面一篇提到了SpringBoot整合基础的数据源JDBC.Druid操作,实际项目中更常用的还是MyBatis框架,而SpringBoot整合MyBatis进行CRUD也 ...

  4. SpringBoot数据访问(一) SpringBoot整合Mybatis

    前言 SpringData是Spring提供的一个用于简化数据库访问.支持云服务的开源框架.它是一个伞形项目,包含了大量关系型数据库及非关系型数据库的数据访问解决方案,其设计目的是为了使我们可以快速且 ...

  5. springboot+jsp+mybatis项目实例(后台成功,但是无法跳转jsp页面,没有实体类的注解,看springboot+jsp第二弹相关配置,即可成功配置jsp)

    SpringBoot是用来简化SpringMvc开发的项目,这里自然要整合mybatis等持久化框架! 先看看项目目录: 一.在pom.xml中配置依赖jar包:<project xmlns=& ...

  6. springboot+springmvc+mybatis项目整合

    介绍: 上篇给大家介绍了ssm多模块项目的搭建,在搭建过程中spring整合springmvc和mybatis时会有很多的东西需要我们进行配置,这样不仅浪费了时间,也比较容易出错,由于这样问题的产生, ...

  7. springBoot整合mybatis、jsp 或 HTML

    springBoot整合mybatis.jsp Spring Boot的主要优点: 1:  为所有Spring开发者更快的入门: 2:  开箱即用,提供各种默认配置来简化项目配置: 3:  内嵌式容器 ...

  8. 基于Maven + SSM (Spring、SpringMVC、Mybatis)构建一个简单的测试项目

    最近在公司实习期间的培训交流中有机会接触到SSM,然后自己花费1周的时间投入学习.谈不上深刻理解其中原理,所以没有涉及理论知识,只是浅层次的学习如何使用,在此将学习过程记录整理出来,一方面自己备用:另 ...

  9. springBoot 整合 mybatis 项目实战

    二.springBoot 整合 mybatis 项目实战   前言 上一篇文章开始了我们的springboot序篇,我们配置了mysql数据库,但是我们sql语句直接写在controller中并且使用 ...

随机推荐

  1. ACM-DP之最大连续子序列——hdu1231

    ***************************************转载请注明出处:http://blog.csdn.net/lttree************************** ...

  2. pytest文档27-pytest分布式执行(pytest-xdist)

    前言 平常我们手工测试用例非常多时,比如有1千条用例,假设每个用例执行需要1分钟.如果一个测试人员执行需要1000分钟才能执行完,当项目非常紧急的时候, 我们会用测试人力成本换取时间成本,这个时候多找 ...

  3. java 数据流的处理

    字节流类 功能简单介绍 DataInputStream 包含了读取Java标准数据类型的输入流 DataOutputStream 包含了写Java标准数据类型的输出流 ByteArrayInputSt ...

  4. 《疯狂iOS讲义(下)——iPhone/iPad高级应用与手游开发(含CD光盘1张)》

    <疯狂iOS讲义(下)——iPhone/iPad高级应用与手游开发(含CD光盘1张)> 基本信息 作者: 李刚    肖文吉 出版社:电子工业出版社 ISBN:9787121224379 ...

  5. [MAC OS] NSButton tag 获取

    @IBAction func switchContentLayout(_ sender: Any) { let button : NSButton = sender as! NSButton;}

  6. Mysql之sql语句操作

    一.数据库级别操作 1.显示数据库 1 SHOW DATABASES; 默认数据库: mysql - 用户权限相关数据 test - 用于用户测试数据 information_schema - MyS ...

  7. 基于json的jquery地区联动探索

    贴一个基于jquery联动的代码,相信这样的代码有一大把,就当是jquery的练手吧, 写这个东西的初衷是来之于新浪微博,在新浪微博帐号设置里面有个地区的选项,使用js写的,想把它的代码给截获下来,可 ...

  8. Android -- Camera源码简析,启动流程

    com.android.camera.Camera.java,主要的实现Activity,继承于ActivityBase. ActivityBase 在ActivityBase中执行流程: onCre ...

  9. Jmeter+Ant+Jenkins搭建持续集成的接口测试框架

    https://my.oschina.net/hellotest/blog/516079 摘要: 一个系统通常有多个接口,软件的生命周期中,我们会不断的去优化老的接口和开发新的接口,那么在这个过程中, ...

  10. (算法)构造MaxTree

    题目: 给定一个没有重复元素的数组A,定义A上的MaxTree如下:MaxTree的根节点为A中最大的数,根节点的左子树为数组中最大数左边部分的MaxTree,右子树为数组中最大数右边部分的MaxTr ...