springboot2.0

springboot2.0  快速开发框架 

优点:快速开发,开箱即用,简化spring配置,启动方便维护方便

 

1.第一个WEB  (和1.5有差别)

(1)pom.xml

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
<relativePath />
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>

(2)只要一个hellocontroller,不用app类,启动方式的不同。

@RestController
@EnableAutoConfiguration
public class helloController {

@RequestMapping("/hello")
public String hello(){
return "呵";
}
public static void main(String[] args) {
SpringApplication.run(helloController.class, args);
}

 

2.集成freeMarker前端模版(1.5中是Thymelea模版,主要是导入包不同而已 ),以前是MODEDIVE

(1)导包

<!-- 引入freeMarker的依赖包. --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker</artifactId> </dependency>

(2)application.yml 中配置    ( http://toyaml.com 转化为yml格式的网站工具)

(3)创建index.ftl

<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8" /> <title></title> </head> <body> </body> </html>

(4)controller类/index     reutrn "index";

 

3.springboot集成JSP

不推荐使用

 

4.集成JPA

(未完)

 

5.集成Mybatis

在res资源下建立mapping,xml  来配置。而在MAPPER类中就不用写@select这些语句。

 

6.集成PageHelper完成分页

(1)

<!-- springboot 整合 pagehelper --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.5</version> </dependency>'

(2)

logging.level.com.example.demo.dao=DEBUG

pagehelper.helperDialect=mysql

pagehelper.reasonable=true

pagehelper.supportMethodsArguments=true

pagehelper.params=count=countSql

pagehelper.page-size-zero=true

(3)

@RequestMapping("/all")
public Object all(Integer pageNum,Integer size){
PageHelper.startPage(pageNum, size);
List<Role> list=roleMapper.selectAll();
PageInfo<Role> page=new PageInfo<>(list);
return page;
}

 

 

7.多数据源两种情况

第一种:垂直分割模式

第二种:类似水平分割

 

 

8.多数据源处理事务

 

 

9.根据业务动态选择数据源

 

 

10.使用Log4j收集日志

出现异常,这个日志必须收集。 异常日志必须单独记录在一个文件中。

 

 

11.利用AOP统一收集web请求日志

 

12.缓存支持

Ehcache:缓存数据库数据,查询数据

Redis:缓存数据库数据,存储Token,验证码,当成数据库用

Ehcache:1.导入依赖  2.ehcache.xml配置

 

13.解决更新数据缓存无法更新

 

14.SpringBoot热部署   

在使用SSM,servlet时修改包下代码或配置文件会重新启动,但在SPRINGBOOT中不会自动更新,因此需要热部署来完成修改保存后自动重启。

因为SpringBoot热部署 有两个ClassLoder:一个装jar包 restartCloassLoader另外一个装用户的代码 修改代码的时候会重启restartClassLoa der。

SSM中有一个ClassLoader,资源被修改过后,会重新加载所有资源

热部署中如何监控启动:何时去启动,当classPath下的文件发生变化,才会去自动重启

 

 

热部署 :

(1)<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> <scope>true</scope> </dependency>

(2)restartController

(3)application.properities中添加  spring:devtools.livereload.enabled=true

结果在修改保存数据后立刻自动启动更新数据

 

15.性能优化

SSM是手动配置,而SRRINGBOOT是全自动配置因此不需要的配置会导致加载变慢

(1)启动方式(2)启动容器(3)JVM调优

 

 

16.异步定时访问信息

 

17拦截器使用

 

18.打包

 

posted @ 2019-03-12 11:00  StingLon  阅读(180)  评论(0)    收藏  举报