课堂重要知识点:
1.什么是动态页面技术,动态页面技术的整个流程,?
2.jsp页面的结构?
3.内置对象
4.要注意的一些小问题
=================================动态页面技术及整体流程=====================================
1.动态页面技术(jsp)
jsp( java server page) ------------- 即: java服务器页面技术
jsp包括了 静态部分及动态部分,运行于服务器中
html 包含了java代码,必须运行在服务器,以完成翻译·运行的过程,最后返回给客户端
最后生成java,class文件都是放在tomcat的work目录下------work/Catalina/localhost/
=================================jsp页面的结构=============================================
1.静态元素: html ,css, javascript(包含注释)
2.动态部分:jsp元素(与java密切相关)
1.指令
编译指令:只在编译时起作用,不会有任何输出(import,包含一个小模块,导入标签库)
<%@ page 属性值="值"%> 导入类的说明,编码集
例:<%@ page language="java" import="java.util.*"%>
<%@ include file="文件名.jsp"%>包含另一个页面)(公用的模块)
例: <%@include file="header.jsp" %>
<%@ taglib prefix="前缀名" url="定义标签地址"%> 导入标签库。
动作指令:待续
2.小脚本,表达式和声明(小脚本和表达式是重点)
小脚本 <%%>用于写逻辑表达式
表达式 <%= %> 用于输出
声明 <%!%>在声明中只能有全局变量定义,及方法的定义。
全局变量累加在服务器未关掉的情况下,每一次页面加载都可以增一,但是局部变量不行,只能总是一。因为局部变量是· 在方法体内定义的,而全局变量是在类中定义的。
3.注释:
这个表示html注释,会输出到客户端,是会耗流量的。
<%-- --%>这个是jsp注释,只存在服务器,不耗流量,建议使用jsp注释。不然如果是手机用户,他们会杀人的
================================= 内置对象=============================================总共有九个内置对象(out request response application page)
首讲request:
request取参数之前必须要编码一次,避免乱码: request.setCharacterEncoding("utf-8");
用request获取参数,是根据name来取值的:
String uname=requet.getParameter("uname");
//String uname=request.getParameter("");只能取到单个值,如果一个参数有多个值,那么就要采用
String[] values=request.getParameterValues(" ");
=================================要注意的一些小问题==================================
1.关于换行:
jsp中,println只能控制在html源码中换行,没法在页面中换行。如果要在html页面进行换行。则必须采用html换行标签。
2.关于导包:
import用于导包,如此所示:import="java.util.*,java.text.SimpleDateFormat"
要导入多个包,只需要在双引号里面用逗号把多个包的包名隔开
3.关于页面代码的排版
网页同时存在html,css,javascript。排版由上到下应该是css,html,javascript
因为一旦javascript里面有复杂的逻辑存在,一下子加载不出来,可能会导致整个页面一下子空白,这是客户所无法接受的
4.静态包含和动态包含的区别
动态包含:
各个代码各自生成自己的html页面,然后再将各自生成的html代码组合起来。
静态包含:<%@ include file="included.htm" %>
将各自的jsp页面翻译成java之后合并到一起。
所以静态页面容易出现变量重复,就会报错(同一变量冲突);动态页面统一采用html标签,所以不会出现这种错误。
5.关于方法:
定义在类里面的方法是私有方法,别的页面用不到,没法公用,没法模块化。
6.关于浏览器缓存
定义了全局变量之后,查看同一个页面每一次加载后的结果,但是浏览器缓冲太慢。遇到这种情况,则在输入法瑞地址栏后面则加一个问号,然后后面随便加一点什么
7.关于tomcat:
修改jsp页面一般不用重新部署,但是有时进程冲突,也可能会出现极端情况。这时,只需要删掉CATALINA就可以了。在一起加载又会重新生成。