如何用SpringBoot开发一个分布式的项目
spring框架随着时代发展的衍生物.spring框架的发展追寻简化过程,但是总不能离开xml的配置.springboot基于spring框架的可以实现自动配置独立运行框架容器(不依赖其他容器),快速搭建框架的工具框架.
默认springboot开发一个web应用,可以通过依赖实现内嵌的servlet容
器启动,默认是tomcat,可以配置其他jetty和undertow;配合第一个核心
功能,独立运行+内嵌servlet,就可以不依赖外界的插件,tomcat容器,启
动一个web应用(main)
手动搭建第一个springboot运行SS框架:
1:创建一个maven,quickstart
2:添加pom文件中的各种内容
parent:
groupId:org.springframework.boot:/groupId
artifactId:spring-boot-starter-parent:/artifactId
version:1.5.2.RELEASE:/version
:/parent
添加了这个标签那么此maven工程具备了SpringBoot各种功能的能力,标准的SpringBoot工程。
工程启动入口类的注解
@SpringBootApplication
maven的继承
在maven的管理内容中,可以使用继承,将子工程的所有pom中公用的特性提取到一个父工程中。
通过这样的继承方式,所有的子工程都具备了相同的父工程的jar包。所有工程的jar包就保持了一致。不会因为jar包的不同而导致项目的报错。
SpringBoot的基本原理
核心注解:@SpringBootApplication它是入口类的注解,是一个组合注解。它由以下3个注解组成。
1:@SpringbootConfiguration
配置类,实现所有springboot工程的配置加载,其中自动读取
application.properties中的key-value值将其赋值给使用的对象们(datasource,viewResovler)
2:@EnableAutoConfiguration
根据依赖内容实现所有需要的内存对象的创建和配置过程,依赖starter-web会自动创建,starter-jdbc创建datasource
3:@ComponentScan
spring的注解,代替了以前配置文件xml中标签,作用到类上,将会以类所在的包为扫描的基础,当前的环境中所有可以被spring,springmvc容器扫描到的范围,都在入口类的同名包或下级包中,范围之外,无法使用.
Springboot的配置使用
全局配置文件application
Springboot支持properties格式.也支持yml格式。
properties:
yml:
Springboot整合ssm框架功能
Springboot整合Spring和SpringMVC:
只要依赖了starter-web自动形成启动后的spring容器和springmvc容器
按照加载的扫描的逻辑,编写controller,service,component
//返回对象数据,返回一个user对象。
属性注入获取属性封装
各种技术的引入,rabbitmq,redis,elasticsearch等等,都需要框架维
护连接对象.需要从application.properties中读取连接各种配置信
息,例如连接的ip,port,username,password等等,以框架维护连接对
象的第一步就是属性读取(properties)
持久层框架整合mabatis
需要依赖的pom内容
springboot的jdbc简化依赖
mysql连接依赖
mybatis
jsp页面的访问
ssm的jsp页面访问的原理是:jsp动态资源,必须有tomcat容器管理,形成翻
译之后的jsp.java文件才能起到动态效果,springboot现在的servlet容器是内
嵌的tomcat,和maven的tomcat插件,和外部的tomcat软件都有很大区别,无
法直接解析jsp页面.jar包的引入解决这个问题。
创建一个maven的webapp骨架
创建一个WEB-INF/views/index.jsp
将当前工程继承springboot parent 依赖starter-web
此外jsp页面还需要2个依赖
前缀和后缀的配置application.properties中
#prefix,suffix
Springboot项目发布启动
spring+springmvc+mybatis项目easymall开发完成之后,打包成
easymall.war.需要外接的tomcat容器在linux服务器上运行这个工程
springboot由于有独立运行的main方法入口;web工程还是其他工程,内部都是以main方法启动的,所以可以直接将工程打包,调用java -jar
**.jar/war
spirngboot创建的maven工程打包需要一个依赖的插件实现对main方法信息的配置.