JSP九大内置对象
1、out:当前输出对象,相当于可以作为输出
<%String str="haha";
//使用out对象输出,只能在脚本中使用
out.print(str);
%>
2、page:当前页对象
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
3、request:请求对象,一次请求,多次转发,在转发的时候地址栏不会有变化,请求时可以携带参数
<%
//获取请求中携带的信息
String name=request.getParameter("uname");
String pwd=request.getParameter("pwd");
//中文乱码处理方案1(get请求)
//name=new String(name.getBytes("ISO-8859-1"),"utf-8");
//中文乱码处理方案2(get请求)
//request.setCharacterEncoding("utf-8");
//中文乱码处理方案3(修改tomcat配置)
//判断用户信息是否正确,转发到对应的页面
if("admin".equals(name)){
//请求转发到sucess.jsp
request.setAttribute("msg","登陆成功");
request.getRequestDispatcher("success.jsp").forward(request,response);
}else{
request.getRequestDispatcher("error.jsp").forward(request,response);
}
%>
4、response:请求对象,最少是两次请求,在请求过程中地址栏会发生改变,不能携带参数
<%
String DRIVER="com.mysql.jdbc.Driver";
String URL="jdbc:mysql://localhost:3306/staff?characterEncoding=UTF-8";
//private static String URL=null;
String USER="root";
//private static String USER=null;
String PASSWORD="123456";
//private static String PASSWORD=null;
Connection conn;
try {
Class.forName(DRIVER);
conn=DriverManager.getConnection(URL,USER,PASSWORD);
if(conn!=null){
//定义sql语句
String sql="select * from t_staff";
//预编译
Statement ps=conn.createStatement();
ResultSet rs=ps.executeQuery(sql);
out.print("1");
List<Map<String,Object>> list=new ArrayList();
while(rs.next()) {
Map<String,Object> map=new HashMap<>();
int eno = (rs.getInt(1));
String name = (rs.getString(2));
int sex = (rs.getInt(3));
String phone = (rs.getString(4));
Date hirDate = (rs.getDate(5));
int flag = (rs.getInt(6));
map.put("eno",eno);
map.put("name",name);
map.put("sex",sex);
map.put("phone",phone);
map.put("hirDate",hirDate);
map.put("flag",flag);
list.add(map);
}
session.setAttribute("list",list);
response.sendRedirect("member-list.jsp");
}else {
out.print("数据库连接问题");
}
} catch (Exception e) {
e.printStackTrace();
}
%>
5、session:会话,一个浏览器就相当于一次会话,关闭之后就相当于会话关闭了
//创建业务层对象获取值
IEmpService iEmpService=new IEepServiceImpl();
if("query".equals(option)) {
//创建集合对象,用于包装查询出来的数据
List<Emp> emplist = iEmpService.QueryList();
session.setAttribute("emplist",emplist);
6、application:全局对象(上下文对象):可以在整个Web工程中都可以使用
7、exception:异常处理对象(不常用)
8、pageContext:页面上下文对象(不常用)
9、config:配置对象(常用)
四大作用域
1、pageContext:当前页生效
2、request:一次请求中生效
3、session:一次会话中生效
4、application:整个web项目中生效