通过写这篇文章,我冒着被.NET和Java社区拒绝的巨大风险。 试图解释Java术语WCF (代表Windows Communication Foundation)是什么。

从WCF到Java的映射并不是很简单。 我缺乏对WFC使用者应该了解的与服务通信类型的了解:请求/响应或异步消息传递。 我很难想象这对于用户来说是完全透明的……除非WCF框架“消除”消息传递的异步性并照顾等待响应消息。 如果最新发生,那么实际上没有异步消息!

像往常一样,使用Java(我真的很想念它与.NET一起使用),存在技术规范,并且这些规范有各种实现。 尽管通常使用这些应用程序进行测试,因此声称可以支持所用规范的明确实现,但从理论上讲,最终选择是在部署期间或在应用程序启动之前完成的。

每当我们谈论服务时,我们都会拥有实际的服务及其消费者。

让我们从消费者开始。 为了发送异步消息,最好针对JMS (Java消息系统规范)编写它们。 JMS的使用者只需要知道目标队列或主题的逻辑名称即可。 对于请求/响应通信,应该针对普通的服务接口编写消费者。 该接口与服务端和传输层中使用的技术无关。 为了在运行时获得接口的显式实现,使用者使用外部可配置的Factory。 该工厂将为Web服务使用JAX-WS ,为RESTful服务使用 JAX-RS ,为远程EJB(企业Java Bean)使用RMI或为进程内服务使用纯对象(PO​​JO)。

你还在吗? 然后,我们转到服务端。 如果服务使用消息,则可以直接使用JMS或将其作为消息驱动Bean(EJB风格)来实现。 最后一个选项为您提供了来自Application Server(类似于IIS)的所有事务性和可伸缩性。 如果服务应该提供响应(包括失败),则黄金法则是让它们实现一个简单的接口,即服务使用者将使用的接口。 然后,通过向接口实现代码中添加注释或通过在Application Server中使用外部配置,您的实现都可以作为Web Service或Session EJB进行访问。 实际上,如今,大多数服务器都能够将会话EJB公开为Web服务。 如果使用代理模式,那么您还将拥有一个干净,完好的接口实现,供进程内使用方使用。

这是一个很冗长的解释。 “ 所有跨层实体都是WCF服务 ”的简短翻译是:

“所有实体均由其接口定义,并针对其他实体的接口编写。 实体的实现是普通的旧Java对象(PO​​JO),可能由EJB代理包装”

翻译自: https://www.javacodegeeks.com/2014/04/attempt-to-map-wcf-to-java-terms.html

尝试将WCF映射到Java术语相关推荐

  1. java wcf_尝试将WCF映射到Java术语

    java wcf 通过写这篇文章,我冒着被.NET和Java社区拒绝的巨大风险. 这是为了说明Windows Communication Foundation的WCF用Java来解释. 从WCF到Ja ...

  2. oracle 代码 字段映射,将ORACLE TIMESTAMP(9)字段映射到java.util.Date

    存在将ORACLE TIMESTAMP(9)字段映射到Java中的java.sql.Timestamp或java.util.Date的问题 ojdbc 11.2.0.1. 0 休眠的注解3.3.1.G ...

  3. Mysql的int和bigint字段类型,映射到Java的Integer和Long类型时,勾选UNSIGNED无符号会导致越界转换。

    使用Mysql查询数据时,自动映射数据类型. 有时候Mysql的int字段,会正确映射到Java的Integer类型,有时候又会映射到Java的Long类型上,最后终于找到原因. 原来是Mysql的i ...

  4. 数据库表的映射与java类映射处理

    数据库表的映射与java类映射处理 1.数据库表与简单java类的映射处理 依据数据库表中的信息设计简单的java类,其实利用了上次课学习java,类间关联以及自身关联和合成设计模式实现.以下通过案例 ...

  5. java术语(PO/POJO/VO/BO/DAO/DTO)

    PO(persistant object) 持久对象 在o/r 映射的时候出现的概念,如果没有o/r映射,就没有这个概念存在了.通常对应数据模型(数据库),本身还有部分业务逻辑的处理.可以看成是与数据 ...

  6. mybatis mapper.xml数据库映射生成java实体,增删改查sql语句

    1.问题描述:使用mybatis生成mapper.xml文件的时候经常遇到数据库表字段很多,写mapper.xml文件时转化成java实体很麻烦,写增删改查的sql时也要做 很多重复的工作.程序员就想 ...

  7. Java for Selenium | Java术语中英文对照

    有些很好的讲解Java的英文文章,掌握了这些术语的意思之后,这些文章理解起来就会容易很多. 下面先整理了一部分术语,本文会持续更新! Java术语中英文对照表 英文术语 对应中文术语及简单解释 Cla ...

  8. java内存映射缓存,java – 用于数据库实现的内存映射的MappedByteBuffer或直接ByteBuffer?...

    这看起来像一个长期的问题,因为所有的上下文.下面的小说里有两个问题.感谢您抽出时间阅读并提供帮助. 情况 我正在开展可扩展的数据存储实现,可以支持在32位或64位系统上处理数据文件,从几KB到TB或更 ...

  9. java继承 映射_hibernate继承关系映射和java反射机制的运用

    转:http://blog.csdn.net/derpvailzhangfan/article/details/1957946 ,感谢博主分享 Notes:hibernate元数据的运用:uuid的概 ...

最新文章

  1. tensorflow打印模型图_[深度学习]TensorRT加速tensorflow实例
  2. just函数python_提升 Python 性能 Numba 与 Cython
  3. java 实现气泡 源码分析_冒泡排序算法原理及JAVA实现代码
  4. 贵州大学计算机科学研究所,贵州大学计算机科学与技术学院
  5. Genymotion模拟器拖入文件报An error occured while deploying the file的错误
  6. if __name__ == __main___一文搞懂 if __name__ == #39;__main__#39;
  7. vue-实现换一换功能
  8. Http协议/JSON格式
  9. Mujoco模型学习记录
  10. html打印去掉页码和日期,PPT打印讲义时如何去掉日期页码?
  11. SonarQube task ‘xxx‘ status is ‘PENDING‘
  12. 2021-10-19 SAP 创建会计凭证 BTE替代利润中心
  13. 开展922绿色出行活动 加强城市绿色交通安全管理
  14. UDP协议全面实验分析详解
  15. Python实现邮箱自动群发工资条
  16. 图解AUTOSAR(五)——微控制器抽象层(MCAL)
  17. 如何将钉钉集成到FineReport插件中
  18. MySQL数据库操作与查询的综合测试题
  19. WWW和Web的区别
  20. 人工智能帮助千万用户完成「隐形征信」计算

热门文章

  1. String常用的方法总结
  2. android通讯录增删改查,android 通话记录的增删改查 .
  3. jedis对redis键加锁+解锁+事务提交
  4. 利用java求积分(定积分和无穷限积分)
  5. leetcode初级算法2.旋转数组
  6. JDBC入门案例及相关API概述
  7. spring 构造函数注入_Spring构造函数依赖注入示例
  8. go比java快多少_Java 11快多少?
  9. 混合多云架构_使用混合多云每个人都应避免的3个陷阱(第2部分)
  10. java jep_Java 10 – JEP 286:局部变量类型推断