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

SpringBoot学习笔记(三) 常用注解及开发工具

2016-12-27 17:15 169 查看
之前完成的HelloWorld项目中,简单的说明了一部分注解的使用方式。这里对各个注解做一个详细的介绍。

@EnableAutoConfiguration:

根据项目所使用的依赖自动进行配置。同时使用这个注解时,会默认在项目启动时扫描当前包及其子包下。同时也可以在@CompentScan注解中配置baskPackage属性来完成设置。如果自动完成的配置中包含了我们不需要的部分,则可以使用注解中的exclude属性来剔除。

@CompentScan:

配置自动扫描,如果不配置任何属性则扫描当前包及其子包。

@Configuration:

此注解标注了一个类为配置类。在使用SpringBoot时不需要在一个类中完成所有的配置。可以通过此注解标注并使该类可以被扫描,或者使用@Import注解来进行导入配置。另外,在使用xml来进行配置时可以通过使用@ImportResource来导入。

@SpringBootApplication:

相当于默认配置下的@EnableAutoConfiguration+@CompentScan+@Configuration,因为这三个注解经常同时使用,所以Spring给了一个简单的方式来完成使用。

了解了以上的注解,可以对项目的基本构建方式有个了解。接着说一说Spring提供的极其方便的开发工具。这个开发工具包含了快速重启,缓冲优化,远程使用等功能。并且当使用jar包启动项目时,此开发工具将不可以使用。同时,Maven的设置也可以让这个开发工具根本不会被打包进项目。使用此开发工具的步骤及其简单,只需要引入jar包即可:

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>


现在的很多技术使用了缓冲优化,但是缓存在实际开发中经常造成困扰。可能在完成一个修改时无法立即看到他的影响从而造成了错误的判断。SpringBoot提供的开发工具将默认关闭这些缓存。

开发工具还拥有自动重启的功能,当classpath下的内容有变化,将自动重启应用。当我们使用IDE时,我们的修改将会实时编译,并会立即替换掉classpath下的文件,此时开发工具即可自动重启(在静态资源被修改时不会进行重启)。这种重启的速度远快于普通的重启操作,底层通过使用两个classloader 来实现,没有改变的字节码文件放在一个基本的classloader下,被修改的则放在用于重启的classloader下。当重启进行时,用于重启的classloader将被舍弃并重新创建新的classloader。自动重启功能可以通过在配置属性spring.devtools.restart.enabled为false来完成(Java代码和配置文件均可),也可以通过设置某一文件为开关文件,当此文件被修改时立即进行重启,其他修改则不会影响。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  springboot spring javaee