springboot項目搭建
springboot是一個依賴於maven的、快速框架搭建工具。以約定優於配置的方式提供了許多時下流行的java後臺框架搭建。使用者可以通過一些約定的配置在極短的時間內完成一類框架的搭建。
比如:RESTful後臺框架搭建。
搭建步驟為:
(1)新建一個maven項目。
(2)配置項目父依賴為springboot,即項目依賴完整繼承spring-boot-starter-parent,這樣就能達到:完整引入springboot資源依賴、插件列表、插件配置等內容(dependencies、developers、contributors、plugin lists、reports lists、plugin executions with matching ids、plugin configuration)
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.0.RELEASE</version> </parent>
(3)配置項目啟動模塊(這個東西指定了項目是web項目,還是java項目,或者別的項目具體選值參照:http://mvnrepository.com/artifact/org.springframework.boot)
此處配置項目為RESTful風格的web項目,配置如下:
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
配置完成的pom.xml例子如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <!-- 項目信息 --> <modelVersion>1.0.0</modelVersion> <groupId>com.chendeming.springboot</groupId> <artifactId>demo1</artifactId> <version>0.0.1-SNAPSHOT</version> <!-- 項目依賴繼承 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.0.RELEASE</version> </parent> <dependencies> <!-- 這裏可以簡單理解為引入了一個外部依賴jar包的配置,更多的maven依賴,可以在這裏以這種方式添加,具體參見百度maven依賴配置,此處不贅述 --> <dependency> <groupId>org.springframework.boot</groupId> <!-- 此啟動器內置tomcat、包含配置spring-webmvc,可完成全棧web開發,風格為RESTful --> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> </project>
(4)寫一個springboot啟動類
@SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
備註說明:
@SpringBootApplication 被 @Configuration、@EnableAutoConfiguration、@ComponentScan 註解所修飾,換言之 Springboot 提供了統一的註解來替代以上三個註解,簡化程序的配置。
@Configuration:註解是一個類級註釋,指示對象是一個bean定義的源。往明白了說,就是用註解代替xml配置。@Configuration 類通過 @bean 註解的公共方法聲明bean。通俗的講 @Configuration 一般與 @Bean 註解配合使用,用@Configuration 註解類等價與 XML 中配置 beans,用 @Bean 註解方法等價於 XML 中配置 bean。
@EnableAutoConfiguration:註解啟用 Spring 應用程序上下文的自動配置,試圖猜測和配置您可能需要的bean。自動配置類通常采用基於你的 classpath 和已經定義的 beans 對象進行應用。
@ComponentScan:註解會自動掃描指定包下的全部標有 @Component註解 的類,並註冊成bean,當然包括 @Component 下的子註解@Service、@Repository、@Controller。
換句話說,註解了@SpringBootApplication,會提供如下功能:
(1)@Configuration:在Application類裏加這樣一段代碼,
@Bean public UserDAO getUserDAO(){ return new UserDAO(); }
就相當於完成了這樣一個spring的配置文件:
<beans>
<bean id = "userDAO" class="com.user.UserDAO"></bean>
</beans>
(2)EnableAutoConfiguration:Spring Boot會自動根據你jar包的依賴來自動配置項目。
例如當你項目下面有HSQLDB的依賴時,Spring Boot會創建默認的內存數據庫的數據源DataSource,如果你自己創建了DataSource,Spring Boot就不會創建默認的DataSource。
(3)註解配置為:@SpringBootApplication(scanBasePackages = "com.chendeming")
則springboot啟動會掃描com.chendeming下所有類,完成bean加載,完成依賴管理
擴展學習
springboot配置入門
http://www.cnblogs.com/larryzeal/p/5765945.html
springboot啟動器
http://blog.csdn.net/chszs/article/details/50610474
springboot項目搭建