温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

JavaBean怎么实现JSP页面和代码分离

发布时间:2021-07-14 10:40:45 来源:亿速云 阅读:110 作者:chen 栏目:编程语言

本篇内容介绍了“JavaBean怎么实现JSP页面和代码分离”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

在JSP编程中,Struts一般只是用来处理form和业务逻辑,很多时候我们还是需要使用 "<% java="" code="">" 这样的语句来操作一些输出。这样的方式和ASP很类似,非常不便于程序代码和页面设计维护,网上有很多种分离的解决方案,本文只是我个人推荐的一种简单方式。

首先看我们要进行分离操作的原文件

Test.jsp

>  <html>    <head>      <title>My JSP 'Test.jsp' starting pagetitle>    head>        <body>      This is my JSP page. <br>      Date : <%= new java.util.Date().toString() %> <br>      File : <input value="" />      body>  html>

这个JSP文件中包含了两段JSP代码,分别用来输出当前时间和文件路径。虽然简单,但很有代表性,进行文本输出和HTML控件赋值是我们在JSP文件中写Java代码最主要的原因。接下来,我们开始我们的分离过程。

1. 编写JavaBean

使用 JavaBean Property 来获取所需的日期和文件名。

DemoBean.java

package com.mycompany;   import java.util.Date;   import javax.servlet.jsp.*;   import javax.servlet.http.*;   public class DemoBean {     private PageContext pageContext;          public void setPageContext(PageContext pageContext) {       this.pageContext = pageContext;     }          public String getDate() {       return new Date().toString();     }          public String getFilename() {       HttpServletRequest request = (HttpServletRequest)pageContext.getRequest();       return request.getServletPath();     }   }

在这个名叫 DemoBean 中,我们提供了setPageContext方法用来获取JSP页面的环境对象。有了该对象,我们就可以象在JSP页面中那样使用 request、response、session 进行相关的操作了。

2. 创建包含文件

TestInc.jsp

<%>

这是个简单至极的JSP文件,***行代码是声明使用JavaBean的语句,第二行代码调用了DemoBean.setPageContext()方法将当前JSP页面的pageContext对象传递到demo对象中,这下你知道DemoBean是如何获得环境对象的吧。至于为什么需要使用这个jsp文件来达到使用JavaBean实现JSP页面的目的?请继续往下看。

3. 修改原JSP文件

Test.jsp

<%@ include file="TestInc.jsp" %>  >  <html>    <head>      <title>My JSP 'Test.jsp' starting pagetitle>    head>    <body>      This is my JSP page. <br>      Date : <jsp:getProperty name="demo" property="date" /> <br>      File : <input value="<jsp:getProperty name="demo" property="filename" />"/>      body>  html>

请注意修改后的JSP文件***行,我们使用了一个include语句,将我们刚才创建的 TestInc.jsp 文件包含了进来。下面有关日期和文件名的语句也是使用JavaBean的标准语法。运行一下,看看是不是和原来的Test.jsp一样。

include 指令所包含的 jsp 文件,会在***次运行时和原文件合并,被编译成一个完整的 servlet。

jsp:getProperty 的 property 值从 "getFilename" 变成了 "filename",一定要注意,很多人正在为这个郁闷着呢。

好了,我们总结一下这种使用JavaBean实现JSP页面方式的好处:

1. 修改后的JSP文件不再包含java代码,JavaBean Class更利于程序代码的维护。

2. 程序开发人员使用简单的空白页就可以进行开发,待页面设计人员提交目标页后,只需简单的编辑即可完成替换。

3. html代码变得非常干净,页面设计人员修改页面文件时,不用担心误删除程序代码了。

4. 使用INC文件,可以包含多个JavaBean的声明,利于将不同的任务分解成多个JavaBean,多个程序员可以独立、不受干扰地工作。

5. 开发人员甚至可以直接在该包含文件内部直接创建 Java 方法,就像你原来所熟悉的那样。

“JavaBean怎么实现JSP页面和代码分离”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI