spring-boot
1、推荐使用yaml,因为默认的properties需要写更多的前缀
2、使用java -jar 的方式启动jar包的情况下,通过-spring.profiles.actiive=××来选择不同的配置文件(这里是通过properties来做的)
application.properties文件
#这个文件用来项目区分用哪个环境 spring.profiles.active=pro
application-dev.properties
server.port=8082
application-pro.properties
server.port=8088
这样我们打包的时候就是用application-pro.properties的配置文件,启动后就是用的是8088的端口的
2.1、首先先打jar包,通过idea工具的package
2.2、通过Terminal来用命令打jar包
使用java -jar 来启动jar包
3、springboot提供了一个插件,热更新插件,修改完代码不需要进行重启,springboot会自动加载修改的配置文件
一共有三个步骤
一、添加依赖
当前这个项目需要这个开发包,另外一个项目依赖这个jar包,就不会用到这个插件(如果设置为true的话)
<!--在自己的环境下使用这个jar包,但是其他jar依赖了这个jar的时候,使用了optional关键字--> <!--的jar包将不会生效--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>
二、
三、修改
快捷键:Ctrl+ALT+Shift+/
按了这个快捷键后就会弹出这个界面
4、springboot使用注解的方式在实体
首先添加lombok的依赖(之前我是在idea里添加这个插件)
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency>
实体Demo
package com.example.demo; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; /** * Created by hasee on 2017/6/18. */ //这4个常用 //set和get @Data //构建 @Builder //无参构造方法 @NoArgsConstructor //所有参数的构造方法 @AllArgsConstructor public class Demo { private Long id; private String name; private int age; }
lombok的使用
package com.example.demo; import org.springframework.web.bind.annotation.RestController; /** * Created by hasee on 2017/6/18. */ @RestController public class HelloController { public String helloWorld(){ System.out.println("Hello World 123"); //构造创建 Demo demo = Demo.builder().age(12).name("xue").id(1L).build(); demo.getAge(); demo.setAge(22); return "success"; } }
使用lombok可以方便添加日志
package com.example.demo; import lombok.extern.slf4j.Slf4j; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.RestController; /** * Created by hasee on 2017/6/18. */ @RestController //用了lombok后直接@slf4j就可以了 @Slf4j public class HelloController { // 添加日志打印(传统方法) // Logger logger = LoggerFactory.getLogger(HelloController.class); public String helloWorld() { return "success"; } }
5、传入配置文件的优先级
(1) 通过启动命令args来传入
(2) 配置文件里面写的默认值
(3) 代码层面写的默认值
6、@Validated可以用来验证springboot 加载配置文件字段是否有效,@notNull什么的
7、通过@Value注解的形式:存在一个坑,要获取map的value的话,需要要在value两边加上单引号
8、日志方面的知识:
日志的位置。以及级别
logging.file=./log.txt logging.level.com.example = info
http://www.365yg.com/group/6432269773669302530/