溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Java Spring的概述和簡(jiǎn)單應(yīng)用

發(fā)布時(shí)間:2021-09-13 09:12:51 來(lái)源:億速云 閱讀:148 作者:chen 欄目:開(kāi)發(fā)技術(shù)

本篇內(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概述

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)建于核心容器之上。

Java Spring的概述和簡(jiǎn)單應(yīng)用

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ò)誤信息。

Spring簡(jiǎn)單應(yīng)用

當(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)容地靈活改變。

Spring框架地基本使用

項(xiàng)目創(chuàng)建

Java Spring的概述和簡(jiǎn)單應(yīng)用

Java Spring的概述和簡(jiǎn)單應(yīng)用

Java Spring的概述和簡(jiǎn)單應(yīng)用

Java Spring的概述和簡(jiǎn)單應(yīng)用

添加依賴(lài)包

Java Spring的概述和簡(jiǎn)單應(yīng)用

將下面這段依賴(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)包。

Java Spring的概述和簡(jiǎn)單應(yīng)用

創(chuàng)建Spring配置文件

Java Spring的概述和簡(jiǎn)單應(yīng)用

修改配置文件

打開(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>
修改測(cè)試類(lèi)
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());
    }
}
運(yùn)行結(jié)果

若要程序輸出“hello Beer!”,則只需要修改配置文件中的value值即可

 <value>Hello Beer!</value>

Java Spring的概述和簡(jiǎn)單應(yīng)用

這個(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í)!

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI