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.打包
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号