库存物资管理系统(过关测试)

实验要求:

1.、有一个存放商品的仓库,每天都有商品出库和入库。 

2、每种商品都有名称、生产厂家、型号、规格等。 

3、出入库时必须填写出入库单据,单据包括商品名称、生产厂家、型号、规格、数量、日期、时间、入库单位(或出库单位)名称、送货(或提货)人姓名。

通过这次实验,我发现数据库的增删改查实验可以经由一个基本模板去演变,这样不但减少了工作量,同时使错误减少.

下面是此次测试的截图和代码

 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
 2 <% 
 3 request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 4 response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 5 %>
 6 <%
 7 String path = request.getContextPath(); //相对Path设置
 8 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
 9 %>
10 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
11 <html>
12   <head>
13     <title>库存物资信息录入 </title> <%--页面标题--%>
14     <body>
15     <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
16     <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
17     </div> 
18     <script type="text/javascript" language="JavaScript"> //JS
19     function validate()
20     {
21     var name = document.forms[0].name.value; //创建变量name
22     var factory = document.forms[0].factory.value; //创建变量teacher
23     var id = document.forms[0].id.value; 
24     var standard = document.forms[0].standard.value; //创建变量address
25     if(name.length <= 0){ //判断姓名位数,必填
26         alert("名称不能为空,请输入名称!");
27         return false;
28     }
29     else if(factory.length <= 0){ //判断年龄,必填
30         alert("请输入合法生产工厂!");
31         return false;
32     }
33     else if(id.length <= 0){ //判断学号位数,必填
34         alert("型号不能为空,请输入型号!");
35         return false;
36     }
37 
38     else if(standard.length <= 0){ //专业为必填
39         alert("规格不能为空,请输入商品规格!");
40         return false;
41     }
42     else{
43         return true;
44     }
45         //document.getElementById("form").submit();
46     }
47     </script>
48   </head>
49   <body>
50   <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
51   <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
52   </div> 
53   <br><%--换行--%>
54   <center>
55   <h2>库存商品信息录入</h2><hr size="1" noshade color="#000000"><%--横线--%>
56  <form action="insert.jsp" method="post" id="form" onSubmit="return validate()" ><%--跳转到insert.jsp文件,方法为post--%>
57     <table width="800" border="0" align="center"> <%--表格的宽为800,居中对齐--%>
58       <tr>
59         <td>库存商品名称:
60           <input type="text" name="name"></td>
61       </tr>
62       <tr>
63         <td>生产工厂:
64           <input type="text" name="factory"></td>
65       </tr>
66       <tr>
67         <td>型号: <input type="text" name="id"> </td>
68       </tr>
69        <tr>
70         <td>规格: <input type="text" name="standard"> </td>
71       </tr>
72       <tr>
73         <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="submit" type="submit" value="保存"/></td>
74       </tr>
75     </table>
76     <p>&nbsp;</p>
77   </form>
78   <a href="show.jsp">查询所有库存商品信息</a> <%--链接到学生信息查询页面--%>
79   </center>
80   </body>
81 </html>
DBUtil.java
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
<% 
request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
%>
<%
String path = request.getContextPath(); //相对Path设置
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
<html>
  <head>
    <title>库存物资信息录入 </title> <%--页面标题--%>
    <body>
    <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
    <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
    </div> 
    <script type="text/javascript" language="JavaScript"> //JS
    function validate()
    {
    var name = document.forms[0].name.value; //创建变量name
    var factory = document.forms[0].factory.value; //创建变量teacher
    var id = document.forms[0].id.value; 
    var standard = document.forms[0].standard.value; //创建变量address
    if(name.length <= 0){ //判断姓名位数,必填
        alert("名称不能为空,请输入名称!");
        return false;
    }
    else if(factory.length <= 0){ //判断年龄,必填
        alert("请输入合法生产工厂!");
        return false;
    }
    else if(id.length <= 0){ //判断学号位数,必填
        alert("型号不能为空,请输入型号!");
        return false;
    }

    else if(standard.length <= 0){ //专业为必填
        alert("规格不能为空,请输入商品规格!");
        return false;
    }
    else{
        return true;
    }
        //document.getElementById("form").submit();
    }
    </script>
  </head>
  <body>
  <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
  <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
  </div> 
  <br><%--换行--%>
  <center>
  <h2>库存商品信息录入</h2><hr size="1" noshade color="#000000"><%--横线--%>
 <form action="insert.jsp" method="post" id="form" onSubmit="return validate()" ><%--跳转到insert.jsp文件,方法为post--%>
    <table width="800" border="0" align="center"> <%--表格的宽为800,居中对齐--%>
      <tr>
        <td>库存商品名称:
          <input type="text" name="name"></td>
      </tr>
      <tr>
        <td>生产工厂:
          <input type="text" name="factory"></td>
      </tr>
      <tr>
        <td>型号: <input type="text" name="id"> </td>
      </tr>
       <tr>
        <td>规格: <input type="text" name="standard"> </td>
      </tr>
      <tr>
        <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="submit" type="submit" value="保存"/></td>
      </tr>
    </table>
    <p>&nbsp;</p>
  </form>
  <a href="show.jsp">查询所有库存商品信息</a> <%--链接到学生信息查询页面--%>
  </center>
  </body>
