Java Web实验(二) JSP应用

1、登录页面 设计实现一个登录页面,使用表单进行提交。页面应包含的元素如图 3-1 所 示,注意选取适当的输入元素类型,并对其命名;表单的 action 属性设置应指向 所设计的校验页面。

                                                 图 3-1 登录页面元素

login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登录界面</title>
</head>
<body>
   <form action="check.jsp" method="post">
    <table align="center">
      <tr>
       <td>用户:</td>
       <td><input type="text" name="username" placeholder="请输入用户名"/></td>
     </tr>
     <tr>
       <td>密码:</td>
       <td><input type="password" name="password" placeholder="请输入密码"/></td>
     </tr>
     <tr>
       <td><input type="submit" value="提交查询"/></td>
     </tr>
    </table>
   </form>
   
</body>
</html>

2、登录校验页面 需要读取前面登录页面中用户输入的用户名和密码,进行验证。验证要求包 括:用户名不为空;密码正确(为了简化设计,可以在 JSP 代码中设置固定的“正 确”密码)。如果用户通过验证,利用适当的 JSP 内置对象保存用户信息。

 可在request内置对象设置一个默认密码,我设的为307954028

check.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>验证界面</title>
</head>
<body>
<%
     request.setCharacterEncoding("utf-8");
     String name=request.getParameter("username");//获取用户名
     String password=request.getParameter("password");//获取密码
     if((name!=null)&&(password.equals("307954028"))){//设置默认密码
    	 request.setAttribute("username",name);
    	 RequestDispatcher dispatchar=request.getRequestDispatcher("./weclome.jsp");
    	 dispatchar.forward(request,response);//用户名不为空,且密码正确则进入welcome界面
     }else{
    	 RequestDispatcher dispatchar=request.getRequestDispatcher("./login.jsp");
    	 dispatchar.forward(request,response);//否则停留在登录界面
     }  
   %>  
   
</body>
</html>

3、登录后主页面 登录成功后,应自动转向主页面,在页面中显示:“欢迎,+用户名”。

 welcome.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
  out.print("欢迎你,"+request.getAttribute("username").toString());
%>
</body>
</html>

4、自动跳转要求 应在页面中实现如下自动跳转功能: (1)登录校验页面:验证通过,自动跳转到主页面;验证失败,自动跳转 到登录页面。 (2)主页面:如果没有经过用户验证,自动跳转到登录页面。

(二)实现一个简单留言板 1、留言页面  设计实现一个留言页面,使用表单进行提交。页面应包含的元素如图 3-2 所 示,注意选取适当的输入元素类型,并对其命名;表单的 action 属性设置应指向 所设计的添加留言页面。

register.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="show.jsp" method="post">
    <table align="center">
      <tr>
       <td>用户:</td>
       <td><input type="text" name="username" placeholder="请输入用户名"/></td>
     </tr>
     <tr>
       <td>留言:</td>
       <td><input type="text" name="message" placeholder="请输入留言"/></td>
     </tr>
     <tr>
       <td><input type="submit" value="提交"/></td>
     </tr>
    </table>
   </form>
</body>
</html>

图 3-2 留言页面元素

2、添加留言页面 需要读取留言页面中用户输入的用户名和留言,并获取用户所使用计算机的 IP 地址,按如下格式生成每条留言信息:“@ 说:”。 利用适当的 JSP 内置对象保存留言信息。 3、查看留言页面 在页面中显示所有留言信息,如图 4-2 所示。 图 4-2 查看留言页面示意 【提示】所有发布的 Web 应用,其他计算机都可以通过 Tomcat 服务器所在 计算机的 IP 地址访问

show.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="java.util.List,java.util.ArrayList"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%!
    ArrayList<String> list = new ArrayList<String>();//定义一个全局的集合,注意%后一定有!,否则为局部变量,不能储存全部留言
%>
<h1>留言区</h1><br/>
<%
        request.setCharacterEncoding("utf-8");
        String name=request.getParameter("username");
        String message=request.getParameter("message");
        String address=request.getRemoteAddr();//获取本机IP地址
        list.add(name+"@"+address+"@"+"说:"+message+"<br>");
        for(int i=0;i<list.size();i++){
            out.println(list.get(i));
        }
 %>
 <br/>
<a href="register.jsp">返回</a>
</body>
</html>

在这里定义一个List集合,就可以把每次留言的用户和内容都储存下来

 这里不要图省事把!去掉,把两对jsp标签合并,否则只能显示单次的留言。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

樊樊吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值