第二章:SpringBoot基礎知識-3. SpringBoot啓動註解分析

源碼下載:https://u11556602.ctfile.com/fs/11556602-361219278java

                https://download.csdn.net/download/qq_36267875/11089023web

如今爲止已經能夠發如今整個的springboot程序裏面使用了許多的註解,首先把這些註解作一個列表:spring

NO 註解 說明
1 @Controller 進行控制器的配置註解,這個註解所在的類就是控制器類
2 @EnableAutoConfiguration 開啓自動配置處理
3 @RequestMapping("/") 表示訪問的映射路徑,此時的路徑爲"/",訪問地址爲http:localhost:8080/
4 @ResponseBody 在Restful架構之中,該註解表示直接將返回的數據以字符串或json的形式得到
5    
6    

能夠發如今給定的幾個註解之中 @EnableAutoConfiguration爲整個springboot的啓動註解配置,也就是說這個註解應該隨着程序的主類一塊兒進行定義。json

而對於控制器程序類,因爲在項目之中會有許多的控制器,那麼最好將這些類統一保存在一個包中,下面咱們將全部的控制器程序類保存在"cn.mldn.microboot.controller" ,是"cn.mldn.microboot"的子包。springboot

強烈建議(spring官方建議):若是要想進行簡單方便的開發,全部的程序類必定要在啓動類所在包的子包下。架構

1.【microboot-base 模塊】創建一個cn.mldn.microboot.controller.HelloController程序類;app

package cn.mldn.microboot.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {
   @RequestMapping("/")
   @ResponseBody
   public String home() {
        return "www.mldn.cn";
    }
}

2.【microboot-base 模塊】啓動程序主類;spa

package cn.mldn.microboot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;

@EnableAutoConfiguration
@ComponentScan("cn.mldn.microboot") //定義一個掃描路徑
public class SampleController {
    public static void main(String[] args) throws Exception {
        SpringApplication.run(SampleController.class, args);
    }
}

3.【microboot-base 模塊】以上的作法只是傳統程序的開發作法,由於如今爲止畢竟是兩塊程序類,這兩個彼此之間的聯繫,須要有一個鏈接點,而程序配置的「@ComponentScan」 就是負責這個鏈接處理,可是springboot考慮到了此類的配置問題,因此提出了一個更簡化策略,該策略的核心思想:既然程序主類會在全部開發包的父包裏面,那麼能不能簡化點取得配置呢?爲此在實際的開發之中會使用一個特殊的符合註解.net

package cn.mldn.microboot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;

//@EnableAutoConfiguration
//@ComponentScan("cn.mldn.microboot") //定義一個掃描路徑
@SpringBootApplication //啓動springboot程序,然後自帶子包掃描(等同於上面註釋的配置)
public class SampleController {
    public static void main(String[] args) throws Exception {
        SpringApplication.run(SampleController.class, args);
    }
}

理論上"@SpringBootApplication=@EnableAutoConfiguration+@ComponentScan+其餘配置"。正是由於它有這樣的特色,因此之後使用bean實現配置處理的時候將會很是的容易。code

相關文章
相關標籤/搜索