JSP 常用指令记录

2017-11-18  本文已影响13人  133sheiya
  1. JSP可以通过include指令来包含其他文件,被包含的文件可以是JSP文件、HTML文件或文本文件。包含的文件就好像是该JSP文件的一部分,会被同时编译执行
    格式为:
    <%@ include file="文件相对 url 地址" %>
    <%@ > 指令只是在运行时对所包含的文件进行处理。简单地将文件内容加入到jsp 页面中.从而将俩个文件合并成一个文件,jsp页面与它所包含的文件内容在逻辑和语法上都是独立的,当被包含的文件发生变化时,jsp页面看到的仍然是变化文件之前的内容。被包含的文件不会被jsp编译器编译。

而 <jsp:include>所包含的文件 当jsp页面运行时载入此文件。jsp编译器会对其进行编译。 最简单的验证方式就是 : 使用这俩个指令 引入 一个txt 文件。 txt 文件内含中文。 include 方式引入的文件。即使在 <meta>中做如下设置。

  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

也是显示乱码。

2.包含一个页面的时候,给下一个页面传递参数

  <jsp:include page="1.txt"></jsp:include>

      <jsp:include page="hello.jsp">

     <jsp:param value="10" name="num"/>
  </jsp:include>

在hello.jsp 页面读取参数

 <% String string = request.getParameter("num");
  String ageString = request.getParameter("age");
  out.print("年龄是:" + ageString);
  int n = 0 ;
  int sum = 0 ;
 if(string != null){
  
  out.print(string);
  n = Integer.parseInt(string);
 
for(int i = 1;i <= n; i ++){
    sum += i;
    out.println(sum);
}

}

%>
<% out.print("运行结果"); %>
<%= sum %>

读取所有参数

 Enumeration params = request.getParameterNames(); // 获取所有参数值
   while( params.hasMoreElements()){
   param = (String) params.nextElement();
   out.println("ParamName:" + param + "<br>");
   out.println("values:" + request.getParameter(param));
 }

3.使用response 进行页面重定向。

在 response.jsp页面对上一个页面输入的数据进行判断,如果输入的数据符合规定。则继续我们的操作逻辑,否则,重定向回 数据录入界面重新输入。

  <% String param = "";
   request.setCharacterEncoding("gb2312");

   param = request.getParameter("userName");

  if(param == null){ // 输入的数据为空
   
    param = "";
  }
  // 使用ISO - 8859 -1 字符集将 参数解码为字节序列,并将结果存储在字节数组中。
  byte []b = param.getBytes("ISO-8859-1"); 

  param = new String(b);

   if(param.equals("")){
    response.sendRedirect("index.jsp");
  }else{
   out.println("欢迎来到本页面");
 }

%>

response 实现的重定向和<jsp:forward>实现的重定向的最大区别为:
<jsp:forward> 动作元素只能在本网站中进行跳转, 而使用response.sendRedirect方法可以跳转到任何一个地址的页面

上一篇 下一篇

猜你喜欢

热点阅读