草庐IT

Javabeans

全部标签

Java Bean : Overglorified Associative Arrays?

我不太了解JavaBean的本质。好吧,至少我是如何看待它们用于我们商店的一些代码库中的。我发现了这个问题:JavaBeans:WhatamImissing?那里接受的答案看起来像是程序员倾向于滥用JavaBean(我真的不怀疑),但我看到它经常发生并且故意发生,我想我仍然遗漏了一些东西。我看到的代码如下:publicclassFooBean{privateinta;privateintb;privateintc;publicintgetA(){returna;}publicintsetA(intx){a=x;}//etc...}没有比getter和setter更进一步的结构或控制。是

java - 自动施放 Spring Bean

有没有办法将Springbean自动转换为应用程序上下文XML中定义的类?我想避免将关于bean的类型信息放在2个地方....在xml配置文件中,也可以在代码中作为强制转换。例如,给定这个配置文件我能否调用ApplicationContext.getBean("bean-name")以避免直接将返回类型转换为SimpleStringBean。我知道我也可以调用ApplicationContext.getBean("bean-name",SimpleSpringBean.class)来避免转换本身,但我仍然在2个地方有类型信息。似乎Spring可以获取类信息(ApplicationCon

java - Autowiring Spring 父类(super class)

为什么Spring在Autowiring期间自动选择父类(superclass)类型?例如,如果我有@ComponentpublicclassFoo{}@ComponentpublicclassBarextendsFoo{}有人Autowiring@AutowiredprivateFoofoo;为什么Spring总是选择父类(superclass)型Foo?这不应该是一个“不明确的”映射(并导致Spring抛出错误)吗?从技术上讲,您不是有两个Foo候选人吗?(例如,当从Foo中删除@Component时,Bar会自动选取...) 最佳答案

java - 让 JSF 从 EL 而不是 bean 字段访问 Map<String, ?> 值?

是否有任何正确的方法来覆盖JSF从表达式语言访问beans字段的方式?这个想法是模仿这种行为以访问Map值,其中bean字段将是映射键。换句话说,无论如何都可以使用#{beanContainingNestedMap.keyOfSaidNestedMap}吗?,就像keyOfSaidNestedMap是beanContainingNestedMap的领域?如果没有,我还有什么其他解决方案?示例:Holder.javapublicclassHolder{privateMapobjects=newHashMap();publicvoidadd(Stringkey,Objectvalue){o

java - 将 Java 作为 Web 应用程序运行

好的,我知道Java是一种语言,但有人问我他们是否可以编写一个Web应用程序来与我用ASP.NET编写的Web应用程序交互。我正在实现一个Web服务来提供XML,因此它与语言无关。但是,我不能100%确定走Java路线是否有意义。我有点期待PHP或ASP.NET服务器端代码可能带有一些Ajax/JavaScript或者可能是使用JScript的更重的客户端JavaScript程序。有人可以解释一下webapps附带的基本Java环境吗?我已经推断出以下内容-我是不是找对了树?Java像ASP.NET一样运行时称为JSPJavaBeans有点像.NET框架,即它是一个可重用组件库Java

java - 动态改变 spring bean

如何使用javaspring在运行时动态更改bean的属性?我有一个beanmainView,它应该使用“class1”或“class2”作为属性“class”。该决定应基于属性文件做出,其中属性“withSmartcard”为“Y”或“N”。应用上下文:属性文件:withSmartcard=Y 最佳答案 使用PropertyPlaceHolder来管理您的属性文件..Theservicepropertiesfile并按如下方式更改您的ref属性:在您的属性文件some.where.MyApp.properties中,添加一个名为w

java - 我是不是误解了 Java Bean 方法命名约定,或者这是一种异常情况?

我的代码中发生了神秘事件。这是bean的片段:publicListgetCFrags(){returncFrags;}publicvoidsetCFrags(Listfrags){cFrags=frags;}这是我的View代码(标记文件)中的片段cFrags:[${topic.cFrags}]其中topic是bean类型的对象。这是错误:javax.el.PropertyNotFoundException:Property'cFrags'notfoundontypecom.company.beans.BeanClass还有一件事需要考虑。eclipse生成的setter存在细微差别。

java - 监视对集合的更改

假设您有以下javabean:publicclassMyBean{privateListnames=newArrayList();publicvoidaddName(Stringname){names.add(name);fireNamesPropertyChange(name);}}您通常如何为集合实现属性更改事件?您是否尝试使用index属性,它似乎更适用于数组而不是集合? 最佳答案 (注意:我在意识到自己的一些错误后更新了这篇文章,所以这不是原来的,而是更精致的)为此,我将创建两个新接口(interface),ListList

java - 从 bean factory 访问 injectee 组件

假设我们有一个原型(prototype)范围的bean。publicclassFooConfiguration{@Bean@Scope("prototype")publicFoofoo(@AutowiredBarbar){returnnewFoo(bar);}}我们将这个bean注入(inject)到一个类TheDependent中。@ComponentpublicclassTheDependent{@AutowiredprivateFoofoo;}但是还有一个。@ComponentpublicclassAnotherOne{@AutowiredprivateFoofoo;}在每个@A

java - 有什么方法可以使用自定义 BeanWrapper 实现来加载应用程序上下文

我希望能够通过setter注入(inject)到Scala组件中来使用Spring。不幸的是,Scala的本地setter的命名方式与JavaBeans标准不同,foo_=而不是setFoo。Scala确实为此提供了一些解决方法,强制创建JavaBeanssetter/getter以及原生Scala的注释,但这需要注释我希望注入(inject)的每个组件。更方便的方法是用一个知道如何处理Scala风格的getter和setter的工具覆盖Spring使用的BeanWrapper。似乎没有关于如何做这样的事情或它是否可行的任何文档,也没有任何其他人这样做的在线示例。所以在深入研究源代码之