`

useBean详解(1)

 
阅读更多

MVC模式中,常常需要各个部分之间交互信息,这就需要Bean。在展示层更是如此。所以就出现了useBean、EL等这些更方便,更优雅的解决方式。这里以hello world为例子,说明useBean的用法和优势。

不用useBean的例子:

web.xml

Word.java

SayHello.java

Show.jsp

视图页面是用来显示信息的,而应该尽量避免使用不必要的逻辑,我不知道“使用脚本者,必死!”这句话到底有多严重。但避免java代码和html标记混合是必要的。

如果在<url-pattern>/say.jsp</url-pattern>改写成<url-pattern>/*</url-pattern>在语法上不会出错,而且这也是许多框架常用的伎俩。但在这里,由于使用RequestDispatcher从定向了,就会出现自己定向到自己,不断的追自己的尾巴。

如果改成useBean去处理Bean的操作,就会很轻松,代码也很美观了。

修改后的Show.jsp

现在,是把精力集中在useBean的用法上来的时候了。

  • <jsp:useBean id="bean的名称" class="bean的权限定类名" scope="page/request/session/context" />。这个标记首先会在是定的作用域中查找对象,如果存在,就直接拿来。如果不存在,就重新创建一个对象。这里面的scope是这个Bean的作用域。page表示只在本页面有效,request表示这个bean是request属性,session表示这个bean是session属性context是,这几个属性是servlet中的知识,稍后会解释。
  • <jsp:setProperty name="bean的名称" property="属性名称" value="属性值" />就是向bean设置属性。当表单的名称和bean的属性名称相同时可以简写成这样:<jsp:setProperty name="bean的名称" property="*" />这会大大降低代码的编写量。
  • <jsp:getProperty name="bean的名称" property="属性名称">这个标记是把bean的属性打印出来。

更近一步的内容请看useBean详解(2)

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics