spring boot的一些配置应用
来源:互联网 发布:企业内部数据共享方案 编辑:程序博客网 时间:2024/06/03 04:55
1、使用前端模板thymeleaf,会要求使用严格的html标签
严格的html标签会很麻烦,会大大降低前端开发效率,下面的步骤可以去除严格的html标签限制。
配置文件application.xml中增加:
spring.thymeleaf.mode=LEGACYHTML5
pom文件中增加:
<dependency> <groupId>net.sourceforge.nekohtml</groupId> <artifactId>nekohtml</artifactId> <version>1.9.22</version> </dependency>
2、页面热加载
调整了页面不想重新编译后才能查看效果
配置文件application.xml中增加:
spring.thymeleaf.cache = false
来禁用页面缓存
3、热部署
项目在启动状态,如果每次修改代码有,要重启项目会耗费不少时间。使用spring boot 的热部署功能可以减少每次重启项目耗费的时间。
pom文件中增加:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>
每次修改代码后只需要重新编译一下,项目就会重启,而这种重启会非常快,因为他只重新加载了本工程的class文件,外部文件不再重新加载。
4、配置日志功能
resource文件夹下新建logback-spring.xml,文件内容如下:
<?xml version="1.0" encoding="UTF-8"?><configuration> <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径--> <property name="LOG_PATH" value="d:\\logs" /> <!-- 彩色日志格式 --> <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" /> <!-- 控制台输出 --> <appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender"> <layout class="ch.qos.logback.classic.PatternLayout"> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--> <pattern>%d - %msg%n</pattern> </layout> </appender> <!-- 按照每天生成日志文件 --> <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>ERROR</level> <onMatch>DENY</onMatch> <onMismatch>ACCEPT</onMismatch> </filter> <encoder> <pattern>%msg%n</pattern> </encoder> <!--滚动策略--> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--路径--> <fileNamePattern>${LOG_PATH}/analysis/info.%d.log</fileNamePattern> <!--日志文件保留天数--> <MaxHistory>45</MaxHistory> </rollingPolicy> </appender> <appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>ERROR</level> </filter> <encoder> <pattern>%msg%n</pattern> </encoder> <!--滚动策略--> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--路径--> <fileNamePattern>${LOG_PATH}/analysis/error.%d.log</fileNamePattern> <!--日志文件保留天数--> <MaxHistory>45</MaxHistory> </rollingPolicy> </appender> <root level="info"> <appender-ref ref="consoleLog" /> <appender-ref ref="fileInfoLog" /> <appender-ref ref="fileErrorLog" /> </root></configuration>
spring boot 项目中已经集成了slf4j日志组件,所以可以直接调用。
调用方法:
//实例化Logger logger = LoggerFactory.getLogger(类名<T>.class);//记录日志logger.info("test");logger.error("test");logger.debug("test");
5、静态资源路径
如果使用thymeleaf前端模板,所有的静态资源都存放在static文件夹下。
如下图所示:
资源路径只需要从static下开始写:
/img/404.jpg
程序默认会从static文件夹下开始找。
6、项目名称及端口号配置
配置文件application.xml下增加:
server.context-path=/demo
server.error.path=/error
server.port=8787
server.session-timeout=30
如果不配置server.context-path,那么访问根路径就是ip+端口号
配置了server.context-path,静态资源访问路径也需要加上该前缀,即:
/demo/img/404.jpg
server.error.path=/error即配置出错访问页面。可以自己定义一个error.html页面放在template文件夹下。
不自己定义就会使用默认的页面。
server.port=8787定义端口号为8787
server.session-timeout=30定义session超时时间为30分钟
7、war包部署到tomcat中
spring boot 集成tomcat,默认是jar包。直接命令行可以运行。不需要再去配置tomcat环境。不过需要java 8版本支持。
如果需要war包部署到tomcat中,需要对pom文件进行更改:
<groupId>com.demo</groupId> <artifactId>demo</artifactId> <version>1.0</version><packaging>war</packaging> <!--war包使用--> <!--<dependency>--> <!--<groupId>javax.servlet</groupId>--> <!--<artifactId>javax.servlet-api</artifactId>--> <!--<version>3.1.0</version>--> <!--<scope>provided</scope>--> <!--</dependency>--> <!--war包使用--> <!--war包使用--> <!--<dependency>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-starter-tomcat</artifactId>--> <!--<scope>provided</scope>--> <!--</dependency>--> <!--war包使用--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!--war包使用--> <!--<exclusions>--> <!--<exclusion>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-starter-tomcat</artifactId>--> <!--</exclusion>--> <!--</exclusions>--> <!--war包使用--> </dependency> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <jvmArguments>-Dfile.encoding=UTF-8</jvmArguments> </configuration> </plugin> <!--war包使用--> <!--<plugin>--> <!--<groupId>org.apache.maven.plugins</groupId>--> <!--<artifactId>maven-war-plugin</artifactId>--> <!--<configuration>--> <!--<warName>demo</warName>--> <!--</configuration>--> <!--</plugin>--> </plugins> </build>
启动类做修改:
public class DemoApplication extends SpringBootServletInitializer{ public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(DemoApplication.class); }}
暂时想到这么多,有再增加。
- spring boot的一些配置应用
- spring boot的一些配置二
- Spring Boot 一些常用的pom配置
- Spring Boot配置的第一个应用
- Spring Boot应用的后台运行配置
- Spring Boot应用的后台运行配置
- Spring Boot应用的后台运行配置
- Spring Boot应用的后台运行配置
- 关于Spring Boot 的一些简单理解和应用
- SpringBoot学习笔记(2) Spring Boot的一些配置
- SpringBoot学习笔记(2) Spring Boot的一些配置
- 配置spring-boot-actuator时候遇到的一些小问题
- SpringBoot学习笔记(2) Spring Boot的一些配置
- Spring Boot配置的第一个应用(如何启动)
- 配置一个Spring Boot应用的过程详解
- Spring Boot应用基本配置说明
- Spring Boot探路者之应用配置
- Spring Boot 常用应用属性配置列表
- python爬取豆瓣电影top250
- java中this的作用!
- GalaxyOJ-1003 (好题+STL)
- 文章标题
- TensorFlow学习--自编码器/稀疏自编码器/堆叠自编码器
- spring boot的一些配置应用
- 自定义Annotation及AnnotationDao的设计
- NOIP模拟 road【tarjan】
- Mysql之查询
- 【网络流算法模板】最大流:dinic模板
- PAT甲级 1035. Password (20)
- 刷紫书第六章例题
- List / Map / Collection 常用的方法
- 锁屏广播