JSP和JavaBean测试

来源:互联网 发布:stl格式是什么软件 编辑:程序博客网 时间:2024/06/01 17:23

题目要求

1.New a web project, copy index.jsp to fold “WebRoot”, and override default one.
2.New a package “javaBean” under “src”, copy Student.java and StudentMgr.java to package javaBean.
3.You need to add a method to StudentMgr.java to get all students’ information.
4.You must use jsp:useBean to display all students’ information on index.jsp, something like the following (not exactly the same as following, which is only for reference):

<%@page import="entity.*"%><jsp:useBean id="userMgr" class="entity.UserMgr" scope="application"/>

5.You may use java code or Structs’ tag to display student list in index.jsp.
6.You need to new a jsp page called “edit.jsp”, when user click “edit” button, the responding student’s information will be display on this page for editing. But no action will be performed when user click “submit” button on edit.jsp.

All eight students’ information should be display in this way:

这里写图片描述

Note: “…” represents other six students’ information should be dispplayed in the same way as two students above.

已给程序

1、Student.java

package javaBean;public class Student {    private String studentID;    private String name;    private String major;    private String department;    private int sex;    public Student(){    }       public Student(String studentID, String name, String major,            String department, int sex) {        super();        this.studentID = studentID;        this.name = name;        this.major = major;        this.department = department;        this.sex = sex;    }    public String getStudentID() {        return studentID;    }    public void setStudentID(String studentID) {        this.studentID = studentID;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public String getMajor() {        return major;    }    public void setMajor(String major) {        this.major = major;    }    public String getDepartment() {        return department;    }    public void setDepartment(String department) {        this.department = department;    }    public int getSex() {        return sex;    }    public void setSex(int sex) {        this.sex = sex;    }}

2、StudentMgr.java

package javaBean;import java.util.ArrayList;public class StudentMgr {    private ArrayList<Student> studentList = new ArrayList<Student> ();    public StudentMgr() {               super();        Student s1 = new Student("LB20150044", "Adan Liu","Computer Science",                "Information Science and Engineering College",0);        Student s2 = new Student("LB20150054", "John Zhang","Computer Science",                "Information Science and Engineering College",1);        Student s3 = new Student("LB20150064", "Mike Wang","Computer Science",                "Information Science and Engineering College",0);        Student s4 = new Student("S20150011", "Qiang Liu","Software Engineering",                "Information Science and Engineering College",1);        Student s5 = new Student("S20150011", "Hua He","Software Engineering",                "Information Science and Engineering College",1);        Student s6 = new Student("S20150012", "Si Li","Software Engineering",                "Information Science and Engineering College",1);        Student s7 = new Student("S20150013", "Wu Wang","Software Engineering",                "Information Science and Engineering College",1);        Student s8 = new Student("S20150014", "Liu Zhao","Software Engineering",                "Information Science and Engineering College",1);        studentList.add(s1);        studentList.add(s2);        studentList.add(s3);        studentList.add(s4);        studentList.add(s5);        studentList.add(s6);        studentList.add(s7);        studentList.add(s8);    }}

3、index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">    <title>user list</title>    <meta http-equiv="pragma" content="no-cache">    <meta http-equiv="cache-control" content="no-cache">    <meta http-equiv="expires" content="0">        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">    <meta http-equiv="description" content="This is my page">    <!--    <link rel="stylesheet" type="text/css" href="styles.css">    -->  </head>  <body bgcolor="#F0F8FF">  <p>  <table width="95%" height=20>  <tr>  <td width="50%" align="left">  system admin-&gt;student management-&gt;student list  </td>  <td width="50%" align="right">  </td>  </table>    </p>  <hr noshade color="#0066cc"> student list:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <table width="95%" height="125" border="1">    <tr>      <th width="15%" height="46" bgcolor="#FF8B53" scope="col">studentID</th>       <th width="15%" height="46" bgcolor="#FF8B53" scope="col">name</th>        <th width="15%" height="46" bgcolor="#FF8B53" scope="col">sex</th>      <th  width="15%" bgcolor="#FF8B53" scope="col">major</th>      <th  width="15%" bgcolor="#FF8B53" scope="col">department</th>    </tr>    <tr>    <td align="center"></td>    <td align="center"></td>     <td align="center">     </td>    <td align="center"></td>    <td align="center"></td>        </tr>  </table></form>  </body></html>

时间要求
当堂测试,40min

实现

1、文件结构如下
文件结构

2、修改后的index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@ page import="javaBean.*" %><jsp:useBean id="studentMgr" class="javaBean.StudentMgr" scope="application"/><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">    <title>user list</title>    <meta http-equiv="pragma" content="no-cache">    <meta http-equiv="cache-control" content="no-cache">    <meta http-equiv="expires" content="0">        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">    <meta http-equiv="description" content="This is my page">    <!--    <link rel="stylesheet" type="text/css" href="styles.css">    -->  </head>  <body bgcolor="#F0F8FF">  <p>  <table width="95%" height=20>  <tr>  <td width="50%" align="left">  system admin-&gt;student management-&gt;student list  </td>  <td width="50%" align="right">  </td>  </table>    </p>  <hr noshade color="#0066cc"> student list:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <table width="95%" height="125" border="1">    <tr>      <th width="15%" height="46" bgcolor="#FF8B53" scope="col">studentID</th>       <th width="15%" height="46" bgcolor="#FF8B53" scope="col">name</th>        <th width="15%" height="46" bgcolor="#FF8B53" scope="col">sex</th>      <th  width="15%" bgcolor="#FF8B53" scope="col">major</th>      <th  width="15%" bgcolor="#FF8B53" scope="col">department</th>      <th  width="15%" bgcolor="#FF8B53" scope="col">edit</th>    </tr>    <%        java.util.ArrayList<Student> studentList = new java.util.ArrayList<Student>();        studentList=studentMgr.getStudentList();        for(Student student:studentList){     %>    <tr>    <td align="center"><%=student.getStudentID()%></td>    <td align="center"><%=student.getName() %></td>     <td align="center"><%=student.getSex() %>     </td>    <td align="center"><%=student.getMajor() %></td>    <td align="center"><%=student.getDepartment() %></td>    <td align="center"><input type="button" align="right" value="edit"      onclick="location.href='edit.jsp?studentID=<%=student.getStudentID() %>&name=<%=student.getName() %>&sex=<%=student.getSex()      %>&major=<%=student.getMajor() %>&department=<%=student.getDepartment() %>'"></td>         </tr>  <%    }   %>  </table></form>  </body></html>

3、添加的edit.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@ page import="javaBean.*" %><jsp:useBean id="studentMgr" class="javaBean.StudentMgr" scope="application"/><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">    <title>My JSP 'edit.jsp' starting page</title>    <meta http-equiv="pragma" content="no-cache">    <meta http-equiv="cache-control" content="no-cache">    <meta http-equiv="expires" content="0">        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">    <meta http-equiv="description" content="This is my page">    <!--    <link rel="stylesheet" type="text/css" href="styles.css">    -->  </head>  <body>    <p>  system admin-&gt;user management-&gt;edit user</p>    <form name="editform" method="post" action="">        <%         String studentID = request.getParameter("studentID");          String name = request.getParameter("name");         String major = request.getParameter("major");         String department = request.getParameter("department");         String sex = request.getParameter("sex");     %>        <table width="95%" height="389" border="0">            <tr>                <td>&nbsp;</td>                <td>studentID: <label> <input name=studentID type="text"                        id="studentID" value="<%=studentID%>" readonly="true">                </label></td>                <td>&nbsp;</td>            </tr>            <tr>                <td>&nbsp;</td>                <td>name: <label> <input name=name type="text"                        id="name" value="<%=name%>" readonly="true">                </label></td>                <td>&nbsp;</td>            </tr>            <tr>                <td>&nbsp;</td>                <td>sex: <label> <input name=sex type="text"                        id="sex" value="<%=sex%>" readonly="true">                </label></td>                <td>&nbsp;</td>            </tr>            <tr>                <td>&nbsp;</td>                <td>major: <label> <input name=major type="text"                        id="major" value="<%=major%>" readonly="true">                </label></td>                <td>&nbsp;</td>            </tr>            <tr>                <td>&nbsp;</td>                <td>department:<label> <input name=department type="text"                        id="department" value="<%=department%>" readonly="true">                </label></td>                <td>&nbsp;</td>            </tr>            <tr>                <td>&nbsp;</td>                <td>&nbsp;</td>                <td>&nbsp;</td>            </tr>            <tr>                <td>&nbsp;</td>                <td><label> <input type="submit" name="Submit"                        value="submit">                </label></td>                <td>&nbsp;</td>            </tr>        </table>    </form>    <p>        <br>    </p>  </body></html>

运行结果

index界面

edit界面

心得
1、程序中的不足,直接贴代码

<td align="center"><input type="button" align="right" value="edit"      onclick="location.href='edit.jsp?studentID=<%=student.getStudentID() %>&name=<%=student.getName() %>&sex=<%=student.getSex()      %>&major=<%=student.getMajor() %>&department=<%=student.getDepartment() %>'"></td>   

此处的传入的变量太多,如何简化是需要考虑的一个问题。这里或许可以使用javaBean来实现,等会若探索出来,就在后面补充修改后的代码。

2、测试体会

在课堂完成的大概只有60%,远低于我的期望。之前看的例子比测试要更复杂,为什么反而跌倒在这小测试上。究其原因,没有深入领悟jsp和javaBean的精髓。

路漫漫其修远兮,吾将上下而求索。

0 0
原创粉丝点击