您的位置:首页 > 编程语言 > Java开发

初识Spring-boot

2017-09-01 18:20 357 查看
启动Spring-boot服务

 

@RestController多余的

注:该类必须放在紧邻包的最近一层,因为springboot会从该类开始往下扫描,如果位置放的不对,就会造成很多问题。

    @SpringBootApplication注解等同于使用@Configuration,@EnableAutoConfiguration,@ComponentScan。

    

服务启动时自动运行类(命令行启动器)

实现方式有两种:1、实现CommandLineRunner接口,重写run方法;

   2、实现ApplicationRunner接口,重写run方法;

类上使用@Component注解,使用@Order注解标识执行顺序,

执行顺序为order的value值(从小到大) & ApplicationRunner > CommandLineRunner

 

配置随机数

RandomValuePropertySource在每次启动服务时,都能自动生成随机数,类型有字符串,long型,int型,

例如:

 

 

 

读取配置文件

 

1、读取yml文件值

文件读取规则

classpath下src/main/resources如果只有application.properties则取application.properties

   如果只有application.yml       则取application.yml

   如果同时有这两个文件,    则取application.yml

例如yml文件中的值如下:

 

1、建立类,使用集合或String接yml文件里的值,String和array必须要提供setting方法来获取值,其他类型不需要,

       @Component注解表示将该类纳入Spring容器管理,@ConfigurationProperties注解用来绑定属性。

 

2、使用

        @Autowired

YmlConfig ymlConfig;

 

2、读取properties值:

项目中一般都有几个环境,比如开发,测试,生产,而每个环境的配置文件都是不一样的,那么就会每个环境对应一个配置文件,怎样根据环境去读取对应的配置文件呢?

例如配置文件如下

 

Springboot项目启动时,默认会读取application.properties文件,所以想读取哪个文件,只需要有个相同的属性值是一样的进行关联就可以达到目的了,例如application.properties文件中属性spring.profile.active=pro,那么当前读取的就是application-pro.properties文件

application.properties文件

application-pro.properties文件

 

application.dev

3、多个properties配置文件的读取方式:

比如我想获取config.properties文件里的内容

只需要在类上加上@PropertiesSource注解,指定读取的文件

 

Application事件和监听器

1、实现ApplicationListener接口,使用泛型,传入一个事件类型,ApplicationEvent下有很多类型的事件

 

2、将监听器加入到listener中

支持jsp

1、application.properties 添加经过视图解析器的前后缀

 

2、Pom.xml添加依赖

 

   3、启动类继承SpringBootServletInitializer重写configure方法

  

4、Controller类 (参数可以放入ModelMap中返回前台)

 

        返回到index.jsp

Jsp页面获取返回值

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: