当前位置: 首页 > 图文教程 > 网络编程 > JSP > html与jsp开发分离技术

JSP
JDBC 入门(一) - 开始
JDBC 入门(二) - 建立联接
JDBC 入门(三) - 设置表
java在Linux下的web应用(一)
java在Linux下的web应用(二)
Servlet开发中JDBC的高级应用
可以使用多个jsp定制标签在JSP中达到接近servelt的处理效果
JSP应用程序开发中安全问题的实例解析
现场纪实—如何入侵基于JSP的网站
windows中双击jar文件即可运行写法
修改Tomcat的主配置文件,增加一个Postgre数据库JDBC连接池。
JSP报表打印的一种简单解决方案
JSP如何保存用户上次登录时间
当Tomcat遭遇JBDC Driver,出现 Cannot create resource instance !
使用jsp生成彩色汉字验证码
基于JDBC的数据库连接池技术研究与应用
JSP数据库连接池的必要性
在JSP页面中实现检索数据的分页显示
在jsp中作HTTP认证的方法
JSP通过JDBC与Oracle相连

JSP 中的 html与jsp开发分离技术


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 32 ::
收藏到网摘: n/a

 

    在传统的JSP程序中,我们将HTML代码与Java代码混合在一起编写,这样虽然方便,但同时也导致页面难以维护,HTML开发人员和JSP开发人员负担加重,我们可以将这种传统的技术成为页面拉数据技术

    怎样才能做到将HTML开发和JSP开发分离呢?答案就是使用Tag技术,通过使用Tag技术,我们就可以在页面程序中不出现JSP代码,在需要数据的地方,大家先约定好标签,然后由Tag的后台处理程序去替换这些标签,显示数据。我称这种技术叫做向页面推数据,页面只要定义好格式就行了。这样,我们可以让HTML开发人员专注于页面的外观,而Java程序员则不用理会页面显示,专注于后台程序,大大提高了程序的可维护性和方便性。便于各程序员之间的协作开发。

    首先你要懂一些Tag技术,然后才能阅读本文。下面是样例程序:

一、首先是替换字符串的replace函数

  // 替换字符串函数
  // String strSource - 源字符串
  // String strFrom   - 要替换的子串
  // String strTo     - 替换为的字符串
  public static String replace(String strSource, String strFrom, String strTo)
  {
      // 如果要替换的子串为空,则直接返回源串
      if(strFrom == null || strFrom.equals(""))
          return strSource;
      String strDest = "";
      // 要替换的子串长度
      int intFromLen = strFrom.length();
      int intPos;
      // 循环替换字符串
      while((intPos = strSource.indexOf(strFrom)) != -1)
      {
          // 获取匹配字符串的左边子串
          strDest = strDest + strSource.substring(0,intPos);
          // 加上替换后的子串
          strDest = strDest + strTo;
          // 修改源串为匹配子串后的子串
          strSource = strSource.substring(intPos + intFromLen);
      }
      // 加上没有匹配的子串
      strDest = strDest + strSource;
      // 返回
      return strDest;
  }

二、Tld文(MyBookTag.tld) 定义你的标签


<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib
        PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
        "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
  <tlib-version>1.0</tlib-version>
  <jsp-version>1.2</jsp-version>
  <short-name></short-name>
  <tag>
    <name>ListBook</name>
    <tag-class>com.book.taglib.ListBookTag</tag-class>
    <body-content>JSP</body-content>
  </tag>
</taglib>

三、Tag的后台处理文件,负责解释标签(ListBookTag.java)

package com.book.taglib;

import java.util.*;
import java.lang.*;

import com.book.model.bookmodel;
import com.book.utils.StringHelper;

import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.tagext.BodyTagSupport;
import javax.servlet.jsp.tagext.BodyContent;