Spring 在 xml配置檔案或annotation註解中運用Spring EL
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!-- more bean definitions for data access objects go here --> <context:component-scan base-package="com.myapp.core.spel.annotation" /> </beans>
2:相應的類:
Book類:package com.myapp.core.spel.annotation; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component("book") public class Book { @Value("Effective Java") private String name ; @Value("300") private int pages; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getPages() { return pages; } public void setPages(int pages) { this.pages = pages; } }
在book的屬性中 注入了值。 Person類:
package com.myapp.core.spel.annotation; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component("person") public class Person { @Value("#{book}") private Book book; @Value("#{book.name}") private String bookName; public void setBook(Book book) { this.book = book; } public Book getBook(){ return this.book; } public String getBookName(){ return this.bookName; } public void setBookName(String bookName) { this.bookName = bookName; } }
測試類:
package com.myapp.core.spel.annotation;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainTest {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("resource/spel.xml");
Person person = (Person)context.getBean("person");
System.out.println(person.getBookName());
System.out.println(person.getBook().getPages());
}
}
測試結果:
三月 18, 2013 5:25:23 下午 org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org[email protected]11e831: startup date [Mon Mar 18 17:25:23 CST 2013]; root of context hierarchy
三月 18, 2013 5:25:23 下午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [resource/spel.xml]
三月 18, 2013 5:25:24 下午 org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider registerDefaultFilters
INFO: JSR-330 'javax.inject.Named' annotation found and supported for component scanning
三月 18, 2013 5:25:24 下午 org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor <init>
INFO: JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
三月 18, 2013 5:25:24 下午 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in org.s[email protected]543360: defining beans [book,person,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor]; root of factory hierarchy
Effective Java
300
相關推薦
Spring 在 xml配置檔案或annotation註解中運用Spring EL
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins
Spring 在 xml配置檔案 或 annotation 註解中 運用Spring EL
三月 18, 2013 5:25:23 下午 org.springframework.context.support.AbstractApplicationContext prepareRefresh INFO: Refreshing org[email protected]11e831: star
spring xml配置檔案中標籤的含義
例如在spring-config.xml檔案頭看到如下的配置: <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.o
Spring依賴注入(基於XML配置檔案和Annotation的方式完成屬性裝配)
依賴注入的方式(手工裝配): 1.使用bean的構造器注入—基於XML方式 2.使用屬性setter方法注入—基於XML方式 3.使用field注入—基於Annotation方式 注入依賴物件可
Spring 通過XML配置檔案以及通過註解形式來AOP 來實現前置,環繞,異常通知,返回後通知,後通知
本節主要內容: 一、Spring 通過XML配置檔案形式來AOP 來實現前置,環繞,異常通知 1. Spring AOP 前置通知 XML配置使用案例 2. Spring AOP 環繞通知 XML配置使用案例 3. Spring AOP
Spring xml配置檔案標頭
一般格式:此標頭滿足bean注入的格式 一般只有bean注入,用此標頭即可! <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/
spring xml配置檔案bean的解析定義
spring為解析xml建立bean提供了一種非常解藕的方式。 整體架構面向介面程式設計,AbstractApplicationContext的refresh方法被呼叫時,在重新整理BeanFactory的時候會解析配置檔案。框架提供了: 介面 org.springframework.beans.fact
不認識spring xml配置檔案dtd和xsd型別,血與淚的教訓啊
今天在初次使用spring原始碼的時候,在spring4.2中使用了xsd型別的配置檔案,導致一直解析配置檔案出錯: 找不到元素 'beans' 的宣告 後來從原始碼工程的test/sources目錄中copy新的dtd格式,該巴改巴就成功了。真是汗啊(⊙﹏⊙)b 記住了,
Spring原始碼分析3 — spring XML配置檔案的解析流程
1 介紹 建立並初始化spring容器中,關鍵一步就是讀取並解析spring XML配置檔案。這個過程比較複雜,本文將詳細分析整個流程。先看涉及到的關鍵類。 XmlWebApplicationContext:web應用的預設Spring容器 XmlBean
讓Eclipse中spring的xml配置檔案出現屬性和類提示
在spring配置檔案中可以讓配置bean的時候出現提示,這裡需要做一些設定。設定包括安裝springide外掛,spring-beans-version.xsd檔案引入,增加xml編輯提示的字元,預設只有=>:。最後是讓配置檔案可以通過Spring Config Editor的方式開
轉:ssm spring+springmvc+mybatis中的xml配置檔案詳解
這幾天一直在整合SSM框架,雖然網上有很多已經整合好的,但是對於裡面的配置檔案並沒有進行過多的說明,很多人知其然不知其所以然,經過幾天的搜尋和整理,今天總算對其中的XML配置檔案有了一定的瞭解,所以拿出來一起分享一下,希望有不足的地方大家批評指正~~~ 首先 這篇文章暫時只對框架中所要用到的配
SSM:spring+springmvc+mybatis框架中的XML配置檔案功能詳細解釋
SSM:spring+springmvc+mybatis框架中的XML配置檔案功能詳細解釋 這幾天一直在整合SSM框架,雖然網上有很多已經整合好的,但是對於裡面的配置檔案並沒有進行過多的說明,很多人知其然不知其所以然,經過幾天的搜尋和整理,今天總算對其中的XML配置檔案有了一定的瞭解,所以拿
Spring 學習筆記(五)IOC之零註解配置(用註解代替applicationContext.xml配置檔案)
有了這個東西開發方便很多,不用寫xml那些配置嘍。 package org.spring.exampleAOP; import org.springframework.context.annotation.ComponentScan; import org.springframework.co
Spring -12 -宣告式事務及完整的XML配置檔案資訊 -宣告式事務中的相關屬性(tx:advice的標籤)
1.程式設計式事務: 1.1由程式設計師程式設計事務控制程式碼. 1.2OpenSessionInView 就屬於程式設計式事務: session.commit()和rollback() 2.宣告式事務: 2.1事務控制程式碼已經由spring 寫好.程式設計師只需要宣告出哪些方法需
web專案中註解訪問servlet和web.xml配置檔案訪問servlet的利弊
(一)web.xml配置檔案訪問servlet1.找到對應目錄下的web.xml檔案2.(1)開啟並配置servlet的對映路徑,注意servlet-mapping和servlet標籤中的servlet-name的值要相同(2)因為從瀏覽器傳送請求時,是用當前“專案(web_
Eclipse中Spring的xml配置檔案提示類屬性值的配置
在開發Spring專案時,發現在配置xml檔案時,class類的屬性值一直都不提示,這樣很容易導致引用的包名寫錯。因此我通過床上看資料,總結了下面的配置方法。 一、檢視Eclipse的版本號 方法一:檢視自己的安裝包 方法二:開啟Eclipse軟體,點選Help—>About
ssm spring+springmvc+mybatis中的xml配置檔案詳解
這幾天一直在整合SSM框架,雖然網上有很多已經整合好的,但是對於裡面的配置檔案並沒有進行過多的說明,很多人知其然不知其所以然,經過幾天的搜尋和整理,今天總算對其中的XML配置檔案有了一定的瞭解,所以拿出來一起分享一下,希望有不足的地方大家批評指正~~~ 首先 這篇文章暫時只對框架中所要用到的
Spring學習筆記 在XML配置檔案中使用properties檔案的鍵值
property檔案可以很方便的在部署執行階段改變一些特定配置屬性,比如資料庫連線等。然後在程式中根據鍵名使用property檔案中的特定屬性。在Spring中也可以在XML配置檔案中的Bean定義時通過property檔案動態進行屬性值的定義。 使用方法描述 假如入
Spring中applicationContext.xml配置檔案中資料庫資料來源配置
<!-- 標頭檔案,主要注意一下編碼 --> <?xmlversion="1.0"encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN""http://www.springframework
Spring中載入xml配置檔案的常用的幾種方式
專案中一個需求就是所有的功能都是外掛的形式裝入系統,這就需要利用Spring去動態載入某一位置下的配置檔案,就總結了下Spring中載入xml配置檔案的方式, xml是最常見的spring 應用系統配置源。Spring中的幾種容器都支援使用xml裝配bean,包括: X