</html>
add.jsp
  1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
  2 <% 
  3 request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
  4 response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
  5 %>
  6 <%
  7 String path = request.getContextPath(); //相对Path设置
  8 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
  9 %>
 10 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
 11 <html>
 12   <head>
 13     <title>出入库单据信息录入 </title> <%--页面标题--%>
 14     <body>
 15     <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
 16     <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
 17     </div> 
 18     <script type="text/javascript" language="JavaScript"> //JS
 19     function validate()
 20     {
 21     var name = document.forms[0].name.value; //创建变量name
 22     var factory = document.forms[0].factory.value; //创建变量teacher
 23     var id = document.forms[0].id.value; 
 24     var standard = document.forms[0].standard.value;
 25     var number = document.form[0].number.value;
 26     var day = document.form[0].day.value;
 27     var time = document.form[0].time.value;
 28     var units = document.form[0].units.value;
 29     var names = document.form[0].names.value;
 30     if(name.length <= 0){ //判断姓名位数,必填
 31         alert("名称不能为空,请输入名称!");
 32         return false;
 33     }
 34     else if(factory.length <= 0){ //判断年龄,必填
 35         alert("请输入合法生产工厂!");
 36         return false;
 37     }
 38     else if(id <= 0){ //判断学号位数,必填
 39         alert("型号不能为空,请输入型号!");
 40         return false;
 41     }
 42     else if(standard.length <= 0){ //专业为必填
 43         alert("规格不能为空,请输入商品规格!");
 44         return false;
 45     }
 46     else if(number.length <= 0){ //专业为必填
 47         alert("数量不能为空,请输入提货数量!");
 48         return false;
 49     }
 50     else if(day.length <= 0){ //专业为必填
 51         alert("提货日期不能为空,请输入提货日期!");
 52         return false;
 53     }
 54     else if(time.length <= 0){ //专业为必填
 55         alert("提货时间不能为空,请输入提货时间规格!");
 56         return false;
 57     }
 58     else if(units.length <= 0){ //专业为必填
 59         alert("提货单位不能为空,请输入提货单位!");
 60         return false;
 61     }
 62     else if(names.length <= 0){ //专业为必填
 63         alert("提货人姓名不能为空,请输入提货人姓名!");
 64         return false;
 65     }
 66     else{
 67         return true;
 68     }
 69         //document.getElementById("form").submit();
 70     }
 71     </script>
 72   </head>
 73   <body>
 74   <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
 75   <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
 76   </div> 
 77   <br><%--换行--%>
 78   <center>
 79   <h2>出入库单据信息录入</h2><hr size="1" noshade color="#000000"><%--横线--%>
 80  <form action="receipt.jsp" method="post" id="form" onSubmit="return validate()" ><%--跳转到insert.jsp文件,方法为post--%>
 81     <table width="800" border="0" align="center"> <%--表格的宽为800,居中对齐--%>
 82       <tr>
 83         <td>库存商品名称:
 84           <input type="text" name="name"></td>
 85       </tr>
 86       <tr>
 87         <td>生产工厂:
 88           <input type="text" name="factory"></td>
 89       </tr>
 90       <tr>
 91         <td>型号: <input type="text" name="id"> </td>
 92       </tr>
 93       <tr>
 94         <td>规格: <input type="text" name="standard"> </td>
 95       </tr>
 96       <tr>
 97         <td>数量: <input type="text" name="standard"> </td>
 98       </tr>
 99       <tr>
100         <td>提货日期: <input type="text" name="standard"> </td>
101       </tr>
102       <tr>
103         <td>提货时间: <input type="text" name="standard"> </td>
104       </tr>
105       <tr>
106         <td>提货单位: <input type="text" name="standard"> </td>
107       </tr>
108       <tr>
109         <td>提货人姓名: <input type="text" name="standard"> </td>
110       </tr>
111       <tr>
112         <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="submit" type="submit" value="保存"/></td>
113       </tr>
114     </table>
115     <p>&nbsp;</p>
116   </form>
117   <a href="show.jsp">查询所有库存商品信息</a> <%--链接到学生信息查询页面--%>
118   </center>
119   </body>
120 </html>
addReceipt.jsp
 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
 2 <%@ page import="java.sql.*"%> <%--导入java中的sql包--%>
 3 <%@page import="com.javao.msg.DBUtil"%>
 4 <% 
 5 request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 6 response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 7 %>
 8 <%
 9 String path = request.getContextPath(); //相对Path设置
