你的位置:首页 > Java教程

[Java教程]用JSP实现动态交互


一、什么是JSP?
1、在HTML中嵌入Java脚本代码
2、由应用服务器中的JSP引擎来编译和执行嵌入的Java脚本代码
3、然后将生成的整个页面信息返回给客户端

 
二、为什么需要基于B/S技术的动态网页?

使用动态网页,可以动态输出网页内容、同用户进行交互、对网页内容进行在线更新

三、B/S技术的特点是什么?
1、解释执行HTML文件
2、运行JSP等服务器端程序
四、Web容器处理JSP文件请求需要经过3个阶段:
1、翻译阶段
2、编译阶段
3、执行阶段
注意:第一次请求之后,Web容器可以重用已经编译好的字节码文件
注意:如果对JSP文件进行了修改,Web容器会重新对JSP文件进行翻译和编译
 
五、JSP 页面组成
JSP 页面的元素包括
1、静态内容(HTML静态文本)
2、指 令(以“<%@ ” 开始,以“%> ” 结束。比如:<%@ include file = " Filename" %>)
3、表达式(<%=Java表达式 %>)
4、小脚本(<% Java 代码 %>)
5、声 明(<%! 方法 %>)
6、注释(<1、!-- 这是注释,但客户端可以查看到 -->  2、 <%-- 这也是注释,但客户端不能查看到 --%>)
 
六、什么是page指令?
Øpage指令
Ø通过设置内部的多个属性来定义整个页面的属性
Ø语法:<%@ page 属性1="属性值" 属性2="属性值1,属性值2"… 属性n="属性值n"%>
 
七、JSP中的注释
Ø合理、详细的注释有利于代码后期的维护和阅读
 
Ø在JSP文件的编写过程中,共有三种注释方法:
ØHTML的注释:<!-- html注释-->
ØJSP注释:<%-- JSP注释--%>
Ø在JSP脚本中注释:
<% //单行注释 %>
<%  /*多行注释 */ %>

 
八、Web程序的调试与排错
Ø在运行Web程序时,常犯的一些错误有:
Ø未启动Tomcat服务,或者没有在预期的端口中启动Tomcat服务
Ø未部署Web应用,就试图运行Web程序
Ø运行时,URL输入错误
Ø存放文件的目录无法对外引用,如:文件放入了WEB-INF、META-INF等文件夹

 
九、什么是JSP内置对象
ØJSP内置对象是 Web 容器创建的一组对象
ØJSP内置对象的名称是JSP 的保留字
ØJSP内置对象是可以直接在JSP页面使用的对象,无需使用“new”获取实例
<%	request.setCharacterEncoding("GBK");	String titleName = 		request.getParameter("titlename");%>

Ø常用的JSP内置对象
1、out
2、session
3、request
4、application
5、response
 
十、JSP内置对象request 
request对象主要用于处理客户端请求

request对象常用方法

          方法名称

            说  明

String   getParameter(String name)

根据页面表单组件名称获取页面提交数据

String[   ] getParameterValues(String name)

获取一个页面表单组件对应多个值时的用户的请求数据  

void   setCharacterEncoding(String charset)

指定每个请求的编码,在调用getParameter( )之前进行设定,可以解决中文乱码问题

String   getRemoterAddr()

返回提交请求的客户机的IP地址


JSP内置对象request案例
Ø注册页面

 <form name="form1" method="post" action="reginfo.jsp">  <table border="0" align="center">   <tr> <td>用户名</td><td> <input type="text" name="name"></td></tr>   <tr><td>密码</td><td > <input type="password" name="pwd"> </td></tr>   <tr> <td>你喜欢的水果:</td><td>     <input type="checkbox" name="channel" value="苹果"> 苹果 <input type="checkbox" name="channel" value="梨"> 梨     <input type="checkbox" name="channel" value="西瓜"> 西瓜      <input type="checkbox" name="channel" value="香蕉"> 香蕉    </td></tr>    <!-- 以下是提交、取消按钮 -->  </table></form>

Ø信息读取显示页面
  //在进行页面开发时,存在多种字符集编码设置,我们只需要在页面设置支持中文字符的字符集就可以了//设置读取请求信息的字符编码为GBK或者GB2312或者UTF-8  request.setCharacterEncoding(“utf-8");    <%  //读取用户名和密码  String name = request.getParameter("name");  String pwd = request.getParameter("pwd");  …HTML页面代码…  //读取复选框选择项  String[] channels = request.getParameterValues("channel");  if (channels != null) {       for (int i = 0; i < channels.length; i++) {  out.println(channels[i]);       }  }%>

 


 





Øpage指令常用属性
 

      属性

描述

默认值

 

 

 

 

language

指定JSP页面使用的脚本语言

java

import

通过该属性来引用脚本语言中使用到的类文件

contentType

用来指定JSP页面所采用的编码方式

text/html,  

ISO-8859-1