一、什么是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

用JSP实现动态交互的更多相关文章

  1. Ajax实现xml文件数据插入数据库(二)--- ajax实现与jsp的数据交互。

    在上一篇文章中我们成功得到了重新组织后的数据,接下来需要做的便是将数据插入到数据库中了.在与数据库打交道的过程中有一些方法是普遍的,我们将这些通用方法封装到一个DbUtil类中,以便复用,封装好的Db ...

  2. javaweb 与jsp页面的交互流程 (初次接触时写)

    javaweb 与jsp页面的交互流程 javaweb项目目录 1. javaweb项目的一般目录: 2. jsp 页面一般情况下放在 top(前台页面) back(后台页面) 3. 后台代码 放在s ...

  3. 实验二 JSP基本动态元素的使用

    实验二  JSP基本动态元素的使用 实验性质:验证性          实验学时:  2学时      实验地点: 一 .实验目的与要求 1.掌握JSP中声明变量.定义方法.java程序片及表达式的使 ...

  4. 静态网页怎样实现动态交互?-JavaScript

    在Html基础上,javascript能够开发交互式web网页.javascript的出现使得网页和用户之间实现了一种实时性的.动态的.交互性的关系,javascript短小精悍,又是在客户机上执行的 ...

  5. jsp页面动态获取系统时间

    最近在做练习时碰到了这样一个问题:"读者选择查询图书相应信息,跳转到书目的详细信息界面,当可借阅数量大于零,点击借阅按钮,提示用户借阅成功,并显示归还日期(三个月),否则提示用户该书可借阅数 ...

  6. jsp的动态包含和静态包含

    jsp的动态包含和静态包含 例如:提取一个公共的页面(top.jsp)到/WEB-INF/jsp/common/目录下 动态包含: 被包含的页面也会独立编译,生成字节码文件,一般包含页面信息频繁变化的 ...

  7. 使用JSP开发动态网站基础

    1. 什么是动态网页? 动态网页是指在服务器端运行的程序或者网页,它们会随不同客户.不同时间,返回不同的网页. 注意:在静态网页中插入flash ,虽然flash是在动的,但是并不是说这个网页就是动态 ...

  8. JSP中动态INCLUDE与静态INCLUDE的区别

    动态INCLUDE 用法: <jsp:include page="included.jsp" flush="true" /> 说明: 它总是会检查所 ...

  9. JSP中动态include和静态include的区别(简版)

    动态的include: 用法:<jsp:include page="1.jsp" flush="true" /> 特点:行为元素,可以带参数:先编译 ...

随机推荐

  1. Django-搭建win7虚拟环境-virtualenv

    为什么要配置Django虚拟环境? 例如:在开发Python Django的时候,系统安装的Python3只有一个版本:3.6.所有第三方的包都会被pip安装到Python3的site-package ...

  2. controller 接口写法

    import org.apache.commons.io.IOUtils; import javax.servlet.ServletInputStream; @RequestMapping(" ...

  3. SCU Censor

    Censor frog is now a editor to censor so-called sensitive words (敏感词). She has a long text p . Her j ...

  4. [转]十五天精通WCF——第十二天 说说wcf中的那几种序列化

    我们都知道wcf是由信道栈组成的,在我们传输的参数走到传输信道层之前,先需要经过序列化的过程,也就是将参数序列化为message,这篇 我们就来说说这里的序列化,蛮有意思的,可能初学者也明白,在wcf ...

  5. HDU 5288

    //枚举因子,查找和i最近的左右是i因子的点即可. #include <iostream> #include <cstdio> #include <algorithm&g ...

  6. 2.5-冗余VLAN

    2.5-冗余VLAN     High-Availability(AH) First hop routers on the LAN redundancy Network/首跳冗余网络(出口第一个网络) ...

  7. linux驱动由浅入深系列:tinyalsa(tinymix/tinycap/tinyplay/tinypcminfo)音频子系统之一【转】

    本文转载自:http://blog.csdn.net/radianceblau/article/details/64125411 目前linux中主流的音频体系结构是ALSA(Advanced Lin ...

  8. 【POJ 3076】 Sudoku

    [题目链接] http://poj.org/problem?id=3076 [算法] 将数独问题转化为精确覆盖问题,用Dancing Links求解 [代码] #include <algorit ...

  9. 【NOI 2014】 动物园

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=3670 [算法] KMP [代码] #include<bits/stdc++.h ...

  10. bzoj2595 [Wc2008]游览计划——斯坦纳树

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2595 今天刚学了斯坦纳树,还不太会,写一道题练习一下: 参考了博客:http://www.c ...