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/

springboot的一些配置的更多相关文章

  1. SpringBoot的自动配置

    1.根据条件来装配bean,SpringBoot的自动配置,根据条件进行自动配置. 首先创建一个接口,如下所示: package com.bie.encoding; /** * * @Descript ...

  2. SpringBoot的自动配置原理

    一.入口 上篇注解@SpringBootApplication简单分析,说到了@SpringBootApplication注解的内部结构, 其中@EnableAutoConfiguration利用En ...

  3. SpringBoot使用Nacos配置中心

    本文介绍SpringBoot如何使用阿里巴巴Nacos做配置中心. 1.Nacos简介 Nacos是阿里巴巴集团开源的一个易于使用的平台,专为动态服务发现,配置和服务管理而设计.它可以帮助您轻松构建云 ...

  4. SpringBoot的Web配置

    重写全局配置 如果springboot提供的springmvc配置不符合要求,则可以通过一个配置类(标有@Configuration注解的类)加上@EnableWebMvc注解来实现完全自己控制的mv ...

  5. springboot系列三、springboot 单元测试、配置访问路径、多个配置文件和多环境配置,项目打包发布

    一.单元测试 生成的demo里面包含spring-boot-starter-test :测试模块,包括JUnit.Hamcrest.Mockito,没有的手动加上. <dependency> ...

  6. 尚硅谷springboot学习23-SpringMVC配置

    1. Spring MVC auto-configuration 以下是SpringBoot对SpringMVC的默认配置:(WebMvcAutoConfiguration) Inclusion of ...

  7. SpringBoot 多环境配置

    转载:https://www.cnblogs.com/gdpuzxs/p/7191436.html 在我们的实际开发中,一般都有三套环境,开发环境,测试环境,生产环境,三套环境的数据库连接配置也有所不 ...

  8. springboot 多环境配置yml或properties

    https://www.cnblogs.com/mr-yang-localhost/p/8971327.html   springboot 多环境配置 https://blog.csdn.net/li ...

  9. 01-项目简介Springboot简介入门配置项目准备

    总体课程主要分为4个阶段课程: ------------------------课程介绍------------------------ 01-项目简介Springboot简介入门配置项目准备02-M ...

  10. Springboot 日志管理配置logback-spring.xml

    几种常见的日志 Log4j:是最早的日志框架,是apach旗下的,可以单独使用,也可配合日志框架JCL使用: Log4j2:apach旗下的关于log4j的升级版: Logback:是基于slf4j接 ...

随机推荐

  1. Java Iterator的一般用法

    Iterator(迭代器) 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构.迭代器通常被称为“轻量级”对象,因为创建它的代价小. Java中的I ...

  2. Android 运行 Linux 可执行程序

    /**************************************************************************** * Android 运行 Linux 可执行 ...

  3. Maven项目中的配置

    1 在配置好Maven项目后,新建一个Maven Project.如图 点击next,会进入如下界面: 选择webapp,不选择默认的quickstart,之后会进入以下界面 填好Group ID 和 ...

  4. 杭电OJ1789、南阳OJ236(贪心法)解题报告

    杭电OJ1789http://acm.hdu.edu.cn/showproblem.php?pid=1789 南阳OJ236http://59.69.128.203/JudgeOnline/probl ...

  5. vue组件独享守卫钩子函数参数详解(beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave)

    一样的和前面路由钩子类似的步骤 首先在demo下面的components下面新建一个test.vue组件 test组件代码 <template> <div class="t ...

  6. matplotlib-------标记特殊点

    import matplotlib.pyplot as plt import numpy as np def demo_test(): a=np.array([0.15,0.16,0.14,0.17, ...

  7. kettle的输入输出组件和脚本组件

    一. 输入组件 1.1表输入 从指定的数据库中,通过sql语句来查询数据加载到内存. 允许简易转换:勾选后可以避免不必要的字段的数据类型转换,从而提高性能. 替换sql语句里的变量:勾选后可以通过${ ...

  8. NOSQL之MEMCACHE

    Memcached是一个自由开源的,高性能,分布式内存对象缓存系统.Memcached是一个自由开源的,高性能,分布式内存对象缓存系统.Memcached是一种基于内存的key-value存储,用来存 ...

  9. MQ中间件选型

    如果Java项目,数据量不大,用ActiveMQ,相对简单.支持JMS. 如果对性能.可靠性有一定要求,用RabbitMQ. 如果对性能有很高要求,甚至可牺牲一些可靠性,选kakfa. 在当前大数据时 ...

  10. AQS源码分析

    AQS全程为AbstractQueuedSynchronizer,其定义了一套多线程访问共享资源的同步框架,大部分的同步类的实现都依赖于他,比如ReentrantLock,ReentrantReadW ...