大学jsp实验6session
1、session对象的使用
(1)设计一个简单的在线问卷调查程序,共有3个页面,分别是one.jsp、two.jsp、three.jsp。
其中,shiyan6_1_one.jsp页面效果如下图所示:
例如:输入“九寨沟”,单击下一题按钮,即可进入shiyan6_1_two.jsp页面,two.jsp页面效果如下图所示:
例如:输入“三国演义”,单击提交按钮后,进入shiyan6_1_three.jsp页面,three.jsp页面效果如下图所示:
请写出相应代码:
shiyan6_1_one.jsp:
1 <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 <html> 3 <head> 4 <title>Title</title> 5 </head> 6 <body> 7 <h3>问题一</h3> 8 <hr> 9 <form action="shiyan6_1_two.jsp" method="post" name="one"> 10 你最想去的旅游胜地:<input type="text" name="trap"> 11 <input type="submit" value="下一题"> 12 </form> 13 14 </body> 15 </html>
shiyan6_1_two.jsp:
1 <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 <html> 3 <head> 4 <title>Title</title> 5 </head> 6 <body> 7 <h3>问题二</h3> 8 <hr> 9 <form action="shiyan6_1_three.jsp" method="post" name="one"> 10 你最喜欢的一本书:<input type="text" name="book"> 11 <input type="submit" value="提交"> 12 </form> 13 <% 14 request.setCharacterEncoding("utf-8"); 15 session.setAttribute("trap",request.getParameter("trap")); 16 %> 17 18 </body> 19 </html>
shiyan6_1_three.jsp:
1 <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 <html> 3 <head> 4 <title>Title</title> 5 </head> 6 <body> 7 <h3>感谢您的参与!你提交的信息如下:</h3> 8 <hr> 9 <% 10 request.setCharacterEncoding("utf-8"); 11 out.print("你最想去的旅游胜地:"+session.getAttribute("trap")+"<br>"); 12 out.print("你最喜欢的一本书:"+request.getParameter("book")); 13 %> 14 15 </body> 16 </html>
(2)编写3个JSP页面login.jsp、show.jsp和exit.jsp。
login.jsp页面效果图如下所示:
用户输入姓名提交给login.jsp页面,login.jsp页面将用户的姓名存放到用户的session中。
show.jsp的效果图如下图所示:
用户登录后,单击“看图”超链接,可以显示show.jsp页面。若用户没有登录,无法看到图像,且被重新定向到login.jsp页面。
当用户单击“退出”超链接时,请求exit.jsp页面,用户的sesion对象将被销毁,用户必须重新登录才能继续看图。exit.jsp页面效果图如下图所示:
请写出相应代码实现上述效果:
login.jsp:
1 <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 <html> 3 <head> 4 <title>Title</title> 5 </head> 6 <body> 7 <a href="login.jsp">登录</a> 8 <a href="show.jsp">看图</a> 9 <a href="exit.jsp">退出</a> 10 <br> 11 <p>输入名子就算登录了:</p> 12 <form action="login.jsp" method="post" name="login"> 13 <input type="text" name="username"> 14 <input type="submit" value="提交"> 15 </form> 16 <% 17 String username = request.getParameter("username"); 18 if(username==null||username.length()==0) { 19 username=""; 20 }else{ 21 session.setAttribute("username",username); //将名字存入用户的session中 22 } 23 %> 24 </body> 25 </html>
show.jsp:
1 <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 <html> 3 <head> 4 <title>show</title> 5 </head> 6 <body> 7 <a href="login.jsp">登录</a> 8 <a href="show.jsp">看图</a> 9 <a href="exit.jsp">退出</a> 10 <% 11 request.setCharacterEncoding("UTF-8"); 12 String username=(String)session.getAttribute("username"); 13 if(username==null||username.length()== 0) { 14 response.sendRedirect("login.jsp"); 15 }else{ 16 %> 17 <br><img src="images/hua.jpg"/> 18 <% 19 } 20 %> 21 </body> 22 </html>
exit.jsp:
1 <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 <html> 3 <head> 4 <title>Title</title> 5 </head> 6 <body> 7 <a href="login.jsp">登录</a> 8 <a href="show.jsp">看图</a> 9 <a href="exit.jsp">退出</a> 10 <% 11 session.invalidate(); 12 out.print("session会话失效,若想看图请重新登录!"); 13 %> 14 </body> 15 </html>
昔日我曾苍老,如今风华正茂(ง •̀_•́)ง