10 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
11 %>
12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
13 <html>
14   <head>
15     <base href="<%=basePath%>"> <%--设置基础路径--%>
16     <title>库存商品信息删除界面</title> <%--页面标题--%>
17   </head>
18 <body>
19 <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
20 <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
21 </div> 
22     <% 
23     request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
24     String name = request.getParameter("name");
25     Connection conn = null; //定义静态数据库连接 //定义静态数据库连接
26     Statement stat = null; 
27     ResultSet rs = null; //将rs滞空。
28     conn = DBUtil.getConnection(); 
29     stat = conn.createStatement(); 
30     stat.executeUpdate("delete from good where name = '" + name + "'"); //删除data表中的name字段
31     rs = stat.executeQuery("select * from good"); //查找data表
32     if(rs.next()) //判断结果集
33     {
34      out.print("<center><br><br><h3>删除成功!</h3></center>"); 
35     }
36     else{
37     out.print("<center><h3>删除失败!</h3></center>");
38     }
39     %>
40     <br>
41     <br>
42     <center><a href=add.jsp>返回添加库存商品信息页面</a><br/><br/><a href=show.jsp>返回库存商品信息查询页面</a></center> <%--设置居中--%>
43     <% 
44     if(rs != null)
45     {
46         rs.close(); //关闭结果集,但是rs还是有null值。
47         rs = null; //将rs滞空。
48     }
49         if(stat != null)
50     {
51         stat.close(); //关闭stat。
52         stat = null; //滞空stat。
53     }
54         if(conn != null)
55     {
56         conn.close(); //关闭数据库连接
57         conn = null;
58     }
59     %> 
60   </body>
61 </html>
delete.jsp
 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>Welcome!</title>
 8 </head>
 9 <h1>欢迎来到库存商品信息管理系统</h1><br/><br/>
10 <body>
11 <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
12 <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
13 </div> <br/><br/>
14    <p align="center">
15    <a href = "add.jsp">库存商品信息录入</a><br/><br/>
16    <a href = "show.jsp">库存商品信息修改</a><br/><br/>
17    <a href = "show.jsp">删除库存商品信息</a><br/><br/>
18    <a href = "show.jsp">查询库存商品信息</a><br/><br/>
19    <a href = "addReceipt.jsp">进入出入库单据信息录入界面</a><br/><br/>
20    </p>
21 </body>
22 </html>
index.jsp
 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>Welcome!</title>
 8 </head>
 9 <h1>欢迎来到库存商品信息管理系统</h1><br/><br/>
10 <body>
11 <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
12 <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
13 </div> <br/><br/>
14    <p align="center">
15    <a href = "add.jsp">库存商品信息录入</a><br/><br/>
16    <a href = "show.jsp">库存商品信息修改</a><br/><br/>
17    <a href = "show.jsp">删除库存商品信息</a><br/><br/>
18    <a href = "show.jsp">查询库存商品信息</a><br/><br/>
19    <a href = "addReceipt.jsp">进入出入库单据信息录入界面</a><br/><br/>
20    </p>
21 </body>
22 </html>
insert.jsp
 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
 2 <%@ page import="java.sql.*"%> <%--导入java中的sql包--%>
 3 <%@page import="com.javao.msg.DBUtil"%>
 4 <% 
 5 request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 6 response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 7 %>
 8 <%
 9 String path = request.getContextPath(); //相对Path设置
10 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
11 %>
12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
13 <html>
14   <head>
15     <base href="<%=basePath%>"> <%--设置基础路径,basepath为变量--%>
16     <title>添加出入库单据信息</title> <%--页面标题--%>
17   </head>
18    <body>
19   <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
20   <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
21   </div> 
22     <% 
23     request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
24     String name1 = request.getParameter("name");
25     String factory = request.getParameter("factory");
26     String id = request.getParameter("id");
27     String standard = request.getParameter("standard");
28     String number = request.getParameter("number");
29     String day = request.getParameter("day");
30     String time = request.getParameter("time");
31     String units = request.getParameter("units");
32     String names = request.getParameter("names");
33     Connection conn = null; //定义静态数据库连接 
34     Statement stat = null; 
35     ResultSet rs = null; //将rs滞空。
36     conn = DBUtil.getConnection();
37     stat = conn.createStatement(); 
38     //String sql = ; //向对应的数据字段添加数据
39     stat.executeUpdate("insert into receipt(name,factory,id,standard,number,day,time,units,names) values('" + name1 + "','" + factory + "','" + id + "','" + standard + "','" + number + "','" + day + "','" + time + "','" + units + "','" + names + "')"); 
40     rs = stat.executeQuery("select * from receipt"); //查找data表
41 %> 
42    <center>
43    <%
44     if(rs.next())
45     {
46     out.print("<br><h3>出入库单据信息添加成功!</h3>");
47     }
48     else{
49     out.print("<br><h3>出入库单据信息添加失败!</h3>");
50     }
51     %>
52     <br>
53     <a href=add.jsp>返回库存商品信息添加页面</a><br/><br/>
54     <a href=show.jsp>进入库存商品信息查询页面</a> 
55     </center>
56      <%
57     if(rs != null)
58     {
59         rs.close(); //关闭结果集,但是rs还是有null值。
60         rs = null; //将rs滞空。
61     }
62         if(stat != null)
63     {
64         stat.close(); //关闭stat。
65         stat = null; //滞空stat。
66     }
67         if(conn != null)
68     {
69         conn.close(); //关闭数据库连接
70         conn = null;
71     }
72     %>     
73     </body>
74 </html>
receipt.jsp
 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
 2 <%@ page import="java.sql.*"%> <%--导入java中的sql包--%>
 3 <%@page import="com.javao.msg.DBUtil"%>
 4 <% 
 5 request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 6 response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 7 %>
 8 <%
 9 String path = request.getContextPath(); //相对Path设置
