我用的是actionServlet,继承自struts1的DispatchAction
我负责网站的新闻频道,新闻频道调用新闻频道的action:NewsAction,新闻频道里所有的内容都是这个servlet提取
新闻频道里有很多二级菜单,为了方便,点击以后都调用NewsAction,根据不同的方法返回不同的内容这样一来,NewsAction中定义了6-7个ActionForward方法
目前运行没什么问题
就怕以后会项目上线影响读取速度、耗费服务器内存
请问:
servlet里定义了很多方法,会不会影响读取速度、耗费服务器内存?

解决方案 »

  1.   

    基本上不会影响,但是这样写不好,业务逻辑处理的功能最好写在专门的包和类里面在servlet调用. 这就是MVC和分层的理念. 降低了耦合又使得代码简洁美观提高了可读性.
      

  2.   

    这样写不好,业务逻辑处理的功能最好写在专门的包和类里面在servlet调用,维护起来也方便。
      

  3.   

    有点像struts2一个excute方法里面调不同的方法,返回不同的相应页面struts的action是单例的,所有请求共享一个action实例requestprocessor里面有个hashmap,存着所有action实例的缓存孙卫琴那本struts书中提到了这些内容性能上应该没有什么问题吧,如果考虑性能,可以考虑在服务器配置上做文章
      

  4.   

    性能上感觉影响不大~
    就是这样写的业务逻辑不太好~
    建议改成专门的包和类里面用servlet调用~
    这样以后维护或者是交给其他人管理也方便一些~
      

  5.   

    根据不同情况而定,如果你的action中处理了某项很复杂的业务的话,
    或者调用什么耗内存的程序之类的就很耗内存。。
    如果只是处理些简单操作的话,基本上暂用一点点内存。。
      

  6.   

    我觉得楼主说的只是方法多了会不会影响速度,而其他的业务方法都是biz包中完成的(也有可能是其他名字的包)
    估计他也采用了MVC设计模式,应该不会把业务也放到Action中吧