ssm实训报告心得_Java开发学习心得(一):SSM环境搭建
Java開發(fā)學(xué)習(xí)心得(一):SSM環(huán)境搭建
有一點.NET的開發(fā)基礎(chǔ),在學(xué)校學(xué)過基礎(chǔ)語法,對JAVA有點興趣,就簡單學(xué)習(xí)了一下,記錄一下從哪些方面入手的,暫時不打算深入到原理方面,先簡單搭下環(huán)境看看,所以有些地方可能講得不慎準(zhǔn)確。
1 SSM框架
從網(wǎng)上的討論來看,SSM框架似乎正在慢慢被Spring Cloud的取代。
1.1 Spring Framework
Spring是一個開源的Java/Java EE全功能棧(full-stack)的應(yīng)用程序框架,以Apache License 2.0開源許可協(xié)議的形式發(fā)布,也有.NET平臺上的移植版本。該框架基于 Expert One-on-One Java EE Design and Development(ISBN 0-7645-4385-7)一書中的代碼,最初由Rod Johnson和Juergen Hoeller等開發(fā)。
Spring Framework提供了一個簡易的開發(fā)方式,這種開發(fā)方式,將避免那些可能致使底層代碼變得繁雜混亂的大量的屬性文件和幫助類。 簡單來說,Spring是一個輕量級的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。 如果學(xué)習(xí)JAVA Spring,這兩個東西應(yīng)該是繞不開的,但是暫時理解不深刻,后面準(zhǔn)備深入到代碼實現(xiàn)層面,與.NET進行一些比較。
控制反轉(zhuǎn) IoC(Inversion of Control)
在IoC出現(xiàn)以前,組件之間的協(xié)調(diào)關(guān)系是由程序內(nèi)部代碼來控制的,或者說,以前我們使用New關(guān)鍵字來實現(xiàn)兩組間之間的依賴關(guān)系的。 這種方式就造成了組件之間的互相耦合。IoC(控制反轉(zhuǎn))就是來解決這個問題的,它將實現(xiàn)組件間的關(guān)系從程序內(nèi)部提到外部容器來管理。 也就是說,由容器在運行期將組件間的某種依賴關(guān)系動態(tài)的注入組件中。
依賴注入(Dependency Injection):這就是DI,字面上理解,依賴注入就是將服務(wù)注入到使用它的地方。對象只提供普通的方法讓容器去決定依賴關(guān)系,容器全權(quán)負責(zé)組件的裝配,它會把符合依賴關(guān)系的對象通過屬性(JavaBean中的setter)或者是構(gòu)造子傳遞給需要的對象。
相對于IoC而言,依賴注入(DI)更加準(zhǔn)確地描述了IoC的設(shè)計理念。所謂依賴注入,即組件之間的依賴關(guān)系由容器在應(yīng)用系統(tǒng)運行期來決定,也就是由容器動態(tài)地將某種依賴關(guān)系的目標(biāo)對象實例注入到應(yīng)用系統(tǒng)中的各個關(guān)聯(lián)的組件之中。
Spring核心思想,IoC與DI詳解面向切面編程 AOP(aspect-oriented programming)
POP面向過程程序設(shè)計
OOP面向?qū)ο蟮某绦蛟O(shè)計
微服務(wù)
關(guān)于 Spring AOP (AspectJ) 你該知曉的一切1.2 Spring MVC
Spring MVC屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在Spring Web Flow里面。Spring MVC 分離了控制器、模型對象、分派器以及處理程序?qū)ο蟮慕巧?#xff0c;這種分離讓它們更容易進行定制。
1.2.1 spring boot
Spring Boot就是Spring,它做了那些沒有它你也會去做的Spring Bean配置。它使用“習(xí)慣優(yōu)于配置”(項目中存在大量的配置,此外還內(nèi)置了一個習(xí)慣性的配置,讓你無需手動進行配置)的理念讓你的項目快速運行起來。使用Spring Boot很容易創(chuàng)建一個獨立運行(運行jar,內(nèi)嵌Servlet容器)、準(zhǔn)生產(chǎn)級別的基于Spring框架的項目,使用Spring Boot你可以不用或者只需要很少的Spring配置。
正常的Spring MVC構(gòu)建需要
- 一個項目結(jié)構(gòu),其中有一個包含必要依賴的Maven或者Gradle構(gòu)建文件,最起碼要有Spring MVC和Servlet API這些依賴。
- 一個web.xml文件(或者一個WebApplicationInitializer實現(xiàn)),其中聲明了Spring的DispatcherServlet。
- 一個啟動了Spring MVC的Spring配置
- 一控制器類,以“hello World”相應(yīng)HTTP請求。
- 一個用于部署應(yīng)用程序的Web應(yīng)用服務(wù)器,比如Tomcat。
spring boot 特點
- 自動配置:針對很多Spring應(yīng)用程序常見的應(yīng)用功能,Spring Boot能自動提供相關(guān)配置
- 起步依賴:告訴Spring Boot需要什么功能,它就能引入需要的庫。
- 命令行界面:這是Spring Boot的可選特性,借此你只需寫代碼就能完成完整的應(yīng)用程序,無需傳統(tǒng)項目構(gòu)建。
- Actuator:讓你能夠深入運行中的Spring Boot應(yīng)用程序,一套究竟。
使用Spring Boot的方法之一:Spring Initializr
- 通過Web構(gòu)建 http://start.spring.io/
- IDEA
- 目前IDEA只支持Java8的JDK
2.Apache Maven,是一個軟件(特別是Java軟件)項目管理及自動構(gòu)建工具,由Apache軟件基金會所提供。基于項目對象模型(Project Object Model,POM)概念,Maven利用一個中央信息片斷能管理一個項目的構(gòu)建、報告和文檔等步驟(生命周期)。
構(gòu)建啟動的三種方式
2. 運行mvn spring-boot:run命令,但是此種方法要求你在本地環(huán)境中必須安裝Maven 使用命令行有兩種方式,一種是直接找到Maven項目視圖中的spring boot啟動命令直接運行
另一種是直接輸入命令
3. 使用mvn package命令進行打包,生成一個可以直接運行的 JAR 文件,路徑是項目文件中的target目錄,使用“java -jar”命令就可以直接運行。
不管使用哪種方法都可以啟動項目,然后訪問http://localhost:8080就可以打開網(wǎng)站看到控制器里面的內(nèi)容了
應(yīng)用入口
package com.example.demo;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;@RestController @SpringBootApplication public class DemoApplication {@RequestMapping("/")public String index(){return "Hello Spring Boot";}public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);} }對main函數(shù)所在的類進行修改,時期能接收Http請求并返回內(nèi)容。
- main()方法啟動了一個HTTP服務(wù)器程序,這個程序默認(rèn)監(jiān)聽8080端口,并將HTTP請求轉(zhuǎn)發(fā)給我們的應(yīng)用來處理
- @Controller標(biāo)注表示Application類是一個處理HTTP請求的控制器,該類中所有被@RequestMapping標(biāo)注的方法都會用來處理對應(yīng)URL的請求,@ResponseBody標(biāo)注告訴Spring MVC直接將字符串作為Web響應(yīng)(Reponse Body)返回,如果@ResponseBody標(biāo)注的方法返回一個對象,則會自動將該對象轉(zhuǎn)換為JSON字符串返回
- index()方法上包含@GetMapping("/")標(biāo)注,意味著在瀏覽器中訪問http://localhost:8080/(不考慮協(xié)議、host和port信息后的路徑為"/")后瀏覽器發(fā)送的請求會交給該方法進行處理
- index()方法直接返回一個字符串,那么相當(dāng)于直接將字符串"Hello World"作為HTTP請求的響應(yīng)返回給瀏覽器,于是我們在瀏覽器中可以看到相應(yīng)的返回值
- 一個啟動了Spring MVC的Spring配置
- 一控制器類,以“hello World”相應(yīng)HTTP請求。
- 一個用于部署應(yīng)用程序的Web應(yīng)用服務(wù)器,比如Tomcat。
總結(jié)
以上是生活随笔為你收集整理的ssm实训报告心得_Java开发学习心得(一):SSM环境搭建的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux磁盘编号
- 下一篇: 用java编写日历添加窗口一角_Java