建立方式:html
一、在File菜单里面选择 New > Project,而后选择Spring Initializr;java
二、使用maven直接构建,添加依赖。web
1
2
3
4
|
pom.xml:Maven构建说明文件。
Chapter1Application.java:一个带有main()方法的类,用于启动应用程序(关键)。
Chapter1ApplicationTests.java:一个空的Junit测试类,它加载了一个使用Spring Boot字典配置功能的Spring应用程序上下文。
application.properties:一个空的properties文件,你能够根据须要添加配置属性。
|
一个 Spring Boot 案例应该包括四个部分(主加载类、逻辑实现类、单元测试类、以及资源配置文件)。spring
优点:数据库
一、json接口的开发不用导包,直接@RestController ;json
二、@Configuration进入过滤,自定义Filter,OrderedCharacterEncodingFilter和HiddenHttpMethodFilter,而且咱们能够自定义Filter;数组
三、自定义Property,代码中经过EL表达式便可获取;浏览器
四、log配置,配置输出的地址和输出级别;springboot
1
2
3
4
|
logging.path=/user/local/log --path为本机的log地址,
logging.level.com.favorites=DEBUG --包路径配置不一样资源的log级别
logging.level.org.springframework.web=INFO
logging.level.org.hibernate=ERROR
|
五、数据库操做:服务器
a,添加jar包;
b,添加配置文件;
c,添加实体类和Dao(UserRepository);
六、Thymeleaf是一款用于渲染XML/XHTML/HTML5内容的模板引擎。相似JSP,Velocity,FreeMaker等
Thymeleaf最大的特色是可以直接在浏览器中打开并正确显示模板页面,而不须要启动整个Web应用。
Thymeleaf从根本上颠覆了必须在服务器中渲染完成再在浏览器显示,经过属性进行模板渲染不会引入任何新的浏览器不能识别的标签,例如JSP
spring-boot-starter: 场景启动器。须要什么后面跟什么,web、email,自动导入jar包。
@SpringBootApplication主配置类,组合注解。main函数首先运行它。
@AutoConfigurationPackage将主配置类所在包的类所有扫描进来。
@Import({AutoConfigurationImportSelector.class})将全部须要导入的组件以全类名的方式导入,给容器导入不少自动配置类。
j2ee总体解决方案和自动配置都在/org/springframework/boot/spring-boot-autoconfigure/2.0.2.RELEASE/spring-boot-autoconfigure-2.0.2.RELEASE.jar!/META-INF/spring-autoconfigure-metadata.properties
application.propertier server.port=8081
application.yml 以数据为中心,不使用标签。键值对,左对齐。空格控制缩进。
普通的值:字符串默认不用加单引号或双引号,
双引号:不会转义字符串里面的特殊字符,自己的意思。\n换行;
单引号:会转义特殊字符,\n.
对象时,在下一行,空格写属性和值得关系。注意缩进,冒号,空格。
数组时,-空格值得写法。行内写法pets: [cat,dog,pig]。
map时,行内写法。maps: {k1: v1,k2: 12}
@Value获取值和@ConfigurationProperties获取值比较
配置文件yml仍是properties他们都能获取到值;
若是说,咱们只是在某个业务逻辑中须要获取一下配置文件中的某项值,使用@Value;
若是说,咱们专门编写了一个javaBean来和配置文件进行映射,咱们就直接使用@ConfigurationProperties;
@PropertySource(value = {"classpath:person.properties"})
@ImportResource:导入Spring的配置文件,让配置文件里面的内容生效;
@ImportResource(locations = {"classpath:beans.xml"})
导入Spring的配置文件让其生效
SpringBoot推荐给容器中添加组件的方式;推荐使用全注解的方式
一、配置类@Configuration------>Spring配置文件
二、使用@Bean给容器中添加组件
1
2
3
4
5
6
7
8
9
|
@Configuration
public
class
MyAppConfig {
//将方法的返回值添加到容器中;容器中这个组件默认的id就是方法名
@Bean
public
HelloService helloService02(){
System.out.println(
"配置类@Bean给容器中添加组件了..."
);
return
new
HelloService();
}
}
|
配置文件占位符:
1
2
3
4
5
6
7
8
|
person.last‐name=张三${random.uuid}
person.age=${random.
int
}
person.birth=
2017
/
12
/
15
person.boss=
false
person.maps.k1=v1
person.maps.k2=
14
person.lists=a,b,c
person.dog.name=$
|
配置文件加载过程:
springboot 启动会扫描如下位置的application.properties或者application.yml文件做为Spring boot的默认配置文
件(高优先级,互补配置。经过命令行修改内部配置。)
–file:./config/
–file:./
–classpath:/config/
–classpath:/
咱们能够经过启用 debug=true属性;来让控制台打印自动配置报告,这样咱们就能够很方便的知道哪些自动配置
类生效;
@GetMapping("{id}")//restful的url
@GetMapping(params = "form")//url?form
public ModelAndView view(@PathVariable("id") Message message) {
return new ModelAndView("messages/view", "message", message);//寻找message目录下的view.html文件。
}