1、应当注意写法的规范性,在JSP中%与=、@符号之间不能有空格,即必须写为<%=和<%@。否则运行时就会报错。
2、注意:
①<%@ page %>指令作用于整个JSP页面。可以对静态的包含文件起作用,但对于
这些动态的包含文件不起作用。
②可以在一个页面中多次使用<%@ page %>指令,但是除了import属性外,其他的属性只能用一次,不能重复使用。
3、技巧:
<%@ page %>指令可以放在JSP文件中的任何地方,它的作用范围都是整个JSP页面。不过,为了JSP程序的可读性,通常把它放在JSP文件的顶部。
4、注意:
①<%@ include file=”relativeURL” %>的包含文件可以是HTML文件、JSP文件、文本文件,或者只是一段Java代码。
②<%@ include file=”relativeURL” %>的包含过程是静态的,即被包含的文件将会被插入到JSP文件中去。
③被包含文件中不能和原文件标记冲突。不能使用和标记,因为这将会影响在原JSP文件中同样的标记,这样做会导致错误。
④被包含文件的路径名一般来说是指相对路径。
5、注意:
①标记从一个JSP文件向另一个文件传递一个包含用户
请求的request对象。 ②标记实现了页面重定向,所以该标记后面代码将不被 执行。 ③使用标记时,目标文件必须是一个能够处理参数的文 件。 ④如果使用了非缓冲输出,而且如果在使用之前JSP文 件已经有了数据,那么文件执行就会出错。
Servlet代码: package servlet; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.util.*; public class PostExample extends HttpServlet{ private static final String
CONTENT_TYPE=”text/html;charset=GBK”;
//Initialize global variables public void init() throws ServletException{ }
//Process the HTTP Post request public void doPost(HttpServletRequest request,HttpServletResponse response) throws
ServletException,IOException{ response.setContentType(CONTENT_TYPE); PrintWriter out=response.getWriter(); //在这里插入语句 out.println(""); out.println(""); out.println(""); out.println("
The servlet has received a POST.This is the reply.
"); //将上面一句替换 out.println(""); out.println(""); out.close(); } //Clean up resources public void destroy(){ } }
在程序中标明插入的地方插入如下代码: String name=request.getParameter("name"); String sex=request.getParameter("sex"); 在标明替换的地方换成如下代码: out.println("
:"+name+"
"); out.println("
性别:"+sex+"
"); 这样,得到了一个名为PostExample.java的文件。 讲到生成.class文件编译方法, 这里采用同样的编译方法, 在DOS 下用javac PostExample.java可以
编译生成PostExample.class文件。 在DOS下使用jar cvf * . jar PostExample.java可以编译生成 PostEple文件。 Servlet必须使用\Tomcat的webapps\ROOT\Web-INF目录下面的 web.xml文件进行注册。上面我们已经写了
一个名叫PostExample.java的Servlet,打开web.xml文件,在里面添 加如下代码: PostExample PostExample
PostExample /servlet/PostExample 其中的结构: PostExample PostExample//这里的PostExample就 是要调用的servlet类
名 表示指定包含的servlet类。 而以下的结构: PostExample /servlet/PostExample// /servlet/PostExample是添加在 这 里 的
localhost:8080后面的 表示指定HelloServlet应当映射到哪一种URL模式。
注意: 应该把C:\Tomcat\common\lib里面的servlet.jar文件复制到 C:\JDK\jre\lib\ext中,否则会出现无法
import javax.servlet.*的错误。 建立post.jsp文件,文件内容如下: 然后在Tomcat目录里面