springboot配置

1、@SpringBootApplication 包含哪些主要注解?
① @Configuration :可以和@Bean一起创建一个简单的spring配置类(java),用来代替相应的xml配置文件


@Configuration  
public class Conf {  
 @Bean  
 public Car car() {  
      Car car = new Car();  
      car.setWheel(wheel());  
        return car;  
}  
 @Bean   
 public Wheel wheel() {  
return new Wheel();  
  }  



@Configuration 的注解类标识这个类可以使用spring ioc 容器作为bean定义的来源。
@Bean注解的方法将返回一个对象,注册在spring应用程序上下文中的bean


②@EnableAutoConfiguration :能够自动配置spring的上下文
③@ComponentScan : 会自动扫描指定包下标有 @Component的类,注册成bean,当然包括
@ComponentScan下的子注解 @Service @ Repository @Controller


2、application.properties(yml)可以放置在jar包内和jar包外的哪些目录?
  jar包外:resources/config 和 resources
 jar包内:config包内和Classpath根目录。WEB-INF/classes ,WEB-INF/classes 也就是classpath,资源目录,客 户端不能访问。
按照优先级排序为resources/config,resources,Classpath/config,Classpath。resource会覆盖
classpath中相同的属性。
如果相同优先级,application.properties 和application.yml,则application.yml会覆盖
application.properties里的属性


3、Profile 多环境配置
不同的运行环境,往往需要不同的配置
在Spring Boot中多环境配置文件名需要满足application-{profile}.properties的格式,其中{profile}对应你的环境标识,比如:
application-dev.properties:开发环境
application-prod.properties:生产环境
只需要在application.properties中使用spring.profiles.active属性来设置,值对应上面提到的{profile},这里就是指dev、prod这2个。
当然你也可以用命令行启动的时候带上参数:
java -jar xxx.jar --spring.profiles.active=dev
我给不同的环境添加不同的端口属性server.port,然后根据指定不同的spring.profiles.active来切换使用。


4、自定义属性
application.properties 可以把一些常量配置在这里
比如:com.dd = "www"
使用:
通过@Value(value="{config.name}")就可以绑定到你想要的属性上面
比如:
@Value=(value="{com.dd}")
private String dd;
属性如果太多,可以绑定对象,使用注解@ConfigurationProperties(prefix="com.wjk")来指明
例如:wjk.java
@ConfigurationProperties(prefix="com.wjk")
public class wjk{
private String name;
private String no;
//getter和setter省略
}
然后,还需要在springboot入口类加上@EnableConfigurationProperties 并指明加载哪个bean


@SpringBootApplication
@EnableConfigurationProperties({wjk.class})
public class Chapter2Application {


    public static void main(String[] args) {
        SpringApplication.run(Chapter2Application.class, args);
    }
}
最后可以直接引用


@RestController
public class UserController {
    @Autowired
    wjk wjk;


    @RequestMapping("/")
    public String hexo(){
        return wjk.getName()+wjk.getNo();
    }
}


导入
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值