一、jsp中java小脚本
1.<% java代码段%> 2.<% =java表达式%>不能有分号 3.<%!成员变量和函数声明%>二、注释 1.<!--html注释-->客户端可以看到 2.<%--jsp注释--%>客户端不能看到三、jsp页面的的执行过程 1.客户端请求(输入URL) 2.服务器 (1)现将jsp翻译成.java文件(第一次请求) 如果是第二次请求,并且jsp页面内容未改变 (2)将java文件编译成.class文件 (3)执行.class文件 3.将执行后的结果和html静态内容发送到客户端 4.断开连接四、jsp内置对象 是由web容器创建的对象,可以直接用,不用再new 1.out:方法print(文本)向客户端输出内容 2.request:客户端请求内容 方法: getParameter(“键”),获取客户端提交的单个数据 getParameterValues(“键”)获取客户端提交的多个数据 setCharacterEncoding("编码")解决post提交方式的乱码 getRequestDispatcher("页面"):进行页面转发 3.response:响应客户端的请求,向客户端输出内容 方法 sendRedirect("页面");//进行页面重定向五、转发和重定向的区别 1.转发 a.服务器行为 b.客户端只发送了一次请求 c.保留请求数据,页面间可以共享数据 d.地址栏不改变 2.重定向 a.客户端行为 b.客户端发出了2次请求 c.不能保留数据,页面间不能共享数据 d.地址栏改变 六、会话:session 浏览器与服务器的一次通话(类似一次打电话) 1.会话跟浏览器是一一对应的 2.同一个浏览器不同请求是一次会话 3.不同浏览器就是不同会话 4.一般用于保存客户端特定的信息(临时) session失效: 1.原则上,浏览器关闭,session就失效(实际过程中不一定) 2.超过有效期失效 3.调用invalidate(),立即失效 方法: setAttribute(String key,object value),向session保存数据 object getAttribute(String key)向session读取数据 setMaxInactiveIntervals设置有效期 invalidate()使session失效 removeAttribute(String key)移除指定的session七、inlude指令:将页面信息包含到另一个页面(静态包含) <%@ include file="页面"%>八、application:应用程序级别的对象 各个客户端共享的数据 方法: setAttribute(String key ,object value) getAttribute(String key) getRealPath("虚拟路径");根据虚拟路径获取物理路径 九、Cookie: 保存特定客户端的信息 用法: 1.创建 Cookie ck=new Cookie(String key,String value) ck.setMaxAge("时间"),设置有效时间,不设置默认浏览器关闭时失效 2.保存 response.addCookie(ck); 3.读取cookie a.Cookie[]cks=request.getCookies(); b.遍历 getName():获取当前cookie的名字(键名) getValue():获取当前cookie的值十、session与cookie的区别 session cookie 保存在服务器的内存中 保存在客户端的硬盘上 保存object类型 保存String类型 保存临时数据 保存永久数据 安全性高 安全性差十一、JavaBean 是一个java类 从功能上来说,java类分为:业务类和数据类 一个java类符合以下要求才是JavaBean: 1.是一个公有类 2.有无参的公共的构造方法 3.属性私有:第一个字母小写 4.有getter和setter方法 (方法名格式:get属性名(大写),set属性名(大写))十二、内置对象补充 1.pageContext:当前页面执行期间的信息 2.page:当前jsp页面 3.config:配置jsp页面初始化数据 4.exception:异常十三、四大作用域(作用范围) 1.page:当前页面 2.request:一次请求同一个请求 3.session:同一个客户端 4.application:整个应用程序 十四、文件包含 1.include指令:<%@ include file="页面"%> 静态包含:将指定页面的内容复制到另一个页面,然后执行 2.include方法:pageContext.include("页面") 动态包含:先执行页面动态代码,然后将结果和静态代码包含到另一个页面十五、页面之间的传值 1.form表单传值 2.session传值 3.通过超链接(类似form表单 get提交) url?keyname=值1 &keyname=值 2