目录
一、使用idea运行java web项目
1.创建与配置
2.运行结果
二、、从request读取数据(get和post请求)
1.get请求
method="get"和地址栏、超链接、请求方式 默认都属于get提交方式
1.注册页面register.jsp
代码如下:
<html>
<head>
<title>Title</title>
</head>
<body>
<form action="show.jsp">
用户名:<input type="text" name="uname" /><br/>
密码:<input type="password" name="upwd" /><br/>
年龄:<input type="text" name="uage" /><br/>
爱好<br/>:
<input type="checkbox" name="uhobbies" value="足球"/> 足球
<input type="checkbox" name="uhobbies" value="篮球" /> 篮球
<input type="checkbox" name="uhobbies" value="乒乓球"/> 乒乓球<br/>
<input type="submit" value="注册">
</form>
</body>
</html>
2.展示页面show.jsp
代码如下:
<html>
<head>
<title>Title</title>
</head>
<body>
<%
// 设置编码
request.setCharacterEncoding("utf-8");
String name = request.getParameter("uname");
int age = Integer.parseInt(request.getParameter("uage"));
String pwd = request.getParameter("upwd");
String[] hobbies = request.getParameterValues("uhobbies");
%>
注册成功,信息如下:<br/>
姓名:<%=name%><br/>
年龄:<%=age%><br/>
密码:<%=pwd%><br/>
爱好:<br/>
<%
if(hobbies != null) {
for (String hobby : hobbies) {
out.print(hobby + " ");
}
}
%>
</body>
</html>
3.运行结果
修改为http://localhost:8888/jsp/register.jsp
运行结果如下:
http://localhost:8888/jsp/show.jsp?uname=lsy&upwd=121&uage=123&uhobbies=%E8%B6%B3%E7%90%83
输入内容后显示结果如下图:
2.post请求
3.get与post的区别
http://localhost:8888/jsp/show.jsp
设置method="post"即可
- get方式在地址栏显示请求信息(但是地址栏能够容纳的内容有限,4-5kb);post不显示
- 文件上传操作必须是post,一般推荐使用post
三、response:响应对象
1.提供的方法
- void addCookie( Cookie cookie ); 服务端向客户端增加cookie对象
- void sendRedirect(String location ) throws IOException; :页面跳转的一种方式(重定向)
- void setContetType(String type):设置服务端响应的编码(设置服务端的contentType类型)
2.请求转发(forward)、重定向(redirect)的区别
请求转发(forward) | 重定向(redirect) | |
---|---|---|
地址栏是否改变 | 不变(check.jsp) | 改变(success.jsp) |
是否保留第一次请求时的数据 | 保留 | 不保留 |
请求次数 | 一次 | 两次 |
3.示例
- 编写三个jsp
- http://localhost:8888/jsp/login/login.jsp
- 请求转发(forward)
http://localhost:8888/jsp/login/check.jsp
重定向(redirect)
http://localhost:8888/jsp/login/success.jsp
四.cookie(客户端)和session(服务端)
1.cookie
Cookie(客户端,不是内置对象):Cookie是由 服务端生成的 ,再发送给客户端保存。
作用:提高访问服务端的效率,但是安全性较差。
2.session
Session是另一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上。这就是Session。客户端浏览器再次访问时只需要从该Session中查找该客户的状态就可以了。