本文是新的 JSP 最佳实践系列文章的第一部分,它介绍了 JavaServer Pages include 机制。请跟随 Java 编程专家 Brett McLaughlin 学习如何使用 include 将静态的头文件和脚注文件加入您的网站或 Web 应用程序页面中。
欢迎阅读 Java 专区中最新的最佳实践系列文章。如果您看过先前的系列文章,那么您会知道最佳实践旨在让您快速了解各种 Java 技术的有用方面。这一系列的最佳实践专门讨论 JavaServer Pages(JSP)技术,它是核心 J2EE 技术之一。
简而言之,JSP 技术是在 Java 平台上构建 Web 页面或 Web 应用程序接口的工具。JSP 技术允许我们做如下事情:动态响应请求数据、显示复杂的 XML 和 HTML 以及创建生动有趣、动态驱动的网站。在本系列中,您将学习一些用 JSP 技术构建网站的基础知识。我将为您介绍最常用的 JSP 机制,通过这些机制,您将了解基本的 Web 开发技术,如制作模板、操作动态内容、图像托管、创建实用程序代码库等。
本文是这一系列文章的第一篇,在本文中,我们将集中讨论 JSP include 机制,该机制允许我们“拉”入本地 HTML 页面的内容。我们将首先介绍有关 Web 页面 include 发展的一些背景知识,尤其是框架和服务器端 includ ......
JavaScript代码:
//办事处抽取比例改变,更新其他数据
....function changeOfficeSampleScale(obj,flushOfficeRow){
var row=obj.parentNode.parentNode; //取得所在行
var officeCode=row.id; //取得行的Id
if(isNaN(obj.value)){//如果不是数字,则提示
alert("您输入不为数字,请输入数字!");
obj.value=0;
var p=0;
//return;
}else{
if(obj.value<0){
alert("请输入非负数!");
obj.value=0;
var p=0;
}else{
var p=Math.ceil(obj.value); //转为数值
}
}
if(p>=100){
p=100;
obj.value=p;
}
var crows=document.getElementsByName("sub_"+officeCode);
for(va ......
1: 我们需要下载page标签的jar包; pager-taglib.jar
[样例代码]: http://jsptags.com/tags/navigation/pager/pager-taglib-2.0.war
解压war文件 在{..}\WEB-INF\lib\pager-taglib.jar
2:把这个jar 拷贝到你的web工程的lib中;
3: 3-1 该标签需要我们提供1个最关键的参数 ---》 总数据量 select count(*)的值
3-2 每页显示的记录数
3-3 页码的个数
3-4 你的这个应用的url
3-5 如果你的这个应用有参数的场合 你需要设置url的参数
4:默认的场合查询数据库的开始索引 的参数名称为pager.offset
5:
后台的处理
后台的action中 在request.getParameter("pager.offset"); 里得到查询数据库的开始索引
并计算查询的总数据量并将计算的结果保存在requset.setAttribute('totalpage');
把相关的查询结果设置到requset.setAttribute('xxlist');
6: 前台处理
在相应jsp页面上添加 <%@ taglib uri="http://jsptags.com/tag ......
如果web.xml里面的<web-app>是version="2.4",那么就要在<jsp-property-group>里设置。如果version="2.5"就不需要。
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_4.xsd">
.
.
.
<!-- 配置jstl -->
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<el-ignored>false</el-ignored>
</jsp-property-group>
.
.
.
</web-app>
......
一、
在一个设计良好的Web应用中,都会综合使用Servlet和JSP技术。Servlet控制业务流转,JSP则负责业务处理结果的显示。此时,将大量用到重定向技术。
重定向技术可以分为两类,一类是客户端重定向,一类是服务器端重定向。客户端重定向可以通过设置特定的HTTP头,或者写JavaScript脚本实现。本文主要探讨服务器端重定向技术的实现。
服务器端的重定向相关类
服务器端的重定向技术涉及到javax.servlet.ServletContext、javax.servlet.RequestDispatcher、javax.servlet.http.ServletRequest、javax.servlet.http.ServletResponse等几个接口。
服务器端的重定向方式
服务器端的重定向可以有两种方式,一是使用HttpServletResponse的sendRedirect()方法,一是使用RequestDispatcher的forward()方法。下面对这两种方式进行介绍。
HttpServletResponse.sendRedirect()方法
HttpServletResponse接口定义了可用于转向的sendRedirect()方法。代码如下:
public void sendRedirect(java.lang.String location)throws java.i ......
不说废话了,看下面的例子吧(利用structs实现):
在WEB-INF下有两个页面: a.jsp 和 b.jsp , 现在要实现从a.jsp连接到b.jsp
在a.jsp中:
<html:link action="link.do
">连接到b</html:link>
在structs-config.xml中:
<action path="\link" forward=''/WEB-INF/jsp/b.jsp"/>
把JSP页面放在WEB-INF下可以保护页面不被用户随意的访问。最近开始学structs ,刚开始一直没弄成功,原因嘛,太搞了,我不想说。把结论分享给大家吧 ......