Spring Boot学习笔记(一)——spring boot项目搭建及配置文件初探

版权声明:本文为博主原创文章,如需转载请注明出处,谢谢。 https://blog.csdn.net/zhouxingxingzxy/article/details/85912529

简介

L 1.Hello World!

一、初始化项目

二、添加基本的配置

三、简单controller

四、spring boot开发过程中的热加载

L 2. Spring Boot项目中的配置文件

一、两种常用的配置文件

1. 文件格式

2. 语法特点

二、常用的配置项


简介

Spring Boot是当前十分流行的用于开发微服务的Java框架。其设计目的是用来简化Spring应用的初始搭建以及开发过程。Spring Boot使用了特定的方式(约定大于配置的理念)进行配置,从而使开发人员不再需要定义样板化的配置。基于Spring Boot开发服务时,只需要几个简单的配置就可以搭建起来一个Web项目。

Spring Boot进行开发优点在于:简单、快速、方便地搭建项目;对于主流开发框架可以做到无配置集成,提高开发效率。

 

L 1.Hello World!

Spring Boot因其简单与快速构建项目的特点,构建一个简单的只需要简单的几步,就可以搭建一个可用的web工程。

初始化项目主要有两种方式:在IDE中新建Spring Boot工程,或者是通过Spring initializer快速创建一个基础的spring boot工程。下面将介绍使用spring initializer创建一个基础spring boot工程的步骤。

一、初始化项目

Spring Initializer页面选择好依赖管理工具、语言以及spring boot的版本;输入工程的group以及artifact以及依赖的jar包,然后点击Generate Project即可生成一个基本的spring boot项目的压缩包。

解压后,使用eclipseImport -> Existing Maven Projects -> Next ->选择解压后的文件夹-> Finsh,即完成把spring boot项目导入。

二、添加基本的配置

我们只需要在application.properties中配置一下服务的端口号及context path即可。

server.port=8088
server.servlet.contextPath=/springbootdemo

三、简单controller

spring boot项目中的controller跟通常spring项目的controller没任何区别;@RestController注解功能spring 4之前的ControllerResponseBody的组合,该注解表示controller内的接口直接返回数据。

1.	@RestController  
2.	@RequestMapping (value="/demo")  
3.	public class HelloWordController {  
4.	  
5.	    @RequestMapping("/world")  
6.	    public String hello(){  
7.	        return "Hello spring boot.";  
8.	    }  
9.	}  

写好controller方法后,启动应用,输入访问urllocalhost:8088/springbootdemo/demo/world,结果如下图:

四、spring boot开发过程中的热加载

Spring Boot支持开发过程中修改代码或者配置后自动重新加载工程的功能,该功能依赖spring-boot-devtools 包,同时还需打开IDE自动编译build automatically)功能。

pom文件中引入spring-boot-devtools依赖:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
</dependency>

同时在build中添加configuration

添加以上pom配置后,当修改项目中的文件并保存后将自动触发项目的重新启动过程,实现程序的热加载的功能,优化开发者开发调试体验。

L 2. Spring Boot项目中的配置文件

一、两种常用的配置文件

Spring Boot项目可以做到开箱即用(约定大于配置)。不过为了满足一些个性化的需求,还是需要手动加入一些配置项的。spring boot支持两种格式的配置文件:application.propertiesapplication.yml

1. 文件格式

两种配置文件的格式形如下:

application.properties文件格式示意:

1.	# GENERAL CONFIG START #  
2.	## SERVER  
3.	server.port=8088  
4.	server.servlet.contextPath=/springbootdemo  
5.	server.tomcat.uri-encoding=UTF-8  
6.	  
7.	# session time out ,单位为秒,默认30分钟  
8.	server.session.timeout=600  
9.	#tomcat最大线程数  
10.	server.tomcat.max-threads=200  
11.	#日志开关  
12.	server.tomcat.access-log-enabled=true  
13.	#日志格式  
14.	server.tomcat.access-log-pattern=%h %l %u %t "%r" %s %b %D  
15.	#日志输出目录,这里是设置为当前目录下  
16.	server.tomcat.basedir=./  
17.	  
18.	## SPRING  
19.	spring.http.encoding.charset=UTF-8  
20.	spring.http.encoding.enabled=true  
21.	spring.http.encoding.force=true  
22.	  
23.	# GENERAL CONFIG END #  

