国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

初學Java ssh之Spring 第二篇

2019-11-14 21:09:12
字體:
來源:轉載
供稿:網友
初學java ssh之SPRing 第二篇

  上一篇我們成功搭建好了spring開發(fā)的環(huán)境,接下來一起看看spring有什么神奇的地方吧(本人也是新手,有不太對的地方希望大神給指出便于修改呢,謝謝大家)。

  之前聽說spring是在對xml文件的應用比較多,但是具體怎么用一直都是云里霧里,自己在剛開始的時候學習的時候,因為不是直接新建的web項目,沒有自動生成applicationContext.xml,那會不知道這個配置文件是多么的重要,所以在寫了如下一段代碼之后,運行時,總是報錯,還曾傻傻地以為該文件會自動生成,現在想想真可笑。不過如果用myeclipes中自動導入spring架包的功能的話,會自動生成的。現在提醒大家,對于applicationContext.xml一定要首先確認其的存在,再進行接下來的代碼開發(fā)。(對于這種問題,大神們就不必細看了)

  applicationContext.xml代碼我已在上一篇博客中給出,我存放在src目錄下,在此我給出鏈接:http://m.survivalescaperooms.com/speedwade/p/3968101.html

  接下來是我寫的一個測試的小程序,看看,spring是否已經成功配好,路徑我放在src目錄下com.sep.basic包下,新建一個class類,命名為SpringTest。因為我已建好,所以會提示文件已存在,第一次新建時不會有該提示出現,如圖

  然后其中代碼為

 1 package com.sep.basic; 2  3 import org.springframework.context.ApplicationContext; 4 import org.springframework.context.support.ClassPathXmlApplicationContext; 5  6 public class SpringTest { 7     public static void main(String args[]) 8     { 9         //創(chuàng)建applicationcontext10         ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");11         //輸出spring容器12         System.out.println(ctx);13     }14 }

  在新建好的文件上鼠標右鍵點擊Run As/Java Application后,在控制臺會出現類似如下代碼:

1 org.springframework.context.support.ClassPathXmlApplicationContext@b749757: startup date [Mon Sep 15 17:21:18 CST 2014]; root of context hierarchy

  下面我們來解釋一下,在SpringTest.java中,我們僅僅創(chuàng)建了ApplicationContext的實例,而他正是Spring容器,只有獲得了容器,我們才能成功訪問容器中的Bean。輸出的正是我們創(chuàng)建的ApplicationContext實例。Spring中大部分功能都是通過這個容器來實現的。所以可見它的強大。

  下面我們來新建一個簡單的bean來看看Spring是怎么工作的。

  首先新建一個簡單的java類文件,命名為FirstBeanTest,其路徑為com.sep.basic.service包下。其代碼為:

 1 package com.sep.basic.service; 2  3 public class FirstBeanTest { 4     private String name; 5     //name屬性的setter方法 6     public void setName(String name) { 7         this.name = name; 8     } 9     //測試類的info方法10     public void Info()11     {12         System.out.println("FirstBean's Name is "+name);13     }14 }

  上面給出了一個成員變量與他的set方法。

  然后在applicationContext.xml中添加下面代碼:

1 <!-- 將FirstBeanTest類部署到Spring中的bean中 -->2     <bean id="firstBeanTest" class="com.sep.basic.service.FirstBeanTest">3         <property name="name" value="success"></property>4     </bean>

  接下來再次回到SpringTest文件中增加代碼如下:

1 FirstBeanTest fbt = ctx.getBean("firstBeanTest",FirstBeanTest.class);2 3 fbt.Info();

  好,現在運行,可以看到輸出語句:FirstBean's Name is success

  是不是很神奇?我們并沒有手動去創(chuàng)建FirstBeanTest的實例,為什么還會成功的為其賦值呢?這就是Spring的職責了,我們只需要通過spring容器來就可以獲得實例對象,并且可以賦值,這都是spring的功勞,spring會根據配置信息,獲得對應的實例,并且為其設置對應的屬性值。

  這種現象就是我們經常聽說的控制反轉(IOC)。

  


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 鸡泽县| 仙居县| 庆安县| 城步| 宁城县| 西丰县| 昆明市| 和平县| 阳曲县| 那坡县| 镇宁| 乌兰浩特市| 分宜县| 远安县| 沈丘县| 且末县| 礼泉县| 佛冈县| 阜阳市| 乃东县| 竹溪县| 神池县| 赣榆县| 策勒县| 寿宁县| 焉耆| 堆龙德庆县| 靖西县| 兴业县| 定西市| 昌平区| 宁晋县| 巫山县| 达孜县| 平远县| 东乌珠穆沁旗| 祁阳县| 泾川县| 丹巴县| 出国| 云霄县|