JSP第八周作业

1.登陆
输入用户名密码,判断用户名和密码相同,登陆成功,session中保存用户的用户名,进入主页main.jsp,主页有一个退出按钮,点击,回到登陆页login.jsp。要求:退出登录后,如果在浏览器直接输入主页main.jsp,访问不了,直接跳到登陆页。

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>login</title>
    
  </head>
  
  <body>
   <form  name="form" action="dologin.jsp" method="post">
      用户名:<input type="text" name="uname"><br>
      密码:<input type="password" name="upwd"><br>
    <input type="submit" value="登录" >    
    </form>
  </body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>dologin</title>
    
  </head>
  
  <body>
     <%
    request.setCharacterEncoding("utf-8");
    String uname=request.getParameter("uname");
    String upwd=request.getParameter("upwd");
    if(uname.equals(upwd)){
        session.setAttribute("uname", uname);
        request.getRequestDispatcher("main.jsp").forward(request,response);
    }else{
    request.getRequestDispatcher("no.jsp").forward(request,response);
    }
     %>
  </body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>main</title>
    
  </head>
  
  <body>
    <h1>登陆成功!</h1>

    <%
        String uname = (String) session.getAttribute("uname");
        if (uname == null)
            response.sendRedirect("login.jsp");
            
    %>
    
    <form name="form1" action="logout.jsp" method="post">
    <input type="submit" value="退出登录">
    </form>
    
    
   
</body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<html>
<head>


<title>no</title>

</head>

<body>
    <h1>登陆失败!!</h1>
    <%response.setHeader("refresh", "5;url=login.jsp");%>

</body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>logout</title>
    
  </head>
  
  <body>
    <%
    session.invalidate();
    response.setHeader("refresh", "5;url=login.jsp");
     %>
  </body>
</html>

 

 

 

 

 

 

 

 

 2.购物车
和上一题一起,在main.jsp中做一个购物车,里面显示3个商品名和价格 每一个后面有一个加入购物车按钮,main.jsp中有一个按钮(或者超链接)可以显示购物车。(选作:在购物车中加删除按钮删除商品)

package ccc;

public class bbb {
    String name;
    String price;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPrice() {
        return price;
    }
    public void setPrice(String price) {
        this.price = price;
    }
    
    public bbb(String name, String price) {
        super();
        this.name = name;
        this.price = price;
    }
    
    

}
<%@page import="ccc.bbb"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>main</title>
    
  </head>
  
  <body>
    <h1>登陆成功!</h1>

    <%
        request.setCharacterEncoding("utf-8");

        String name1 = request.getParameter("name");
        String price1 = request.getParameter("price");
        if (name1 != null) {
            String name = new String(name1.getBytes("ISO-8859-1"), "utf-8");
            bbb b = new bbb(name,price1);
            ArrayList<bbb> list = (ArrayList<bbb>) session
                    .getAttribute("list");
            if (list == null) {
                list = new ArrayList<bbb>();
            }
            list.add(b);
            session.setAttribute("list", list);

        }

        String uname = (String) session.getAttribute("uname");
        //如果他是空,说明没登陆,直接访问该页面了
        if (uname == null) {
            response.sendRedirect("login.jsp");
        } else {
    %>
    
    <a href="logout.jsp">退出</a>
    <br> 铅笔 2.5
    <a href="main.jsp?name=铅笔&price=2.5">加入</a>
    <br> 橡皮 1.2
    <a href="main.jsp?name=橡皮&price=1.2">加入</a>
    <br> 书包 50
    <a href="main.jsp?name=书包&price=50">加入</a>
    <br>

    <form action="show.jsp">
        <input type="submit" value="查看购物车">

    </form>
    
    <%} %>
   
</body>
</html>
<%@page import="ccc.bbb"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>show</title>
    
  </head>
  
  <body>
   欢迎来到购物车 <a href="logout.jsp">退出</a><br>


<%
//从session中拿到集合,遍历
    ArrayList<bbb> list=(ArrayList<bbb>)session.getAttribute("list");
    if(list!=null){
        for(int i=0;i<list.size();i++){
            out.print(list.get(i).getName()+","+list.get(i).getPrice());
            out.print("<a href='del.jsp?name="+list.get(i).getName()+"'>删除</a><br>");
            
            
        }
    }
    

 %>
<a href="main.jsp">返回购物页面</a>


  </body>
</html>
<%@page import="ccc.bbb"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<html>
<head>
<title>del</title>

</head>

<body>

<%
    String name1 =request.getParameter("name");
    String name=new String(name1.getBytes("ISO-8859-1"),"UTF-8");
    ArrayList<bbb> list=(ArrayList<bbb>)session.getAttribute("list");
    for(int i=0;i<list.size();i++){
        if(list.get(i).getName().equals(name))
            list.remove(i);
    }
    session.setAttribute("list", list);
    response.sendRedirect("show.jsp");



 %>


</body>
</html>

 

 

 

posted @ 2022-04-23 14:34  请叫我妖玉大侠  阅读(32)  评论(0编辑  收藏  举报