application.yml文件格式示意:

1.	# GENERAL CONFIG START #  
2.	## SERVER  
3.	server:   
4.	  port: 8088  
5.	  servlet:   
6.	    contextPath: /springbootdemo  
7.	  tomcat:   
8.	    uri-encoding: UTF-8  
9.	    max-threads: 200  
10.	    access-log-enabled: true  
11.	    access-log-pattern: %h %l %u %t "%r" %s %b %D  
12.	    basedir: ./  
13.	  
14.	## SPRING  
15.	spring:   
16.	  http:   
17.	    encoding:   
18.	      charset: UTF-8  
19.	      enabled: true  
20.	      force: true  
21.	  
22.	# GENERAL CONFIG END # 

2. 语法特点

正如上面两段代码所示,这两类配置文件主要是语法结构上有一定区别。其中yml格式的配置文件对多语言的适配性更好一些(可以被多种语言识别)。此外yml在配置格式上有严格的要求,每个配置项的“:”之后必须有一个空格,然后再跟上具体的配置值。

1application.properties文件语法

properties文件语法格式主要以“=”设置的键值对,其键值对设置格式有如下关键要求:

    1) “=”两侧不可用空格

    2) key设置一般用大写字母

   3) 一个键值对设置之后不可有分好

2yaml语法

yaml语法设置的配置项的可读性相较properties更强一些,更加友好。其主要语法要求如下:

    1) 大小写敏感

    2) 使用缩进表示层级关系

    3) 只可用空格表示缩进,不可用tab

    4) 缩进的空格数目可以任意,只要保证同级的配置左对齐即可

    5) 每个配置项的“:”之后必须有一个空格

使用yaml语法的配置文件,一定要注意空格的使用,一不小心就会出现配置无法解析的问题

开发过程中,对于一些中文配置会出现中文配置值在使用时出现乱码的情况,这种情况下需要将配置文件的文件格式设置为utf-8的格式,重新运行程序即可。目前智学主要使用的配置文件仍是.properties格式文件,所以以下的文章所使用的配置文件均为application.properties

二、常用的配置项

Spring Boot构建的web应用一般常用的配置有服务端口号(spring boot默认端口为8080)、根目录、访问url编码格式、http请求及返回的编码格式等。

以上常用配置项为:

1.	# GENERAL CONFIG START #  
2.	## SERVER  
3.	server.port=8088 // 修改服务端口为8088  
4.	server.servlet.contextPath=/springbootdemo // 设置服务根目录  
5.	server.tomcat.uri-encoding=UTF-8 // 设置tomcat URI编码方式  
6.	  
7.	## SPRING  
8.	spring.http.encoding.charset=UTF-8   
9.	spring.http.encoding.enabled=true  
10.	spring.http.encoding.force=true  
11.	  
12.	# GENERAL CONFIG END #  

 除了上面的基本配置之外,还可以使用其他参数设设置服务最佳的运行参数。spring boot中内嵌的tomcat可以通过一些配置设置tomcat最大响应线程数,用户会话保持时间,accesslog日志相关设置等。

1.	# session time out ,单位为秒,默认30分钟  
2.	server.session.timeout=600  
3.	#tomcat最大线程数  
4.	server.tomcat.max-threads=200  
5.	#日志开关  
6.	server.tomcat.access-log-enabled=true  
7.	#日志格式  
8.	server.tomcat.access-log-pattern=%h %l %u %t "%r" %s %b %D  
9.	#日志输出目录,这里是设置为当前目录下  
10.	server.tomcat.basedir=./

猜你喜欢

转载自blog.csdn.net/zhouxingxingzxy/article/details/85912529