gpt4 book ai didi

java - 生产者方法与命名类

转载 作者:搜寻专家 更新时间:2023-10-31 08:04:08 25 4
gpt4 key购买 nike

我想知道哪种方式更可取:通过完整的 classname.property 访问 backing bean 变量,还是通过生产者方法直接访问属性名称?特别是如果项目变得越来越大,有很多类、服务、门面等。

@Named
public Service {
List<Customer> getCustomers();
}

use:
<h:dataTable value="#{service.customers}" />

public Service {
@Produces
@Named
List<Customer> getCustomers();
}

use:
<h:dataTable value="#{customers}" />

对我来说,第一个优势是,如果我必须更改 jsf,由于全限定名,我总是确切地知道我必须修改哪个类。

这显然是第二种方式的缺点,但相比之下,在有许多服务和类的情况下,这种方式更易读。

专家们怎么说?

最佳答案

IMO,我选择第一条路线。重构也更容易(假设您的 IDE 也将在 JSF 页面中重命名)。虽然,老实说,我希望这是个人口味的东西。

使用 service.property 的另一个优势是能够修改属性并将其反射(reflect)在 UI 上。如果您使用的是生产者,则该生产者在每个范围内只被调用一次,而 setter/getter 一直被调用(另一个性能权衡)。做事的方式有很多种,只要有用,就用那种方式。

关于java - 生产者方法与命名类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9503324/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com