10 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
11 %>
12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
13 <html>
14   <head>
15     <base href="<%=basePath%>"> <%--设置基础路径,basepath为变量--%>
16     <title>按库存商品生产工厂条件查询</title> <%--页面标题--%>
17   </head>
18   <body>
19   <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
20   <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
21   </div> 
22     <% 
23     String factory = request.getParameter("factory");
24     Connection conn = null; //定义静态数据库连接 
25     Statement stat = null; //滞空stat。
26     ResultSet rs = null; //将rs滞空。
27     conn = DBUtil.getConnection(); 
28     stat = conn.createStatement(); 
29     rs = stat.executeQuery("select * from good where factory='" + factory + "'");//查找data表name字段
30     %>
31     <br>
32     <h3>符合条件的库存商品信息</h3> <%--标题样式3--%>
33     <hr noshade> 
34     <br>
35      <table width="450" border="100" cellSpacing=1 style="font-size:15pt;border:dashed 1pt"> <%--表格宽度450--%>
36     <tr>
37     <td>库存商品名称</td>
38     <td>库存商品生产工厂</td>
39     <td>库存商品型号</td>
40     <td>库存商品规格</td>
41     </tr>
42     <% 
43     if(rs.next())
44     {
45     out.print("<tr>");
46     out.print("<td>" + rs.getString("name") + "</td>"); //输出name内容
47     out.print("<td>" + rs.getString("factory") + "</td>"); //输出age内容
48     out.print("<td>" + rs.getString("id") + "</td>"); //输出gender内容
49     out.print("<td>" + rs.getString("standard") + "</td>"); //输出gender内容
50         %>
51     <td><a href="delete.jsp?name=<%=rs.getString("name") %>">删除</a></td>
52      <td><a href="update.jsp?name=<%=rs.getString("name") %>">修改</a></td>
53     <%
54     out.print("</tr>");
55     }
56     else{
57     out.print("<h4>不存在此条件的信息!</h4>");
58     }
59   
60     %>
61     </table>    
62     <br>
63     <a href=show.jsp>返回库存商品信息查询页面</a>
64     <% 
65     if(rs != null)
66     {
67         rs.close(); //关闭结果集,但是rs还是有null值。
68         rs = null; //将rs滞空。
69     }
70         if(stat != null) //判断stat是否滞空。
71     {
72         stat.close(); //关闭stat。
73         stat = null; //滞空stat。
74     }
75         if(conn != null)
76     {
77         conn.close(); //关闭数据库连接
78         conn = null;
79     }
80     %> 
81   </body>
82 </html>
select_for_factory.jsp
 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
 2 <%@ page import="java.sql.*"%> <%--导入java中的sql包--%>
 3 <%@page import="com.javao.msg.DBUtil"%>
 4 <% 
 5 request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 6 response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 7 %>
 8 <%
 9 String path = request.getContextPath(); //相对Path设置
