如何在Spring注入时,传入构造需要的参数。 up上面那个构造少写一句return ^_^写构造主要是想强制这个类的使用者提供一些信息。所以不想用事后set的方式。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public class P{ public P(Date d){}}<bean id='d' class="Date"<bean name="printA" class="XXX.YYY.PrinterA "> < <constructor-arg index="0"> > <ref bean="d"/> </constructor-arg> </bean> <bean name="printB" class="XXX.YYY.printB"></bean><bean name="printA" class="XXX.YYY.PrinterA "> <constructor-arg index="0" value="printname">//常量 <constructor-arg index="1"> <ref bean="printB"/> //引用其他的bean </constructor-arg> </bean> 谢谢2005拿你的例子对应我的例子来说,就是:<bean id='printerno' class="String"><bean name="printA" class="XXX.YYY.PrinterA"> <constructor-arg index="0"> > <ref bean="'printerno' "/> </constructor-arg></bean>那我怎么给printA赋值?或者这个赋值不归Spring管(老实说,我也觉的Spring不该管这个)。那么谁管呢? 2007 你好: 常量没用。 如果用引用,Spring只是指定引用的实例是哪个而已。 怎么赋值呢? 现在即便我把print实例化需要的所有参数做成一个VO对象。 不同的打印机,需要的VO不同。 那么通过Spring也只能确定:实例化哪个打印机要用哪个VO。 但是什么时候给VO赋值呢?顺便问一下,我的发的贴怎么我不能改啊,改错别字都不行~~~ 由于有工时压力,我放弃了。我现在用一个initPrinter的方法来进行一系列的打印机设置。在注入某类型打印机的实例后,调用这个setPrinter。但是我无法强制使用我这个对象的人调用它。这是让我苦恼的。当然,如果他不调用,我会和他说"很错很异常"。对于Spring实现参数构造的问题只能先观望中了。 <bean id='printerno' class="String"> <bean name="printA" class="XXX.YYY.PrinterA"> <constructor-arg index="0"> > <ref bean="'printerno' "/> </constructor-arg> </bean> 所有的BEAN会自动实例化的.不用再NEW了. 实例化出来的printA,里面的printerNo有值么,我要赋值呢~~ 用java代码来将文本框中的代码转换为音频文件 HttpClinet包的问题 jsf验证+消息对话框 S2SH整合出错 jsp怎样处理英文名字中间的点 譬如:玛格丽特·米切尔 为什么1/0不抛出异常 在Oracle的写存储过程,在Java中如何调用这个存储过程 请教一个关于Tomcat的公共库文件的问题。 谁知道怎么让Tomcat起来后重新载入Web.xml吗 想交坐J2EE项目的朋友 Spring Dwr Hibernate 怎么用呢? 数据转码后首字符出现一个框框,其它都能正常显示,是UNICODE到string的转换,发送前都已经trim()过了,先谢各位大哥了?
{
public P(Date d){}
}
<bean id='d' class="Date"
<bean name="printA" class="XXX.YYY.PrinterA ">
< <constructor-arg index="0"> >
<ref bean="d"/>
</constructor-arg>
</bean>
<bean name="printA" class="XXX.YYY.PrinterA ">
<constructor-arg index="0" value="printname">//常量
<constructor-arg index="1">
<ref bean="printB"/> //引用其他的bean
</constructor-arg>
</bean>
拿你的例子对应我的例子来说,就是:
<bean id='printerno' class="String">
<bean name="printA" class="XXX.YYY.PrinterA">
<constructor-arg index="0"> >
<ref bean="'printerno' "/>
</constructor-arg>
</bean>
那我怎么给printA赋值?或者这个赋值不归Spring管(老实说,我也觉的Spring不该管这个)。
那么谁管呢?
常量没用。
如果用引用,Spring只是指定引用的实例是哪个而已。
怎么赋值呢?
现在即便我把print实例化需要的所有参数做成一个VO对象。
不同的打印机,需要的VO不同。
那么通过Spring也只能确定:实例化哪个打印机要用哪个VO。
但是什么时候给VO赋值呢?顺便问一下,我的发的贴怎么我不能改啊,改错别字都不行~~~
对于Spring实现参数构造的问题只能先观望中了。
<bean name="printA" class="XXX.YYY.PrinterA">
<constructor-arg index="0"> >
<ref bean="'printerno' "/>
</constructor-arg>
</bean>
所有的BEAN会自动实例化的.不用再NEW了.