项目中的缓存刷新解决:
WEB和EJB里面都有cacheFactory.class+action(用于接收刷新请求)
这时可在EJB里面把action(war)打进去,前台发请求时WEB+EJB即可。
Web+EJB能组成真正的多层结构
为什么使用EJB我原先认为这不是一个讨论的话题,因为EJB是J2EE重要的组成部分,可以说没有EJB的J2EE只是一种Web系统,这样的系统非常容易丧失了多层结构的大部分优点(仔细想想那些混合多种层次功能JavaBeans和传统两层结构有什么区别?)。
当然,可以人为地在Javabeans之间进行层次划分,例如Hibernate算数据持久层,某些JavaBeans是业务核心层,但是因为都是普通JavaBeans,这种划分没有一种强制性和明显标志性,这样的系统更换了主创人员或设计师,可能就会被新的程序员修改得非常混乱。
我们先看看一个包含EJB的J2EE系统是如何清晰地表达层次:
Web完全只是一个MVC模式的实现,关键业务核心是在EJB的服务层实现,这样做的优点是,Web只负责界面相关部分,因为,如果是一个智能客户端,如Swing或J2ME,在不需要修改任何业务核心的情况下能够方便地更换。同样,提供Web Services功能,也只是在 Web层修改,不会涉及EJB方面的修改,同样保证了系统的稳定性,保证了系统升级和未来的扩展性。
如果不使用EJB,在EJB服务层实现的业务核心将由普通JavaBeans实现,使用何种架构或设计能够保证负责MVC的JavaBeans和负责业务核心的JavaBeans清晰地分开,又如何保证在新的程序员不会破坏和打乱你精心布局的JavaBeans架构?
在一个纯Web结构的系统(也就是只能运行在Tomat环境中),例如Struts + Hibernate等这样的系统,除非自己动手做,一般是没有对象池技术支持的,因此他们的性能只能算是Demo演示版本的性能,根本无法承受大容量并发访问,也无法称为一个成熟的系统,所以,我们研究成熟的开源Web系统,如Jive、OFBize,LifeRay等,他们都在Web层拥有自己的对象池和缓存池。
对象池和缓存机制是J2EE必须的吗?当然,是所有成熟系统必须的,Windows系统如果去掉缓存将会变得怎样?
自己动手开发对象池和缓存机制并不是一件简单的事情,需要对多线程以及同步锁等底层原理有深层次的把握,这其实也是一门非常深入的Java研究分支,所以,你可以抛开你的客户焦急的催促,精心研究开发自己的对象池和缓存池。
但是,EJB容器(如JBoss)已经提供了对象池和缓存机制,所以,没有事务机制的无状态Session Bean的性能肯定要强于普通JavaBeans。EJB容器不但在单机中提供了对象池和缓存,而且可以跨服务器实现动态负载平衡,这些都无需开发者自己开发任何软件代码,结构如下:
分享到:
相关推荐
J2EE是企业级的Java开发平台,提供了全面的服务器端解决方案,支持多层架构和分布式应用程序。在论坛系统中,J2EE可以用于处理用户的登录验证、数据持久化、业务逻辑处理等核心功能。例如,使用Servlet进行请求处理...
Web技术架构是构建基于Web的应用程序的关键组成部分,它涉及到如何组织和设计系统以提供高效、可维护和可扩展的解决方案。以下是对标题和描述中提到的一些核心知识点的详细解释: 1. **MVC(Model-View-Controller...
- **基于J2EE的SSO方案**:利用J2EE平台的特性,如Web Services、EJB、JSP等,设计出符合企业需求的SSO解决方案。 - **开源SSO框架**:如Spring Security、Apache Shiro等,提供了丰富的功能和良好的社区支持,是...
J2EE(Java 2 Enterprise Edition)是针对企业级应用的解决方案,基于Java 2平台,集成了J2SE的所有功能,并提供了对EJB(Enterprise JavaBeans)、Servlet、JSP(Java Server Pages)以及XML等技术的支持。...
针对上述问题,研究者们已经开始探索解决方案。其中,Ajax技术和J2EE技术的应用成为了解决WebGIS系统性能问题的关键。 - **Ajax技术**:Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的...
EJB与Web服务 - **EJB**:Enterprise JavaBeans,Java EE中用于开发分布式组件的技术。 - Session Bean、Entity Bean等类型。 - **Web服务**:包括SOAP、WSDL、UDDI等协议标准。 - **SOA/REST**:面向服务架构与...
### Java EE 7 Recipes知识点概览 #### 一、引言 Java平台是全球最广泛使用的应用程序开发平台...同时,诸如ORM、Web服务、安全等领域也有成熟的解决方案。这些技术和工具的结合,为企业级应用开发提供了坚实的基础。
10. **Spring框架**: Spring是JavaWeb开发中最流行的框架之一,提供了一整套解决方案,包括依赖注入、AOP(面向切面编程)、事务管理以及MVC框架等。 11. **Struts、Hibernate、MyBatis**: 这些都是JavaWeb开发中...
5. **挑战与解决方案** - 数据同步:使用AJAX实现实时数据更新,提高交互性。 - 性能优化:通过数据库索引、缓存策略等手段提升系统响应速度。 - 系统测试:进行全面的功能和压力测试,确保系统稳定可靠。 综上...
总之,JSP下载系统不仅展示了JSP技术在实际应用中的强大功能,同时也融合了多种现代Web开发技术,为个人和组织提供了高效、安全、可定制的文件管理解决方案。通过持续的技术迭代和优化,这样的系统能够满足日益增长...
**OSCache**是开源的缓存解决方案,用于提高Web应用程序的性能。它能够在内存中存储对象,避免重复计算或数据库查询,从而减少系统负载。OSCache支持集群环境,可以跨服务器共享缓存,同时也提供了缓存更新策略,...
JBoss Cache 是一个高性能、分布式的缓存解决方案,常用于提高应用性能和数据一致性。Jboss cache.pdf介绍了如何配置和使用JBoss Cache,包括集群设置、缓存策略等内容。 **6. JFreeChart** JFreeChart 是一个Java...
本项目"javaweb购物车"提供了一个实用且可定制的解决方案,使得开发者只需进行少量代码修改即可将其融入自己的应用程序中。 购物车的基本功能包括: 1. **添加商品**:用户可以通过点击商品页面上的“加入购物车”...
3. Spring MVC:作为Web层的解决方案,提供模型-视图-控制器架构,简化开发流程。 四、JMS(Java消息服务) 1. 异步处理:通过消息队列解耦系统组件,提高系统响应速度和可扩展性。 2. 事务消息:确保消息传递的...
优化后,显著减少了进程上下文切换和死会话的开销,同时释放了计算节点上的内存用于缓存,限制了Cassandra的复制流量只到两个节点,并且只在需要持久化存储和刷新时查询Cassandra。 文章还提到了优化基础设施时的...
总结,"AJAX+J2EE开发组织机构管理系统"是一个充分利用AJAX技术提升用户交互体验,结合J2EE强大的企业级服务,实现高效、灵活的组织机构管理的解决方案。通过合理的架构设计和开发流程,可以构建出既满足功能需求,...
Java编写的显示器显示模式检测程序 2个目标文件 内容索引:JAVA源码,系统相关,系统信息检测 用JAVA编写了一个小工具,用于检测当前显示器也就是显卡的显示模式,比如分辨率,色彩以及刷新频率等。 Java波浪文字制作...
【基于jsp的家校通软件】是一个以Java技术为核心的教育信息化解决方案,主要目的是实现学校与家庭之间的高效沟通。JSP(JavaServer Pages)是Java平台上的动态网页技术,它允许开发者将HTML、CSS、JavaScript等静态...