双射(bijection)

简介: 版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/1724257 双射(bijection)双射(bijection,即 bidirectional injection 的简称)。
版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/1724257

双射(bijection)

双射(bijection,即 bidirectional injection 的简称)。当注出(outject)属性数据时,视图可以通过名称找到它。在 postback 或者组件初始化时,数据被注入(inject)到一个组件中。后者是著名的控制反转(inversion of control,IOC)模式的一种实现,可用于连接委托对象。

传统 IOC 与 双射之间的主要不同点在于,双射使长期作用域中的组件可以引用短期作用域中的组件。可以进行这种连接是因为双射在调用组件时(而不是启动容器时)解析依赖项。双射是有状态组件开发的基础。


@Name("addressManager")
public class AddressManagerBean{
    @DataModel
    private List<Address> addresses;
   
    @DataModelSelection
    @Out(required=false)
    private Address selectedAddress;
   
    @Factory(value="addresses")
    public void loadAddress(){
        //logic to load addresses into this.addresses
    }
   
    public String showDetail(){
        //no work needs to be done to prepare the selected address
        return "/address.jspx";
    }
   
    public String list(){
        return "/addresses.jspx";
    }
}
--------------------------------
@Name("addressManager")
public class AddresManagerBean{
    @In("#{addressService}")
    private AddressService addressService;
    }
 

目录
相关文章
|
7月前
|
SQL 分布式计算 大数据
MAXCOMPUTE和ODPS的区别是什么?
MAXCOMPUTE和ODPS的区别是什么?
271 1
|
2月前
|
安全 Windows
服务器中如何检查端口是否开放
服务器中如何检查端口是否开放
|
9月前
解决 Blocked a frame with origin “xxx“ from accessing a cross-origin frame
解决 Blocked a frame with origin “xxx“ from accessing a cross-origin frame
1236 0
|
5月前
|
弹性计算 人工智能 Cloud Native
新开普副总裁焦征海:云原生计算基础设施助力新开普创新提速
2023年10月31日-11月2日,2023云栖大会在中国杭州·云栖小镇举行,新开普副总裁焦征海在【云服务器 & 计算服务】专场中带来了题为《云原生计算基础设施助力新开普创新提速》的主题演讲,围绕新开普业务上云之路、倚天ECS实例降本实践以及未来业务展望等相关话题展开。
|
6月前
|
Cloud Native 应用服务中间件 Apache
带你读《Apache Tomcat的云原生演进》——Web容器可观测最佳实践(4)
带你读《Apache Tomcat的云原生演进》——Web容器可观测最佳实践(4)
带你读《Apache Tomcat的云原生演进》——Web容器可观测最佳实践(4)
|
7月前
|
JavaScript
JS事件监听两种使用方法
JS事件监听两种使用方法
|
前端开发 小程序
B端C端产品的对比
对程序和产品的要求:与客户群体沟通,了解痛点和业务需求,才能做出真正贴合企业运营的设计;C端:可适应多个场景,需考虑不同用户需求,业务线会较长
218 0
|
容器
《阿里云重磅发布cGPU容器技术》电子版地址
1-阿里云重磅发布cGPU容器技术
187 0
《阿里云重磅发布cGPU容器技术》电子版地址
|
Web App开发 Java 测试技术
反了!居然让我教她自动化测试!
Selenium 大家应该都很熟悉了吧,简单说它就是个基于浏览器的 Web 自动化测试工具,基本上是自动化测试人员首选工具。因为相比其他工具,它有很多的优势:支持多种语言,比如 Python、Java、C或C#、ruby 等都支持;支持多种浏览器, 比如 IE、FireFox、Safari、Opera、Chrome 这些主流浏览器基本都支持;支持多种操作系统,比如 Windows、Mac、Linux 这个款主流操作系统。其实单就上面这些优势就足以证明它的强大了,再加上它还支持分布式部署自动化测试程序,在多台不同的机器上同时执行。
反了!居然让我教她自动化测试!
|
设计模式 Oracle 关系型数据库
【设计模式】软件设计七大原则 ( 合成复用原则 | 代码示例 )
【设计模式】软件设计七大原则 ( 合成复用原则 | 代码示例 )
235 0
【设计模式】软件设计七大原则 ( 合成复用原则 | 代码示例 )