A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 北葵向暖 初级黑马   /  2019-5-24 16:30  /  512 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Jsp
1. JSP的脚本:JSP定义Java代码的方式
                1. <%  代码 %>:定义的java代码,在service方法中。service方法中可以定义什么,该脚本中就可以定义什么。
                2. <%! 代码 %>:定义的java代码,在jsp转换后的java类的成员位置。
                3. <%= 代码 %>:定义的java代码,会输出到页面上。输出语句中可以定义什么,该脚本中就可以定义什么。
2.内置对象(9种)
Out
作用:主要用来向客户端输出数据
作用域:page。也就是说,每个页面都有一个自己的out对象。
重要方法:print()/println()/write()    向客户端页面输出数据
举例:
out.write("文字内容");

Request
重要方法:

getParameter(key) 获取提交表单的数据

getParameterValues(key) 获取提交表单的一组数据

request.getRequestDispatcher("list.jsp").forward(request,response) 转发(通过代码的方式进行转发)

request.setAttribute(key,object) 设置请求对象的属性

request.gettAttribute(key) 获取请求对象的属性

request.setCharacterEncoding("UTF-8") 对请求数据重新编码

Response
描述:它封闭了JSP 的响应,然后被发送到客户端以响应客户的请求。
作用域:page
重要方法:
response.sendRedirect("页面"):页面跳转。注意,之前的forward是转发,这里是跳转,注意区分。

response.setCharacterEncoding("gbk"):设置响应编码
注意,response.sendRedirect("页面")这个方法,是实现页面跳转,而不是转发。
【举例】现在需要做的是,如果登陆失败,我们就跳到另外一个界面,而不再是转发了。
Session
session.getid():取得session的id号.id由tomcat自动分配。

session.isnew():判断session时候是新建的

session.setAttribute(key,object):往当前会话中设置一个属性

session.getAttribute(key):获取当前会话中的一个属性

session.removeAttribute(key):删除当前会话中的属性

session.setMaxInactiveInterval(1000*60*30):设置当前会话失效时间(ms) 。Tomcat默认的会话时间为30分钟。

session.invalidate():初始化当前会话对象(一般在推出的时候使用,可以删除当前会话的数据)

会话结束的条件之一:
服务器关闭
会话过期(一段会话时间默认为30分钟)
手动终止会话
核心代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
2     pageEncoding="UTF-8"%>
3 <%
4 //获取请求数据
5 //设置请求方式的编码
6 request.setCharacterEncoding("UTF-8");
7 String name = request.getParameter("user");
8 String pwd = request.getParameter("pwd");
9
10 if("smyh".equals(name) && "007".equals(pwd)) {
11     //将用户名、密码保存到当前会话当中
12     session.setAttribute("name", name);
13     session.setAttribute("pwd", pwd);
14     //如果登陆成功,就跳到session-success.jsp页面
15     response.sendRedirect("session-success.jsp");   
16     
17     System.out.println(session.getId()); //获取当前回话的id
18     //session.setMaxInactiveInterval(1000*60*30); //设置当前session的有效时间
19     //session.invalidate()  //设置session重新初始化,在系统退出时使用
20 }else{
21     response.sendRedirect("fail.jsp");
22 }
23 %>

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马