上篇:使用注释开发pojo服务
对开发服务器端应用程序而言,java企业版本即java ee(以前叫j2ee)是一个功能强大.但又过于复杂的平台.很早以来,过于复杂历来被认为是阻碍人们采用java ee的一个重要因素.
但在过去的三年,java开放源代码社区.java社区组织(jcp)以及主要的java ee开发商都在致力于简化java ee.譬如说,实际的应用程序使用新的设计范例来简化java ee的开发,譬如普通java对象(pojo)服务.服务拦截器与依赖注入.而诸多新的工具与框架也得到了广泛采用,用于同样的目的,譬如hibernate.面向方面编程(aop).struts.xdoclet与spring.
这些模式与工具让刚入门的开发人员更容易上手,同时提高了经验丰富的java开发人员的生产力,目前它们正在被jcp集成到下一代java ee标准(即ejb 3.0)当中.java开发人员raghu kodali最近开展的一项调查表明,把sun的java ee示例应用程序rosterapp从ejb 2.1移植到ejb 3.0可以减少50%以上的代码.
java注释是ejb3.0的重要特性,它把pojo服务.pojo持久性与依赖注入联系起来,成为完整的企业中间件解决方案.本文使用了一个示例应用程序:jboss ejb 3.0 trailblazer,以演示开发添加注释的轻便型ejb 3.0 pojo应用程序.trailblazer应用程序多次使用ejb 3.0中的不同工具与api,实现了一个投资计算器.示例应用程序在jboss 应用服务器4.0.3里面以非传统方式运行,完全符合最新的ejb 3.0规范(公众预览版).
ejb 3.0的注释驱动编程模型
从开发人员的角度来看,ejb 3.0广泛使用java注释.注释有两个重要优点:它们取代了过多的xml配置文件,而且不需要严格的组件模型.
注释与xml
基于xml的部署描述符与注释都可以用来配置java ee应用程序中的服务相关属性.两者的区别在于:xml文件与代码分开处理(往往在运行时);而注释与代码一起编译,而且由编译器进行检查.这对开发人员产生了以下这些重要影响:
● 冗长性:xml配置文件以冗长出名.为了配置代码,xml文件必须从代码地方复制许多信息,譬如类名称与方法名称.另一方面,java注释却是代码的一部分,不需要另外引用代码,就可以指定配置信息.
● 健壮性:xml配置文件中的复制代码信息带来了多个潜在故障点.譬如说,如果拼错了xml文件中的方法名称,应用程序会在运行时出错.换句话说,xml配置文件不如注释来得健壮.注释可以由编译器来检查,同代码的其余部分一起处理.
● 灵活性:因为xml文件与代码分开处理,所以基于xml的配置信息不是“硬编码”的,以后可以改动.部署时间的灵活性对系统管理员来说是一项很好的特性.
注释使用简单,足以满足大多数应用程序的要求.xml文件比较复杂,可用来处理更高级的问题.ejb 3.0允许通过注释来配置大多数应用程序的设置.ejb 3.0还支持xml文件用于取消默认的注释值.配置外部资源(如数据库连接).
pojo与严格组件
除了取代及简化xml描述符外,注释还可以让我们弃用曾困扰ejb 1.x与ejb 2.x的严格的组件模型.
ejb 组件是容器管理的对象.容器在运行时操纵bean实例的行为与内部状态.... 下一页