您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“Java Spring的概述和簡(jiǎn)單應(yīng)用”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“Java Spring的概述和簡(jiǎn)單應(yīng)用”吧!
Spring概述
Spring簡(jiǎn)單應(yīng)用
Spring框架地基本使用
項(xiàng)目創(chuàng)建
添加依賴(lài)包
創(chuàng)建Spring配置文件
修改配置文件
修改測(cè)試類(lèi)
運(yùn)行結(jié)果
Spring就是為解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的,做為開(kāi)源中間件,它使用基本的JavaBean來(lái)完成以前只可能有EJB(Java企業(yè)bean)完成的事情。Spring獨(dú)立于各種應(yīng)用服務(wù)器,甚至無(wú)須應(yīng)用服務(wù)器的支持也能提供應(yīng)用服務(wù)器的功能,同時(shí)為JavaEE應(yīng)用程序開(kāi)發(fā)提供繼承的框架,是企業(yè)應(yīng)用開(kāi)發(fā)的“一站式”選擇。Spring的用途不僅限于服務(wù)器的開(kāi)發(fā),任何Java應(yīng)用都可以從Spring中受益。
Spring是一個(gè)開(kāi)源框架,它的功能都是從實(shí)際開(kāi)發(fā)中抽取出來(lái)的。其主要優(yōu)勢(shì)之一是采用分層架構(gòu),整個(gè)框架由7個(gè)定義良好的模塊(組件)構(gòu)成,它們都統(tǒng)一構(gòu)建于核心容器之上。
Spring Core:核心容器提供Spring框架的基本功能,其主要組件BeanFactory是工廠模式的實(shí)現(xiàn)。它通過(guò)控制反轉(zhuǎn)(IOC)機(jī)制,將應(yīng)用程序配置和依賴(lài)性規(guī)范與實(shí)際的程序代碼分離開(kāi)。
Spring Context:想Spring框架提供上下文信息,包括企業(yè)服務(wù)。
Spring DAO:JDBC DAO抽象層提供了有用的一場(chǎng)層次結(jié)構(gòu),用來(lái)管理異常處理和不同數(shù)據(jù)庫(kù)供應(yīng)商拋出的錯(cuò)誤信息。
當(dāng)創(chuàng)建一個(gè)簡(jiǎn)單的Java項(xiàng)目的時(shí)候,在控制臺(tái)要求輸出“Hello world!”,如果要求輸出“Hello Beer!”等等,那么就要不斷地去修改程序源代碼。如果項(xiàng)目龐大,程序中涉及這一輸出地語(yǔ)句不止一處,有很多處,且分散在整個(gè)項(xiàng)目地源碼(往往有成千上萬(wàn))中,如此大動(dòng)干戈地改動(dòng)程序,對(duì)于一個(gè)軟件系統(tǒng)地維護(hù)來(lái)說(shuō)將是災(zāi)難性地。
package org.example; public class TestHello { private String message; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } }
package org.example; public class Test { public static void main( String[] args ) { TestHello testHello=new TestHello(); testHello.setMessage("Hello world!……"); System.out.println(testHello.getMessage()); } }
下面使用Spring解決這一問(wèn)題。使用Spring實(shí)現(xiàn)程序輸出內(nèi)容地靈活改變。
將下面這段依賴(lài)加入到紅色方框里面<dependencies> </dependencies>之間。
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.3.8</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>5.3.8</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.3.8</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>5.2.12.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>5.3.8</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.2</version> </dependency>
加入完成之后,點(diǎn)擊該按鈕,稍等一會(huì)ideal自動(dòng)幫我們下載依賴(lài)包。
打開(kāi)ApplicationContest.xml,對(duì)其進(jìn)行修改:
id:bean的唯一標(biāo)識(shí)符,也就是相當(dāng)于我們學(xué)的對(duì)象名。
class:bean對(duì)象所對(duì)應(yīng)的全限定名:包名+類(lèi)型。
property:相當(dāng)于給對(duì)象中的屬性設(shè)置一個(gè)值。
value:具體的值,基本數(shù)據(jù)類(lèi)型。
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="TestHello" class="org.example.TestHello"> <property name="message"> <value>Hello World!</value> </property> </bean> </beans>
package org.example; import javafx.application.Application; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class App { public static void main( String[] args ) { //獲取ApplicationContext對(duì)象 ApplicationContext application=new ClassPathXmlApplicationContext("ApplicationContext.xml"); //通過(guò)ApplicationContext獲得TestHello對(duì)象 //getBean()方法中的參數(shù)即為配置文件中Bean的id的值 TestHello testHello=(TestHello) application.getBean("TestHello"); System.out.println(testHello.getMessage()); } }
若要程序輸出“hello Beer!”,則只需要修改配置文件中的value值即可
<value>Hello Beer!</value>
這個(gè)例子看不出來(lái)Spring的優(yōu)勢(shì),擔(dān)當(dāng)項(xiàng)目規(guī)模很大,且源代碼中有很多處這樣的輸出語(yǔ)句時(shí),Spring的有事就充分體現(xiàn)出來(lái)了。因?yàn)橛昧薙pring只需修改配置文件一個(gè)地方的value值即可讓所有的輸出都跟著一致變化,而不用逐條煩瑣地修改程序代碼啦!
到此,相信大家對(duì)“Java Spring的概述和簡(jiǎn)單應(yīng)用”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。