大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
页面介绍
login.jsp
用户登录页面,提交给process.jsp。
process.jsp
处理页面,若用户名为“admin”,密码为“000”,则跳转到show.jsp,否则跳转login.jsp。
show.jsp
列出登录页面的属性。
源代码
login.jsp
<form action="process.jsp" method="post">
用户名:<input name="username" value="" /><br>
用户密码:<input name="pwd" value="" /><br>
用户性别:<input type="radio" name="sex" value="男">男
<input type="radio" name="sex" value="女">女<br>
用户爱好:<input type="checkbox" name="hobby" value="游泳">游泳
<input type="checkbox" name="hobby" value="看书">看书
<input type="checkbox" name="hobby" value="看电影">看电影
<input type="checkbox" name="hobby" value="写代码">写代码<br>
用户籍贯:<select name="home">
<option value="广州">广州</option>
<option value="重庆">重庆</option>
<option value="上海">上海</option>
</select>
<br>
<input type="submit" value="提交">
<input type="reset" value="重置">
</form>
process.jsp
<%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
request.setCharacterEncoding("utf-8");
String username = request.getParameter("username");
String pwd = request.getParameter("pwd");
String[] hobby = request.getParameterValues("hobby");
String sex = request.getParameter("sex");
String home = request.getParameter("home");
if("admin".equals(username) && "000".equals(pwd)){
session.setAttribute("username", username);
session.setAttribute("hobby", hobby);
session.setAttribute("home", home);
session.setAttribute("sex", sex);
request.getRequestDispatcher("show.jsp").forward(request, response);
}
else{
response.sendRedirect("login.jsp");
}
%>
show.jsp
<% request.setCharacterEncoding("utf-8"); %>
用户姓名:<%= session.getAttribute("username")%><br>
用户性别:<%= session.getAttribute("sex")%><br>
用户爱好:<%
String[] hobby = (String[])session.getAttribute("hobby");
for(int i=0; i<hobby.length; i++)
out.println(hobby[i]+" ");
%><br>
用户籍贯:<%= session.getAttribute("home")%><br>
说明
1、获取表单中对应name属性值的存放的value
String <变量名> = request.getParameter("<表单中的name属性值>");
2、获取表单中复选框选中的所有值,存放在数据中
String[] <一维数组名> = request.getParameterValues("<表单中复选框统一的name属性值>");
3、把数组传入sesstion
session.setAttribute("<存放的变量名或数组名>", <当前页面的变量名或数组名>);
4、在另一页面传出session中存的值
//单值session
<%= session.getAttribute("<变量名>"); %>
//数组session
String[] <数组名> = (String[])session.getAttribute("<数组名>");
for(int i=0; i<<数组名>.length; i++)
out.println(<数组名>[i]+" ");
5、重定向和转发
//转发
request.getRequestDispatcher("xxx.jsp").forward(request, response);
//重定向
response.sendRedirect("xxx.jsp");
重定向不传数据,地址栏发生变化;
转发是在同一个请求里,地址栏不发生变化。
当需要保存一个内容的时候,使用转发;不需要保存内容的时候,使用重定向。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/186936.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...