10 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
11 %>
12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
13 <html>
14   <head>
15     <base href="<%=basePath%>"> <%--设置基础路径,basepath为变量--%>
16     <title>按库存商品型号条件查询</title> <%--页面标题--%>
17   </head>
18   <body>
19   <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
20   <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
21   </div> 
22     <% 
23     String id = request.getParameter("id");
24     Connection conn = null; //定义静态数据库连接 
25     Statement stat = null; //滞空stat。
26     ResultSet rs = null; //将rs滞空。
27     conn = DBUtil.getConnection(); 
28     stat = conn.createStatement(); 
29     rs = stat.executeQuery("select * from good where id='" + id + "'");//查找data表name字段
30     %>
31     <br>
32     <h3>符合条件的库存商品信息</h3> <%--标题样式3--%>
33     <hr noshade> 
34     <br>
35      <table width="450" border="100" cellSpacing=1 style="font-size:15pt;border:dashed 1pt"> <%--表格宽度450--%>
36     <tr>
37     <td>库存商品名称</td>
38     <td>库存商品生产工厂</td>
39     <td>库存商品型号</td>
40     <td>库存商品规格</td>
41     </tr>
42     <% 
43     if(rs.next())
44     {
45     out.print("<tr>");
46     out.print("<td>" + rs.getString("name") + "</td>"); //输出name内容
47     out.print("<td>" + rs.getString("factory") + "</td>"); //输出age内容
48     out.print("<td>" + rs.getString("id") + "</td>"); //输出gender内容
49     out.print("<td>" + rs.getString("standard") + "</td>"); //输出gender内容
50         %>
51     <td><a href="delete.jsp?name=<%=rs.getString("name") %>">删除</a></td>
52      <td><a href="update.jsp?name=<%=rs.getString("name") %>">修改</a></td>
53     <%
54     out.print("</tr>");
55     }
56     else{
57     out.print("<h4>不存在此条件的信息!</h4>");
58     }
59   
60     %>
61     </table>    
62     <br>
63     <a href=show.jsp>返回库存商品信息查询页面</a>
64     <% 
65     if(rs != null)
66     {
67         rs.close(); //关闭结果集,但是rs还是有null值。
68         rs = null; //将rs滞空。
69     }
70         if(stat != null) //判断stat是否滞空。
71     {
72         stat.close(); //关闭stat。
73         stat = null; //滞空stat。
74     }
75         if(conn != null)
76     {
77         conn.close(); //关闭数据库连接
78         conn = null;
79     }
80     %> 
81   </body>
82 </html>
select_for_id.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
<%@ page import="java.sql.*"%> <%--导入java中的sql包--%>
<%@page import="com.javao.msg.DBUtil"%>
<% 
request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
%>
<%
String path = request.getContextPath(); //相对Path设置
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
<html>
  <head>
    <base href="<%=basePath%>"> <%--设置基础路径,basepath为变量--%>
    <title>按库存商品名称条件查询</title> <%--页面标题--%>
  </head>
  <body>
  <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
  <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
  </div> 
    <% 
    String name = request.getParameter("name");
    Connection conn = null; //定义静态数据库连接 
    Statement stat = null; //滞空stat。
    ResultSet rs = null; //将rs滞空。
    conn = DBUtil.getConnection(); 
    stat = conn.createStatement(); 
    rs = stat.executeQuery("select * from good where name='" + name + "'");//查找data表name字段
    %>
    <br>
    <h3>符合条件的库存商品信息</h3> <%--标题样式3--%>
    <hr noshade> 
    <br>
     <table width="450" border="100" cellSpacing=1 style="font-size:15pt;border:dashed 1pt"> <%--表格宽度450--%>
    <tr>
    <td>库存商品名称</td>
    <td>库存商品生产工厂</td>
    <td>库存商品型号</td>
    <td>库存商品规格</td>
    </tr>
    <% 
    if(rs.next())
    {
    out.print("<tr>");
    out.print("<td>" + rs.getString("name") + "</td>"); //输出name内容
    out.print("<td>" + rs.getString("factory") + "</td>"); //输出age内容
    out.print("<td>" + rs.getString("id") + "</td>"); //输出gender内容
    out.print("<td>" + rs.getString("standard") + "</td>"); //输出gender内容
        %>
    <td><a href="delete.jsp?name=<%=rs.getString("name") %>">删除</a></td>
     <td><a href="update.jsp?name=<%=rs.getString("name") %>">修改</a></td>
    <%
    out.print("</tr>");
    }
    else{
    out.print("<h4>不存在此条件的信息!</h4>");
    }
  
    %>
    </table>    
    <br>
    <a href=show.jsp>返回库存商品信息查询页面</a>
    <% 
    if(rs != null)
    {
        rs.close(); //关闭结果集,但是rs还是有null值。
        rs = null; //将rs滞空。
    }
        if(stat != null) //判断stat是否滞空。
    {
        stat.close(); //关闭stat。
        stat = null; //滞空stat。
    }
        if(conn != null)
    {
        conn.close(); //关闭数据库连接
        conn = null;
    }
    %> 
  </body>
