知识大全 自然的访问spring容器中的bean
Posted 变量
篇首语:不亏待每一份热情,不讨好任何的冷漠。一旦攒够了失望,就离开。从此再也不见,友情如此,爱情亦如此。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 自然的访问spring容器中的bean相关的知识,希望对你有一定的参考价值。
Spring依赖其IOC特征 轻松的管理著一堆非常有价值的bean 这些bean在spring容器中的依赖关系都已注入好 所以相互调用非常方便但既然是有价值的bean 我们就想在Java代码的各处都能调用 实际中的确有这样的场景 比如
Struts的action要用其中的service;
充血领域模型的Hibernate实体会需要dao
要调用这些bean 现在也确实有很多做法
以下代码描述的方式 被称为bad smell 是最不自然的方式 不被提倡;
JDBCDao jdbcDao = (JdbcDao)springContext getBean( jdbcDao );
自然的调用方式是 你调用的bean 也是注入的
struts 是通过一个spring plugin来做到的;
hibernate就没那么简单了 要用到annotation声明 要什么ASPectJ织入 概念复杂 麻烦之极;
我有一个简单的做法 至少对单件的bean很可行(一般我们需要的bean也就是单件的) 思路很简单 依靠spring的注入机制 把容器内的bean注入为静态变量 而静态变量天然就是各处可用的 以下是代码
Java:
public class JdbcDao //静态变量 private static JdbcDao instance; //静态方法 获取单件对象 public static JdbcDao get() return instance; //对象方法 注入到静态变量 public void setInstance(JdbcDao _inst) instance = _inst; public List query(String sql)
spring配置 将自身注入
<bean id= jdbcDao class= net jacker dao JdbcDao > <property name= instance > <ref bean= jdbcDao /> </property> </bean>
这样 只要spring容器启动 构造好bean后 就会自行将其注入到静态变量 然后在各处的调用就很简单了
public class UserAction JdbcDao jdbcDao = JdbcDao get(); public String execute() jdbcDao query();
注 网上有一些思路也是从静态变量入手的 但做法有所不同 有的需要依赖Web容器 就不多做介绍了
cha138/Article/program/Java/ky/201311/28313相关参考
Spring容器对Bean组件的管理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一Bean对
package spring;import javaioIOException;import URL;import javautilArrayList;impo
SPRING容器外访问SPRING 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在JSP或者S
packagewebaction; importjavautilArrayList; importjavautilList; importjavaxservletHttpServlet;
知识大全 spring中的jdbc访问类JdbcTemplate使用
spring中的jdbc访问类JdbcTemplate使用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一
Spring创建Bean的过程 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! beans包提供了
详解Spring中bean的scope 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 如何使用s
Spring获取Bean的几种方式 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 方法一在初始化
Spring中bean的基本xml配置 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在spri
知识大全 Spring强制向servlet中注入bean的方法
Spring强制向servlet中注入bean的方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!