一 jsp的九个内置对象
(1)概念及作用:是同一连接者所有页面公有的内置对象
(2)生命周期:从使用到30分钟后销毁,也可以直接调用invalidate()方法销毁
2 request(请求):
(1)概念及作用:在浏览器中输入URL访问jsp界面的过程
(2)生命周期:请求页面执行完
3 response(响应):web容器接收到请求后通过处理生成的html页面返回到客户端的过程
4 out(输出):向浏览器页面上输出内容
5 application(应用):是所有连接者所有页面公有的内置对象
(1)概念及作用:是所有连接者所有页面公有的内置对象
(2)生命周期:从web应用程序启动一直到web容器关闭为止
6 pageContext(当前页的上下文):只在当前页面可以访问
7 Exception(异常):代表jsp页面在运行时的异常,该对象只有在错误页面中才可以使用
8 page:代表当前jsp页面的实例对象
9 config对象可以读取web.xml配置文件中的内容
二 存储范围
1 pageContext:在本jsp页面中
2 request:在一次起请求和一次响应之间
3 session:在一个访问会话中,多次请求与响应
4 application:在web应用程序运行期间
三 含入
1 静态含入:include指令<%@include file=""%>
2 动态含入:动作标签<jsp:forward page="xxx.jsp"></jsp:forward>
3 两者的区别:静态含入:将文件的源代码拷贝到当前行
动态含入:将被含入的文件的运行结果拷贝到当前行
四 页面跳转
1 请求转发:通过RequestDispatcher对象完成
RequestDispatcher rd = request.getRequestDispatcher(“xxx.jsp”);
rd.forward(request,response);
2 重定向:由response的方法sendRedirect实现
response.sendRedirect(“xxx.jsp”);
3 两者的区别:
(1)请求转发:无论转发多少次,都在一个请求中,请求没有结束,地址只显示第一个被请求的页面地址,由内置对象request实现
(2)重定向:前一个请求结束,新的请求开始,地址显示最后一个重定向页面的地址,由内置对象response实现
五 其他
1 页面传参的方式:
(1)通过session的setAttribute()方法和getAttribute()方法
(2)URL传参:?将参数带到新的页面
(3)使用cookie传参
2 中文不乱码设置
(1)post方式提交表单:request.setCharacterEncoding("UTF-8");
(2)get方式提交表单:将获取到的表单数据重新赋值:
String flightId=request.getParameter("flightId");
flightId=new String(flightId。getBytes("iso-8859-1"),"UTF-8")
一 业务和技术
1 业务:与用户之间的交流:注册,添加用户信息,发表文章,登录,改密码
2 技术:利用增删改查(CRUD)
二 页面间传参
1 表单提交:通过表单提交将表单数据发送到另一个页面
(1)hidden:实现用户不需要填写,但程序需要
(2)checkbox:复选框,获取数组
(3) radio:单选框,name一致,互斥
(4)select:下拉框
2 URL传参:
(1)?在页面之间传参数
(2)效果同表单的get提交方式和超链接
3 cookie传参
(1)获取到数据后设置cookie
(2)使用获取的数据时在使用cookie取值
4 session传参
(1)通过session的setAttribute()方法来记住参数
(2)再通过session的getAttribute()方法来获取
5 application传参
用法同session
三、JSP开发模式
1 Model1开发模式:Model1 使用JSP+JavaBean将页面显示与业务逻辑处理分开 JSP直接调用javabean
2 Model2 开发模式与MVC:Model2是Model1的升级 符合MVC Model2 介苗提交给Servlet Servlet调用javabean