</html>
select_for_name.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
<%@ page import="java.sql.*"%> <%--导入java中的sql包--%>
<%@page import="com.javao.msg.DBUtil"%>
<% 
request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
%>
<%
String path = request.getContextPath(); //相对Path设置
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
<html>
  <head>
    <base href="<%=basePath%>"> <%--设置基础路径,basepath为变量--%>
    <title>按库存商品规格条件查询</title> <%--页面标题--%>
  </head>
  <body>
  <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
  <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
  </div> 
    <% 
    String standard = request.getParameter("standard");
    Connection conn = null; //定义静态数据库连接 
    Statement stat = null; //滞空stat。
    ResultSet rs = null; //将rs滞空。
    conn = DBUtil.getConnection(); 
    stat = conn.createStatement(); 
    rs = stat.executeQuery("select * from good where standard='" + standard + "'");//查找data表name字段
    %>
    <br>
    <h3>符合条件的库存商品信息</h3> <%--标题样式3--%>
    <hr noshade> 
    <br>
     <table width="450" border="100" cellSpacing=1 style="font-size:15pt;border:dashed 1pt"> <%--表格宽度450--%>
    <tr>
    <td>库存商品名称</td>
    <td>库存商品生产工厂</td>
    <td>库存商品型号</td>
    <td>库存商品规格</td>
    </tr>
    <% 
    if(rs.next())
    {
    out.print("<tr>");
    out.print("<td>" + rs.getString("name") + "</td>"); //输出name内容
    out.print("<td>" + rs.getString("factory") + "</td>"); //输出age内容
    out.print("<td>" + rs.getString("id") + "</td>"); //输出gender内容
    out.print("<td>" + rs.getString("standard") + "</td>"); //输出gender内容
        %>
    <td><a href="delete.jsp?name=<%=rs.getString("name") %>">删除</a></td>
     <td><a href="update.jsp?name=<%=rs.getString("name") %>">修改</a></td>
    <%
    out.print("</tr>");
    }
    else{
    out.print("<h4>不存在此条件的信息!</h4>");
    }
  
    %>
    </table>    
    <br>
    <a href=show.jsp>返回库存商品信息查询页面</a>
    <% 
    if(rs != null)
    {
        rs.close(); //关闭结果集,但是rs还是有null值。
        rs = null; //将rs滞空。
    }
        if(stat != null) //判断stat是否滞空。
    {
        stat.close(); //关闭stat。
        stat = null; //滞空stat。
    }
        if(conn != null)
    {
        conn.close(); //关闭数据库连接
        conn = null;
    }
    %> 
  </body>
