一,JSP 9大内置对象分别是什么?
final javax.servlet.jsp.PageContext pageContext;//页面上下文
javax.servlet.http.HttpSession session = null; //会话
final javax.servlet.ServletContext application; //应用
final javax.servlet.ServletConfig config;//配置
javax.servlet.jsp.JspWriter out = null;//输出
final java.lang.Object page = this;//页面
final javax.servlet.http.HttpServletRequest request;//请求
final javax.servlet.http.HttpServletResponse response;//响应
exception//异常
注意:JSP内置对象:不需要做任何声明就可以直接使用的对象。
二,JSP如何依赖导入?
pom.xml——>在dependencies标签中导入要导入的依赖——>在左上部分找到Maven点击——>点击刷新即可
三,如何使用内置对象之out?
在编写java代码中语法:out.pirnt("内容");
四,内置对象之request的常用方法?
方法名称 | 说明 |
String getParameter(String name) |
根据页面变淡组件名称获取页面提交数据 |
String[] getParameterValues(String name) |
获取一组以相同名称命名的表单组件提交的数据 |
void setCharacterEncoding(String charset) |
指定每个请求的编码,在调用request.getParameter()方法 之前进行设定,可以解决中文乱码问题 |
RequestDispatcher getRequestDispatcher(String path) |
返回一个javax.servlet.RequestDispatcher对象,该对象的 forword()方法用于转发请求 |
五,如何使用request进行交互?
1,使用方法request.getParameter("相应html name");
2,在body中使用<%=要展示的变量名%>
六,如何解决中文乱码问题解决?
1,post请求:
在获取请求参数值前,调用setCharacterEncoding("utf-8")方法处理。
2,get请求:
Tomcat对请求数据默认采用ISO-8859-1字符集进行解码。
治标不治本:将乱码字符串打散为byte数组,再通过new String()方法,使用指定的
集把byte数组构造为一个新的String。
治本:修改tomcat配置文件server.xml,添加URIEncoding="utf-8
String username = request.getParameter("username");
username = new String(username.getBytes("ISO-8859-1"),"utf-8");
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="utf-8"/>