论坛首页 入门技术论坛

准备造个 servlet model 和 controller 间的轮子

浏览 1424 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (2)
作者 正文
   发表时间:2010-03-23  
如题, 准备造个 servlet  model 和 controller 间的轮子,为啥不用 struts 或 spring mvc 等 mvc 框架? 貌似一下说不清,主要还是考虑的性能,以及现有的模块的特殊性 。

首先,就是要考虑如何映射和实例化 action / controller, 单实例还是多实例?我偏向 单实例异步。咱们要的就是效率。
如何实例化调用 action 呢? 还是用反射吧,我看tomcat6 的源码,里面都用了反射。不过每个request 都用到反射? 先写到这了,希望大家多提意见。

附:struts1 vs struts2

struts2.x是线程安全的,每一个对象产生一个实例,避免了线程安全问题;而struts1.x在action中属于单线程。

• Struts1 Action是单例模式并且必须是线程安全的,因为仅有Action的一个实例来处理所有的请求。单例策略限制了Struts1 Action能作的事,并且要在开发时特别小心。Action资源必须是线程安全的或同步的。
• Struts2 Action对象为每一个请求产生一个实例,因此没有线程安全问题。(实际上,servlet容器给每个请求产生许多可丢弃的对象,并且不会导致性能和垃圾回收问题,前提是在 jdk1.5 +)
   发表时间:2010-06-30  
呵呵,碰到同样的人了,我也自己实现了个轮子,不敢每个请求实例化一个Action,后来也做成了单实例的。为什么不用struts1跟springMVC,主要是觉得他们太烦了,想简化。我自己搞个不通用但性能要高于它们的MVC。
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics