今天刚巧碰到和JSP注释有点关系的一个问题。所以做个笔记,说明一下显式注释<!-- comments --> 和隐式注释<%-- comments --%> 之间的两点差别。
曾经以为显式注释和隐式注释差别只有在代码显示上,这点应该大家都知道,显式注释会显示在客户端页面源码中,而隐式注释是看不到的,不过这只是第一点。
之所以发现了第二点差别,是因为碰到了一个问题。程序中的故事是这样的,a.jsp页面曾经include 了b.jsp,但是现在已经用<!-- -->把那段include注释掉了,而因为在b.jsp中出了一个NullPointerException,以至于打开a.jsp的时候报出 Error500,而且找不到明确的与a.jsp或者b.jsp相关的log。
经过2个小时的逐项排查,所幸的是找到了答案,并且了解了两种注释的另一点差别(重点在这里),即显式注释会被JSP引擎解释,就是说注释中的代码还是会去执行的,比如:<!-- 本文件的加载日期 <%= (new.java.util.Date()).toLocalString() %> --> 会显示当时的具体时间。而隐式注释是被完全忽略,JSP引擎直接就过滤。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/bocaicbl/archive/2009/09/27/4602713.aspx ......
<%
Cookie[] cooks = request.getCookies();
String cookieName = "Mycookie";
boolean flag = false;
for(Cookie cook : cooks)
{
if(cook.getName().equals(cookieName))
{
flag = true;
break;
}
}
if(!flag){
String str=System.currentTimeMillis()+"";
Cookie cookie=new Cookie("Mycookie",str);
cookie.setMaxAge(365*24*60*60);
response.addCookie(cookie);
}
%> ......
jsp中文显示乱码解决方案2006-12-27 22:56
一、JSP页面显示乱码
二、表单提交中文时出现乱码
三、数据库连接
大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着您,我现在把我在JSP开发中遇到
的中文乱码的问题及解决办法写出来供大家参考。
一、JSP页面显示乱码
下面的显示页面(display.jsp)就出现乱码:
<html>
<head>
<title>JSP的中文处理</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<%
out.print("JSP的中文处理");
%>
</body>
</html>
对不同的WEB服务器和不同的JDK版本,处理结果就不一样。原因:服务器使用的编码方式不同和浏览器
对不同的字符显示结果不同而导致的。解决办法:在JSP页面中指定编码方式(gb2312),即在页面的第一
行加上:<%@ page contentType="text/html; charset=gb2312"%>,就可以消除乱码了。完整页面如下
:
<%@ page contentType="text/html; charset=gb2312"%>
<html>
<head>
<title>JSP的中文处理</title>
<meta http-equiv="Content-Typ ......
我要调用JExcelApi 读取用户在客户端选择的Excel中的文件中的数据,
我是这样做的:
首先做一个页面upLoadExcel.jsp让用户选择本地的Excel文件,我就是用的上传的那个页面:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META content="MSHTML 5.00.2920.0" name=GENERATOR></HEAD>
<BODY bgColor=#e6e6e6><BR>
<FORM action="upToDataBase.jsp" encType=multipart/form-data method=post>
<TABLE>
<TBODY>
<TR>
<TD><FONT color=# ......
1. 怎么在多个JSP页面之间进行参数传递?需要使用JSP的内置作用域对象session。利用它的两个方法setAttribute(),getAttribute()
2. 下面的这个实例实现了把第一个JSP页面的参数传递给第三个页面的功能
3. 代码如下:1.jsp
[img][/img]
<html>
<form method=get action=2.jsp>
what's your name<input type=text name=username>
<input type=submit value=submit>
</form>
</html>
4. 2.jsp
<html>
<form method=post action="3.jsp?pass=11">
<%
String name=request.ge ......
JSP脚本中包含9个内置对象,这9个内置对象都是Servlet API接口的实例,只是JSP规范将它们完成了默认初始化(由JSP页面对应Servlet的_jspService()方法来创建这些实例)。也就是说,它们已经是对象,可以直接使用。9个内置对象依次如下:
application:javax.servlet.ServletContext的实例,该实例代表JSP所属的Web应用本身,可用于JSP页面,或者Servlet之间交换信息。常用的方法有getAttribute(String attName)、setAttribute(String attName , String attValue)和getInitParameter(String paramName)等。
config:javax.servlet.ServletConfig的实例,该实例代表该JSP的配置信息。常用的方法有getInitParameter(String paramName)和getInitParameternames()等方法。事实上,JSP页面通常无须配置,也就不存在配置信息。因此,该对象更多地在Servlet中有效。
exception:java.lang.Throwable的实例,该实例代表其他页面中的异常和错误。只有当页面是错误处理页面,即编译指令page的isErrorPage属性为true时,该对象才可以使用。常用的方法有getMessage()和printStackTrace()等。
out:javax.servlet.jsp.JspWriter的实例,该实例代表JSP页面的 ......