J2EE学习笔记(1) 开篇

来源:互联网 发布:php mktime长度 编辑:程序博客网 时间:2024/05/01 20:25

欢迎大家和我通过email讨论问题 ycmloveyou@yahoo.com 有好的建议或者对我的笔记有任何质疑也请直接了当地指出。谢谢

--Cookies VS Sessions
Cookie将对话数据存于客户端,在每个请求时发送. Session将对话数据存于服务器端,仅将sessionid存于cookie,这种方法有更好的安全保障,对服务器要求也更高. 基于这一点,struts的默认scope是request,而非session. 程序员在页面间传输数据时也应尽量用request scope以减少服务器负担.

--最重要的软件工程实践
应用了struts的jsp里绝对不能再掺杂处理商业逻辑(Strongly discouraged),scriptlet只适用于完全用于presentation的逻辑处理,而商业逻辑应放到action/ejb/dao层处理. 写在jsp里哪怕一点点的business logic都会让日后的维护付出高昂的代价。

--Interpretaion Sequences
在利用Struts构建的jsp含有html,javascript,jsp scriptlet和struts tags, 执行时的顺序为 jsp scriptlet -> tag library -> html+js. 所以html和js代码可以嵌套 等代码,在struts tag里也可以嵌套scriptlet代码,但反过来就是错的. 实际应用中常用 在html以comment方式显示bean property内容来debug,就是一个典型的例子

--Struts Form, Request
strutsd的form bean生存期很短,假设某jsp以actionA.do?method=methodInitA进入,formShared被actionServlet初始化,在methodInitA结束后如果forward到另一个action如下,而这个action同样
你或许常见到这样的代码片断
<struts-config>
   <action path="/actionB" name="formShared">
      ...
   </action>
</struts-config>

原创粉丝点击