JavaBean实现JSP页面和代码分离-成都创新互联网站建设

关于创新互联

多方位宣传企业产品与服务 突出企业形象

公司简介 公司的服务 荣誉资质 新闻动态 联系我们

JavaBean实现JSP页面和代码分离

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

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

Test.jsp

 
 
 
  1.  
  2.  
  3.  
  4.    
  5.  
  6.     My JSP 'Test.jsp' starting page title> </li> <li> </li> <li>   head> </li> <li> </li> <li>   </li> <li> </li> <li>  <body> </li> <li> </li> <li>    This is my JSP page. <br> </li> <li> </li> <li>    Date : <%= new java.util.Date().toString() %> <br> </li> <li> </li> <li>    File : <input value="<%= request.getServletPath() %>" />   </li> <li> </li> <li>   body> </li> <li> </li> <li> html> </li> </ol></pre><p>这个JSP文件中包含了两段JSP代码,分别用来输出当前时间和文件路径。虽然简单,但很有代表性,进行文本输出和HTML控件赋值是我们在JSP文件中写Java代码最主要的原因。接下来,我们开始我们的分离过程。</p><p><strong>1. 编写JavaBean</strong></p><p>使用 JavaBean Property 来获取所需的日期和文件名。</p><p>DemoBean.java </p> <pre> <ol> <li>package com.mycompany;  </li> <li> </li> <li>import java.util.Date;  </li> <li> </li> <li>import javax.servlet.jsp.*;  </li> <li> </li> <li>import javax.servlet.http.*;  </li> <li> </li> <li>public class DemoBean {  </li> <li> </li> <li>  private PageContext pageContext;  </li> <li> </li> <li>    </li> <li> </li> <li>  public void setPageContext(PageContext pageContext) {  </li> <li> </li> <li>    this.pageContext = pageContext;  </li> <li> </li> <li>  }  </li> <li> </li> <li>    </li> <li> </li> <li>  public String getDate() {  </li> <li> </li> <li>    return new Date().toString();  </li> <li> </li> <li>  }  </li> <li> </li> <li>    </li> <li> </li> <li>  public String getFilename() {  </li> <li> </li> <li>    HttpServletRequest request = (HttpServletRequest)pageContext.getRequest();  </li> <li> </li> <li>    return request.getServletPath();  </li> <li> </li> <li>  }  </li> <li> </li> <li>} </li> </ol></pre><p>在这个名叫 DemoBean 中,我们提供了setPageContext方法用来获取JSP页面的环境对象。有了该对象,我们就可以象在JSP页面中那样使用 request、response、session 进行相关的操作了。</p><p><strong>2. 创建包含文件</strong></p><p>TestInc.jsp </p></p><p><% demo.setPageContext(pageContext); %></p><p>这是个简单至极的JSP文件,***行代码是声明使用JavaBean的语句,第二行代码调用了DemoBean.setPageContext()方法将当前JSP页面的pageContext对象传递到demo对象中,这下你知道DemoBean是如何获得环境对象的吧。至于为什么需要使用这个jsp文件来达到使用JavaBean实现JSP页面的目的?请继续往下看。</p><p><strong>3. 修改原JSP文件</strong></p><p>Test.jsp </p> <pre> <ol> <li><%@ include file="TestInc.jsp" %> </li> <li> </li> <li>> </li> <li> </li> <li><html> </li> <li> </li> <li>  <head> </li> <li> </li> <li>    <title>My JSP 'Test.jsp' starting page title> </li> <li> </li> <li>   head> </li> <li> </li> <li>  <body> </li> <li> </li> <li>    This is my JSP page. <br> </li> <li> </li> <li>    Date : <jsp:getProperty name="demo" property="date" /> <br> </li> <li> </li> <li>    File : <input value="<jsp:getProperty name="demo" property="filename" />"/>   </li> <li> </li> <li>   body> </li> <li> </li> <li> html> </li> </ol></pre><p>请注意修改后的JSP文件***行,我们使用了一个include语句,将我们刚才创建的 TestInc.jsp 文件包含了进来。下面有关日期和文件名的语句也是使用JavaBean的标准语法。运行一下,看看是不是和原来的Test.jsp一样。</p><p>include 指令所包含的 jsp 文件,会在***次运行时和原文件合并,被编译成一个完整的 servlet。</p><p>jsp:getProperty 的 property 值从 "getFilename" 变成了 "filename",一定要注意,很多人正在为这个郁闷着呢。</p><p>好了,我们总结一下这种使用JavaBean实现JSP页面方式的好处:</p><p>1. 修改后的JSP文件不再包含java代码,JavaBean Class更利于程序代码的维护。</p><p>2. 程序开发人员使用简单的空白页就可以进行开发,待页面设计人员提交目标页后,只需简单的编辑即可完成替换。</p><p>3. html代码变得非常干净,页面设计人员修改页面文件时,不用担心误删除程序代码了。</p><p>4. 使用INC文件,可以包含多个JavaBean的声明,利于将不同的任务分解成多个JavaBean,多个程序员可以独立、不受干扰地工作。</p><p>5. 开发人员甚至可以直接在该包含文件内部直接创建 Java 方法,就像你原来所熟悉的那样。</p><p>【编辑推荐】</p> <ol> <li>JavaBean与MBean详解</li> <li>Servlet与Javabean配置</li> <li>JavaBean使用技巧 </li> <li>JavaBean实现多文件上传的两种方法</li> <li>JavaBean与MBean详解 </li> </ol> <br> 当前文章:JavaBean实现JSP页面和代码分离 <br> URL标题:<a href="http://kswsj.cn/article/dhgdohd.html">http://kswsj.cn/article/dhgdohd.html</a> </div> </div> <div class="other"> <h3>其他资讯</h3> <ul> <li> <a href="/article/cdjdhgo.html">LinuxPAM官方参考手册(linuxpam官网)</a> </li><li> <a href="/article/cdjdhid.html">深度剖析C#序列化和反序列化</a> </li><li> <a href="/article/cdjdhee.html">奶瓶里的Linux:开启一种新的技术时代(奶瓶linux)</a> </li><li> <a href="/article/cdjdhio.html">香港VPS服务器这么受欢迎的原因有哪些</a> </li><li> <a href="/article/cdjdhso.html">如何在ArchLinux下关闭X窗口?(archlinux关闭x窗口)</a> </li> </ul> </div> </div> <div class="line"></div> <!--底部--> <footer id="5"> <div class="foot1 container"> <div class="list"> <div class="item"> <a href="javascript:;"> <span class="ico1"><i class="iconfont"></i><img src="/Public/Home/img/ewm.png" alt=""></span> <strong>关注我们</strong> </a> </div> <div class="item"> <a href="" target="_blank"> <span><i class="iconfont"></i></span> <strong>索要报价</strong> </a> </div> <div class="item"> <a href="" target="_blank"> <span><i class="iconfont"></i></span> <strong>我要咨询</strong> </a> </div> <div class="item"> <a href="" target="_blank"> <span><i class="iconfont"></i></span> <strong>找到我们</strong> </a> </div> <div class="item"> <a href="" target="_blank"> <span><i class="iconfont"></i></span> <strong>投诉建议</strong> </a> </div> </div> <div class="tel"> <dl> <tel><a href="tel:400-028-6601" target="_blank">400-028-6601</a></tel><br> <span>也许您需要专业的服务,欢迎来电咨询</span> </dl> <dl> <tel><a href="tel:18980820575" target="_blank">18980820575</a></tel><br> <span>您的需求,是我们前进的动力</span> </dl> </div> </div> <div class="friend"> <div class="container"> <span class="tit">友情链接:</span> <div class="inner"> <a href="https://www.cdcxhl.com/" target="_blank">建站公司</a><a href="https://www.cdcxhl.com/ruanwen/" target="_blank">软文发稿投放</a><a href="https://www.cdcxhl.com/shop.html" target="_blank">商城网站建设</a><a href="https://www.cdcxhl.com/yingxiao.html" target="_blank">成都营销型网站建设</a><a href="https://www.cdcxhl.com/ruanwen/" target="_blank">软文投放</a><a href="https://www.cdcxhl.com/douyin/" target="_blank">抖音运营公司</a><a href="https://www.cdcxhl.com/google.html" target="_blank">谷歌推广公司</a><a href="https://www.cdcxhl.com/jigui/" target="_blank">服务器机柜租赁</a><a href="https://www.cdcxhl.com/ruanwen/" target="_blank">软文推广</a><a href="https://www.cdcxhl.com/shop.html" target="_blank">成都商城网站建设</a><a href="https://www.cdcxhl.com/ruanwen/" target="_blank">软文营销推广</a><a href="https://www.cdcxhl.com/google.html" target="_blank">成都谷歌推广公司</a><a href="https://www.cdcxhl.com/link/" target="_blank">外链</a><a href="https://www.cdcxhl.com/jigui/" target="_blank">机柜租用</a><a href="https://www.cdcxhl.com/tuoguan/yaan/" target="_blank">雅安服务器托管</a><a href="https://www.cdcxhl.com/gaiban/" target="_blank">成都网站改版公司</a><a href="https://www.cdcxhl.com/" target="_blank">网站建设公司</a><a href="https://www.cdcxhl.com/wangzhandingzhi.html" target="_blank">成都定制网页设计</a> </div> </div> </div> <div class="foot"> <div class="container"> <div class="footNav"> <h3>网站建设</h3> <a href="https://www.cdxwcx.com/" target="_blank">成都网站建设公司</a><a href="https://www.cdxwcx.com/city/shifang/" target="_blank">什邡网站建设</a><a href="https://www.cdxwcx.com/wangzhan/mobile.html" target="_blank">成都手机网站建设</a> </div> <div class="footNav"> <h3>服务器托管</h3> <a href="https://www.cdcxhl.com/tuoguan/zongshu/" target="_blank">成都棕树机房</a><a href="http://www.cdxwcx.cn/tuoguan/mianyang.html" target="_blank">绵阳主机托管</a><a href="https://www.cdcxhl.com/jigui/" target="_blank">服务器托管机柜</a> </div> <div class="footNav"> <h3>网站制作</h3> <a href="http://www.cdxwcx.cn/" target="_blank">成都网站制作公司</a><a href="http://www.cxjianzhan.com/" target="_blank">网站制作</a><a href="http://www.scyanting.com/" target="_blank">盐亭网站制作公司</a> </div> <div class="footNav"> <h3>企业服务</h3> <a href="https://www.cdcxhl.com/ruanwen/yingxiao/" target="_blank">软文推广</a><a href="https://www.cdcxhl.com/shoulu/" target="_blank">网站快速收录</a><a href="https://www.cdcxhl.com/ruanwen/yingxiao/" target="_blank">软文发布平台</a> </div> <div class="fr ecode"> <div class="fl"> <img src="/Public/Home/img/ewm.jpg"> <p>关注企业微信</p> </div> <div class="fr slogan"> <p class="icon"> <a class="ph" href=""><i class="iconfont"></i></a> <a class="qq" href="tencent://message/?uin=1683211881&Site=&Menu=yes"><i class="iconfont"></i></a> </p> <p> <i>想要找 </i> <a href="">小程序开发</a>、<a href="">APP开发</a>、 <a href="">营销型网站建设</a>、<a href="">网站建设</a>、 <i><a href="">网站定制开发</a></i> ,就选<a href="">创新互联</a> </p> </div> </div> </div> <div class="bottom container"> <p class="fl"> 版权所有:成都创新互联科技有限公司 备案号:<a href="https://beian.miit.gov.cn/" target="_blank" rel="nofollow">蜀ICP备19037934号</a> 服务热线:028-86922220 </p> <p class="fr"> <a href="https://www.cdxwcx.com/" target="_blank">成都网站建设</a>: <a href="https://www.cdcxhl.com/" target="_blank">创新互联</a> </p> </div> </div> </footer> <!--在线咨询--> <div class="fot"> <ul> <li> <a href="https://p.qiao.baidu.com/cps/mobileChat?siteId=11284691&userId=6256368&type=1&reqParam=%20{%22from%22:0,%22sessionid%22:%22%22,%22siteId%22:%2211284691%22,%22tid%22:%22-1%22,%22userId%22:%226256368%22,%22ttype%22:1,%22siteConfig%22:%20{%22eid%22:%226256368%22,%22queuing%22:%22%22,%22siteToken%22:%226ce441ff9e2d6bedbdfc2a4138de449e%22,%22userId%22:%226256368%22,%22isGray%22:%22false%22,%22wsUrl%22:%22wss://p.qiao.baidu.com/cps3/websocket%22,%22likeVersion%22:%22generic%22,%22siteId%22:%2211284691%22,%22online%22:%22true%22,%22webRoot%22:%22//p.qiao.baidu.com/cps3/%22,%22bid%22:%22160142915792139572%22,%22isSmallFlow%22:0,%22isPreonline%22:0,%22invited%22:0%20},%22config%22:%20{%22themeColor%22:%224d74fa%22%20}%20}&appId=&referer=&iswechat=0&expectWaiter=-1&openid=null&otherParam=null&telephone=null&speedLogId=null&eid=null&siteToken=6ce441ff9e2d6bedbdfc2a4138de449e" target="_blank"> <img src="/Public/Home/img/fot1.png" alt=""> <p>在线咨询</p> </a> </li> <li> <a href="tel:18980820575" target="_blank"> <img src="/Public/Home/img/fot2.png" alt=""> <p>拨打电话</p> </a> </li> </ul> </div> </body> </html> <script> $(".con img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>