关于学习struts2的一些困惑 10

我也是刚学习struts2不久,看见很多人还是直接请求jsp页面,然后用什么<s:action>标签将action的结果包含进来,说这样可以分模块编程。老师也是这样写。而... 我也是刚学习struts2不久,看见很多人还是直接请求jsp页面,然后用什么<s:action>标签将action的结果包含进来,说这样可以分模块编程。老师也是这样写。
而action作为控制器,我觉得应该是让用户直接请求控制器吧?这样才符合MVC架构的思想,可以把jsp放在WEB-INF下,让用户不能访问,然后struts将该页面传递给用户。
还有就是<s:action>标签,你们在平时的项目中用的多吗?我在写项目时一般总是一个页面只从一个action中取数据,因为业务逻辑组件由spring管理,都是单例,所以只需调用然后把结果放入值栈中就行。如果一个页面之中包含多个action,那么当请求一个action页面时spring得同时实例化多个action,这样运行效率不就低了吗?对于页面中的每一个模块该怎么做呢?
展开
 我来答
tvogfj
2012-12-31 · 超过23用户采纳过TA的回答
知道答主
回答量:150
采纳率:0%
帮助的人:74.1万
展开全部
首先,你无法确定使用一个<s:action>标签就会实例化一个action,这个和struts也没有关系,而是和spring bean的配置有关系;
其次,写<s:action>标签和请求一个后台的Action类是一样的,不存在什么效率问题;
第三,之所以在界面写<s:action>的标签是为了方便的简单复用。
最简单的,比如数据字典的转换,后台查出来的是1,2,jsp界面要显示男或者女,用一个<s:action>就可以封装这个逻辑(包括前台和jsp生成的html及样式等);
如果你的jsp界面中有许多个部分组成,每个部分都相互独立,功能单一,就会出现多个<s:action>标签。
这样做的好处是,如果有一个逻辑和界面修改了,只许要改对应action和对应的jsp,而不需要改用到这个逻辑的许多许多的JSP,不仅封装了逻辑,而且封装了界面的内容和样式;
法澜59
2012-12-26
知道答主
回答量:66
采纳率:0%
帮助的人:14.7万
展开全部
<s:action>不是用的不多,action一般写在一个配置文件中,一个action跳转到一个页面。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式