spring boot (2018-10-27)
Spring boot
一、Group Id和 Artifact Id
Group Id和 Artifact Id被統稱為“座標”是為了保證專案唯一性而提出的
Group Id:
Group : n. 群;組;團體;集團
Group Id : 專案組織唯一的識別符號
Group Id一般分為多個段,第一段為域,第二段為公司名稱。域又分為org、com、cn等等許多,其中org為非營利組織,com為商業組織。
Artifact Id:
Artifact : n. 人工製品;典型產物;【醫】非源自腦中的電波,偽差,假象,人為現象
Artifact Id : 就是專案的唯一的識別符號,專案名
舉個apache公司的tomcat專案例子:這個專案的groupId是org.apache,它的域是org(因為tomcat是非營利專案),公司名稱是apache,artigactId是tomcat。
二、依賴
pom.xml
新增依賴
三、Application(引導類)
n. (名詞)
- 運用,應用,適用,施用,生效
- 申請,請求
- 用功,專心,勤奮,努力,勤勉
- 申請書,申請證
@SpringBootApplication其實就是以下三個註解的總和(還包括其他不足道爾的註解)
@Configuration: 用於定義一個配置類
@EnableAutoConfiguration(啟用Spring應用程式上下文的自動配置) :Spring Boot會自動根據你jar包的依賴來自動配置專案。
@ComponentScan(包掃描): 告訴Spring 哪個packages 的用註解標識的類 會被spring自動掃描並且裝入bean容器。
四、修改tomcat啟動埠
在src/main/resources下建立application.properties ( 檔名固定)
通過@EnableAutoConfiguration來修改埠配置
輸入:
server.port=8088 |
重新執行引導類。位址列輸入
五、熱部署:
在pom.xml中加入
六、Environment類(屬性檔案資訊的讀取)
org.springframework.core.env.Environment是當前應用執行環境的公開介面,主要包括應用程式執行環境的兩個關鍵方面:配置檔案(profiles)和屬性。
Environment繼承自介面PropertyResolver,而PropertyResolver提供了屬性訪問的相關方法
在application.properties 檔案中新增屬性:
在控制器裡新增Environment訪問資源資訊
注意:Environment有兩個包,一個是org.omg.CORBA.Environment包,另一個是org.springframework.core.env.Environment包,後者才是我們所需要的。
@RestController: Spring4之後新加入的註解,原來返回json需要@ResponseBody和@Controller配合。即@RestController是@ResponseBody和@Controller的組合註解。
七、Spring Boot與ActiveMQ整合
1、使用內嵌服務
pom.xml加入
建立 訊息生產者 QueueController
建立 訊息消費者 Consumer
測試:
http://localhost:8088/send.do?text=aaaaa
2、使用外部服務:
在src/main/resources下的application.properties增加配置, 指定ActiveMQ的地址
spring.activemq.broker-url=tcp://192.168.25.135:61616
執行後,會在activeMQ中看到傳送的queue
傳送Map資訊
(1)修改QueueController.java
@RequestMapping("/sendmap") public void sendMap(){ Map map=new HashMap<>(); map.put("mobile", "13900001111"); map.put("content", "恭喜獲得10元代金券"); jmsMessagingTemplate.convertAndSend("itcast_map",map); } |
(2)修改Consumer.java
@JmsListener(destination="itcast_map") public void readMap(Map map){ System.out.println(map); } |