</html>
select_for_standard.jsp
  1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
  2 <%@ page import="java.sql.*"%> <%--导入java中的sql包--%>
  3 <%@page import="com.javao.msg.DBUtil"%>
  4 <% 
  5 request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
  6 response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
  7 %>
  8 <%
  9 String path = request.getContextPath(); //相对Path设置
 10 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
 11 %>
 12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
 13 <html>
 14   <head>
 15     <title>库存商品信息</title> <%--页面标题--%>
 16 
 17   </head>
 18   <body>
 19   <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
 20   <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
 21   </div> 
 22   <% 
 23     response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 24     request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 25     String name = request.getParameter("name");
 26     String factory = request.getParameter("factory");
 27     String id = request.getParameter("id");
 28     String standard = request.getParameter("standard");
 29     Connection conn = null; //定义静态数据库连接 
 30     Statement stat = null; 
 31     ResultSet rs = null; //将rs滞空。
 32     conn = DBUtil.getConnection(); 
 33     stat = conn.createStatement(); 
 34     rs = stat.executeQuery("select * from good"); //查找data表
 35   %>
 36   <br>
 37   <h2>库存商品信息</h2> <%--标题样式2--%>
 38   <hr noshade>    
 39   <br> 
 40   <h3>全部库存商品信息如下</h3> <%--标题样式3--%>
 41    <table width="562" border="100" cellSpacing=3 style="font-size:15pt;border:dashed 1pt"> <%--表格宽度450--%>
 42     <tr>
 43     <td width="110">库存商品名称</td>
 44     <td width="110">库存商品生产工厂</td>
 45     <td width="211">库存商品型号</td>
 46     <td width="211">库存商品规格</td>
 47     </tr>
 48     <% 
 49     while(rs.next())
 50     {
 51     out.print("<tr>");
 52     out.print("<td>" + rs.getString("name") + "</td>"); //输出name内容
 53     out.print("<td>" + rs.getString("factory") + "</td>"); //输出gender内容
 54     out.print("<td>" + rs.getString("id") + "</td>");
 55     out.print("<td>" + rs.getString("standard") + "</td>"); //输出major内容
 56     %>
 57     <td><a href="delete.jsp?name=<%=rs.getString("name") %>">删除</a></td>
 58     <td><a href="update.jsp?name=<%=rs.getString("name") %>">修改</a></td>
 59     <%
 60     out.print("</tr>");
 61     }
 62     %>
 63     </table>  
 64     <br>
 65        <form action="select_for_name.jsp" method="post"> <%--post方法跳转到select_for_age.jsp文件--%>
 66     <h3>按库存商品名称查询:
 67     <input type="text" name="name"  value="" title="库存商品名称不能为空" ></input>
 68     <input type="submit" value="查询"/>
 69     <br>
 70     </h3>
 71     </form>
 72     <form action="select_for_factory.jsp" method="post"> <%--post方法跳转到select_for_gender.jsp文件--%>
 73   <h3> 按库存商品生产工厂查询:
 74     <input type="text" name="factory" value="" title="库存商品生产工厂不能为空"></input>
 75     <input type="submit" value="查询"/>
 76     <br>
 77   </h3>
 78 </form>
 79 <form action="select_for_id.jsp" method="post"> <%--post方法跳转到select_for_major.jsp文件--%>
 80   <h3> 按库存商品型号查询:
 81     <input type="text" name="id" value="" title="库存商品型号不能为空"></input>
 82     <input type="submit" value="查询"/>
 83     <br>
 84   </h3>
 85 </form>
 86 <form action="select_for_standard.jsp" method="post"> <%--post方法跳转到select_for_major.jsp文件--%>
 87   <h3> 按库存商品规格查询:
 88     <input type="text" name="standard" value="" title="库存商品规格不能为空"></input>
 89     <input type="submit" value="查询"/>
 90     <br>
 91   </h3>
 92 </form>
 93 <a href=add.jsp>返回添加课程信息页面</a>
 94 <a href=addReceipt.jsp>进入出入库单据信息录入界面</a>
 95 <% 
 96     if(rs != null)
 97     {
 98         rs.close(); //关闭结果集,但是rs还是有null值。
 99         rs = null; //将rs滞空。
100     }
101         if(stat != null)
102     {
103         stat.close(); //关闭stat。
104         stat = null; //滞空stat。
105     }
106         if(conn != null)
107     {
108         conn.close(); //关闭数据库连接
109         conn = null;
110     }
111     %>
112   </body>
113 </html>
show.jsp
  1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
  2 <%@ page import="java.sql.*"%> <%--导入java中的sql包--%>
  3 <%@page import="com.javao.msg.DBUtil"%>
  4 <% 
  5 request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
  6 response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
  7 %>
  8 <%
  9 String path = request.getContextPath(); //相对Path设置
 10 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
 11 %>
 12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
 13 <html>
 14   <head>
 15     <title>库存商品信息</title> <%--页面标题--%>
 16     <body>
 17     <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
 18     <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
 19     </div> 
 20     <%--JS--%>
 21     <script type="text/javascript"">
 22     function validate()
 23     {
 24     var name = document.forms[0].name.value;
 25     var factory = document.forms[0].factory.value;
 26     var id = document.forms[0].id.value;
 27     var standard = document.forms[0].standard.value;
 28     if(name.length <= 0){ //判断姓名位数,必填
 29         alert("名称不能为空,请输入名称!");
 30         return false;
 31     }
 32     else if(factory.length <= 0){ //判断年龄,必填
 33         alert("请输入合法生产工厂!");
 34         return false;
 35     }
 36     else if(id <= 0){ //判断学号位数,必填
 37         alert("型号不能为空,请输入型号!");
 38         return false;
 39     }
 40 
 41     else if(standard.length <= 0){ //专业为必填
 42         alert("规格不能为空,请输入商品规格!");
 43         return false;
 44     }
 45     else{
 46         return true;
 47     }
 48         //document.getElementById("form").submit();
 49     }
 50     </script>
 51   </head>
 52   <body background="img/background.jpg">
 53     <% 
 54     response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 55     request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 56     String name = request.getParameter("name");
 57     String factory = request.getParameter("factory");
 58     String id = request.getParameter("id");
 59     String standard = request.getParameter("standard");
 60     Connection conn = null; //定义静态数据库连接 
 61     Statement stat = null; //滞空stat。
 62     ResultSet rs = null; //将rs滞空。
 63     conn = DBUtil.getConnection(); 
 64     stat = conn.createStatement(); 
 65     rs = stat.executeQuery("select * from good where name='" + name + "'"); //查找data表id字段
 66   %>
 67   <br>
 68   <h2>库存商品信息</h2>  
 69   <hr noshade>    
 70   <br> 
 71   <h3>要修改的库存商品信息如下</h3> 
 72   <table width="450" border="0" cellpadding="1" cellSpacing=1 style="font-size:15pt;border:dashed 1pt">
 73   <tr align="center">
 74     <td>库存商品名称</td>
 75     <td>库存商品生产工厂</td>
 76     <td>库存商品型号</td>
 77     <td>库存商品规格</td>
 78     </tr>
 79      <% 
 80      while(rs.next())
 81      {
 82      out.print("<tr>");
 83      out.print("<td>" + rs.getString("name") + "</td>"); //输出name内容
 84      out.print("<td>" + rs.getString("factory") + "</td>"); //输出gender内容
 85      out.print("<td>" + rs.getString("id") + "</td>");
 86      out.print("<td>" + rs.getString("standard") + "</td>"); //输出major内容
 87      out.print("</tr>");
 88     %>
 89     </table>
 90     <br>
 91     <br>
 92     <h3>将库存商品信息更改为:</h3>
 93     <form action="updateShow.jsp" method="post" onSubmit="return validate()"> 
 94 <h4>库存商品名称:<input type="text" name="name" value="<%=rs.getString("name") %>" title="库存商品名称不能改变" onClick="return checkName(name)"readonly="readonly"></input><br></h4>
 95 <h4>库存商品生产工厂:<input type="text" name="factory" title="库存商品生产工厂不能为空"></input><br></h4>
 96 <h4>库存商品型号:<input type="text" name="id" title="库存商品型号不能为空"></input><br></h4>
 97 <h4>库存商品规格:<input type="text" name="standard" title="库存商品规格不能为空"></input><br></h4>
 98  <input type="submit" value="修改"/>
 99   </form>
100 <a href=add.jsp>返回库存商品添加信息页面</a><br/><a href=show.jsp>返回库存商品信息查询页面</a>
101 <%
102   }
103  %>
104       <% 
105     if(rs != null)
106     {
107         rs.close(); //关闭结果集,但是rs还是有null值。
108         rs = null; //将rs滞空。
109     }
110         if(stat != null)
111     {
112         stat.close(); //关闭stat。
113         stat = null; //滞空stat。
114     }
115         if(conn != null)
116     {
117         conn.close(); //关闭数据库连接
118         conn = null;
119     }
120     %> 
121   </body>
122 </html>
update
 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%--设置页面的脚本支持语言为java—导入util包中的类—申明编码方式为UTF-8--%>
 2 <%@ page import="java.sql.*"%> <%--导入java中的sql包--%>
 3 <%@page import="com.javao.msg.DBUtil"%>
 4 <% 
 5 request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 6 response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
 7 %>
 8 <%
 9 String path = request.getContextPath(); //相对Path设置
