24.SpringBoot使用文档(springrain)
文章目录
SpringBoot简介和优势
自行百度......
目前https://gitee.com/chunanyong/springrain已经整体更新到了SpringBoot 2.0.1的最新版本,公司的项目也会逐渐替换.
SpringBoot的demo
访问http://start.spring.io/,创建一个web项目.从域名可以看出Spring团队对SpringBoot的重视.
把这个项目导入到Eclipse,main方法运行com.example.demo.DemoApplication,默认端口8080,默认路径/
SpingBoot核心说明
Spring Boot有四大神器,分别是auto-configuration.starters.cli.actuator.
auto-configuration:约定配置,取消配置文件,例如默认注册Spring MVC的MessageConverter.
starters:是对模块依赖的又一层封装.类似Linux的yum包管理,根据功能,自动加载依赖的包.比Maven原生功能更近一步.
cli:是一个命令行工具,可用于快速搭建基于Spring的原型.
actuator:监控应用运行状态.
以下参照springrain项目进行讲解.
3.1.pom.xml
SpringBoot主要是依赖starter进行模块依赖. 主要依赖是:
{width="4.427083333333333in" height="1.4791666666666667in"}
3.2.application.yml
yml格式目前比较流行,大家也可以学习以下,主要特点是对齐和空格.
application.yml是SpringBoot的入口配置,主要配置一些必须的数据库连接等.其他配置使用JavaConfig配置的方式.
3.3.启动类
这个类所在的包,就是默认扫描的根包
主要配置
依据Maven目录结构,配置文件都在src/main/resources下,JavaConfig配置类
在org.springrain.config包下,主配置是application.yml
4.1.配置文件
//根据注释讲解
application.yml SpringBoot主配置
banner.txt 启动banner内容
logback-spring.xml logback的配置文件
proguard.conf 混淆配置文件.
wechat.properties 微信的配置文件.特殊情况可以配置微信服务的域名.
4.2.Java配置类
//根据注释讲解
Spring的核心配置
CacheConfig.java缓存配置
DataSourceConfig.java 数据库配置
ShiroConfig.java shiro的权限配置
SpringMVCConfig.java MVC的配置
TransactionConfig.java事务配置,配合applicationContext-tx.xml
WeiXinConfig.java 微信的配置
导出war包运行
SpringBoot默认是使用jar文件运行,jar文件里包含了tomcat容器,比较简陋.实际生产环境一般是war包形式部署运行,Tomat需要升级维护和个性化定制,所以不能使用jar包形式运行.
5.1.修改pom
5.2.增加Servlet入口类
5.3.导出成war包
运行自定义的maven命令
运行maven的package 命令,并运行,打包文件会在target目录下
打包的文件以及命令记录
总结:
SpringBoot一定程度上简化了基础开发难度,做了很多约定,也因此带来了一些问题.
定制开发的难度提升,资料较少,目前最好的方式是翻官方文档.
依赖较多,出现冲突不好解决,例如自动引入了Log4j版本基于JDK9,造成混淆时无法读取jar文件,因为开发环境是基于JDK8的.
SpringBoot提倡的JavaConfig方式并不能完全替代XML,例如事务切面的aop:config标签,目前没有找到合适的JavaConfig替换方法.
优势是流行,官方主推,是JAVA微服务的项目基础,模块化更优秀,可无感添加模块支持,例如:actuator
文章作者 springrain
上次更新 2019-07-11