10 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; //相对Path设置
11 %>
12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%--文档声明--%>
13 <html>
14   <head>
15     <base href="<%=basePath%>"> 
16     <title>修改界面</title> 
17   </head>
18   <body>
19   <div id="Layer1" style="position:absolute; 100%; height:100%; z-index:-1">    
20   <img src="C:UsersFuHeishi826Desktop课程实验Extremeackground.jpg" height="100%" width="100%"/>    
21   </div> 
22     <%
23     request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
24     String name1 = request.getParameter("name");
25     String factory1 = request.getParameter("factory");
26     String id1 = request.getParameter("id");
27     String standard1 = request.getParameter("standard");
28     Connection conn = null; //定义静态数据库连接 
29     Statement stat = null; 
30     conn = DBUtil.getConnection(); 
31     stat = conn.createStatement(); 
32     stat.execute("update good set name='" + name1 + "' ,factory='" + factory1 + "' ,id='" + id1 + "' ,standard='" + standard1+"' where name='" + name1 + "'"); 
33     ResultSet rs = stat.executeQuery("select * from good where name='" + name1 + "'"); //查找data表id字段
34     %>
35    <br>
36    <h3>修改成功!</h3> <%--标题样式3--%>
37    <br>
38    <h3>修改后的库存商品信息为:</h3> <%--标题样式3--%>
39    <hr noshade>
40    <br>
41    <br>
42    <table width="450" border="100" cellSpacing=1 style="font-size:15pt;border:dashed 1pt"> <%--表格宽度450--%>
43     <tr>
44     <td>库存商品名称</td>
45     <td>库存商品生产工厂</td>
46     <td>库存商品型号</td>
47     <td>库存商品规格</td>
48     </tr>
49     <% 
50     while(rs.next())
51     {
52     out.print("<tr>");
53     out.print("<td>" + rs.getString("name") + "</td>"); //输出name内容
54     out.print("<td>" + rs.getString("factory") + "</td>"); //输出gender内容
55     out.print("<td>" + rs.getString("id") + "</td>");
56     out.print("<td>" + rs.getString("standard") + "</td>"); //输出major内容
57     out.print("</tr>");
58     }
59     %>
60     </table>
61     <br>
62     <br>
63     <a href=add.jsp>返回库存商品添加信息页面</a><br/><a href=show.jsp>返回库存商品信息查询页面</a>
64     <% 
65     if(rs != null)
66     {
67         rs.close(); //关闭结果集,但是rs还是有null值。
68         rs = null; //将rs滞空。
69     }
70         if(stat != null)
71     {
72         stat.close(); //关闭stat。
73         stat = null; //滞空stat。
74     }
75         if(conn != null)
76     {
77         conn.close(); //关闭数据库连接
78         conn = null;
79     }
80     %> 
81   </body>
82 </html>
updateShow

数据库截图:

程序截图:

运行截图:

原文地址:https://www.cnblogs.com/yeshenfeng/p/10117222.html