一个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; width:100%; height:100%; z-index:-1">
- <img src="C:\Users\FuHeishi826\Desktop\课程实验\Extreme\background.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; width:100%; height:100%; z-index:-1">
- <img src="C:\Users\FuHeishi826\Desktop\课程实验\Extreme\background.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> <input name="submit" type="submit" value="保存"/></td>
- </tr>
- </table>
- <p> </p>
- </form>
- <a href="show.jsp">查询所有库存商品信息</a> <%--链接到学生信息查询页面--%>
- </center>
- </body>
- </html>
- <%@ 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%>"> <%--设置基础路径--%>
- <title>库存商品信息删除界面</title> <%--页面标题--%>
- </head>
- <body>
- <div id="Layer1" style="position:absolute; width:100%; height:100%; z-index:-1">
- <img src="C:\Users\FuHeishi826\Desktop\课程实验\Extreme\background.jpg" height="100%" width="100%"/>
- </div>
- <%
- request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
- String name = request.getParameter("name");
- Connection conn = null; //定义静态数据库连接 //定义静态数据库连接
- Statement stat = null;
- ResultSet rs = null; //将rs滞空。
- conn = DBUtil.getConnection();
- stat = conn.createStatement();
- stat.executeUpdate("delete from good where name = '" + name + "'"); //删除data表中的name字段
- rs = stat.executeQuery("select * from good"); //查找data表
- if(rs.next()) //判断结果集
- {
- out.print("<center><br><br><h3>删除成功!</h3></center>");
- }
- else{
- out.print("<center><h3>删除失败!</h3></center>");
- }
- %>
- <br>
- <br>
- <center><a href=add.jsp>返回添加库存商品信息页面</a><br/><br/><a href=show.jsp>返回库存商品信息查询页面</a></center> <%--设置居中--%>
- <%
- if(rs != null)
- {
- rs.close(); //关闭结果集,但是rs还是有null值。
- rs = null; //将rs滞空。
- }
- if(stat != null)
- {
- stat.close(); //关闭stat。
- stat = null; //滞空stat。
- }
- if(conn != null)
- {
- conn.close(); //关闭数据库连接
- conn = null;
- }
- %>
- </body>
- </html>
- <%@ 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>
- <title>库存商品信息</title> <%--页面标题--%>
- <body>
- <div id="Layer1" style="position:absolute; width:100%; height:100%; z-index:-1">
- <img src="C:\Users\FuHeishi826\Desktop\课程实验\Extreme\background.jpg" height="100%" width="100%"/>
- </div>
- <%--JS--%>
- <script type="text/javascript"">
- function validate()
- {
- var name = document.forms[0].name.value;
- var factory = document.forms[0].factory.value;
- var id = document.forms[0].id.value;
- var standard = document.forms[0].standard.value;
- if(name.length <= 0){ //判断姓名位数,必填
- alert("名称不能为空,请输入名称!");
- return false;
- }
- else if(factory.length <= 0){ //判断年龄,必填
- alert("请输入合法生产工厂!");
- return false;
- }
- else if(id <= 0){ //判断学号位数,必填
- alert("型号不能为空,请输入型号!");
- return false;
- }
- else if(standard.length <= 0){ //专业为必填
- alert("规格不能为空,请输入商品规格!");
- return false;
- }
- else{
- return true;
- }
- //document.getElementById("form").submit();
- }
- </script>
- </head>
- <body background="img/background.jpg">
- <%
- response.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
- request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
- String name = request.getParameter("name");
- String factory = request.getParameter("factory");
- String id = request.getParameter("id");
- 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 name='" + name + "'"); //查找data表id字段
- %>
- <br>
- <h2>库存商品信息</h2>
- <hr noshade>
- <br>
- <h3>要修改的库存商品信息如下</h3>
- <table width="450" border="0" cellpadding="1" cellSpacing=1 style="font-size:15pt;border:dashed 1pt">
- <tr align="center">
- <td>库存商品名称</td>
- <td>库存商品生产工厂</td>
- <td>库存商品型号</td>
- <td>库存商品规格</td>
- </tr>
- <%
- while(rs.next())
- {
- out.print("<tr>");
- out.print("<td>" + rs.getString("name") + "</td>"); //输出name内容
- out.print("<td>" + rs.getString("factory") + "</td>"); //输出gender内容
- out.print("<td>" + rs.getString("id") + "</td>");
- out.print("<td>" + rs.getString("standard") + "</td>"); //输出major内容
- out.print("</tr>");
- %>
- </table>
- <br>
- <br>
- <h3>将库存商品信息更改为:</h3>
- <form action="updateShow.jsp" method="post" onSubmit="return validate()">
- <h4>库存商品名称:<input type="text" name="name" value="<%=rs.getString("name") %>" title="库存商品名称不能改变" onClick="return checkName(name)"readonly="readonly"></input><br></h4>
- <h4>库存商品生产工厂:<input type="text" name="factory" title="库存商品生产工厂不能为空"></input><br></h4>
- <h4>库存商品型号:<input type="text" name="id" title="库存商品型号不能为空"></input><br></h4>
- <h4>库存商品规格:<input type="text" name="standard" title="库存商品规格不能为空"></input><br></h4>
- <input type="submit" value="修改"/>
- </form>
- <a href=add.jsp>返回库存商品添加信息页面</a><br/><a href=show.jsp>返回库存商品信息查询页面</a>
- <%
- }
- %>
- <%
- if(rs != null)
- {
- rs.close(); //关闭结果集,但是rs还是有null值。
- rs = null; //将rs滞空。
- }
- if(stat != null)
- {
- stat.close(); //关闭stat。
- stat = null; //滞空stat。
- }
- if(conn != null)
- {
- conn.close(); //关闭数据库连接
- conn = null;
- }
- %>
- </body>
- </html>
- <%@ 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%>">
- <title>修改界面</title>
- </head>
- <body>
- <div id="Layer1" style="position:absolute; width:100%; height:100%; z-index:-1">
- <img src="C:\Users\FuHeishi826\Desktop\课程实验\Extreme\background.jpg" height="100%" width="100%"/>
- </div>
- <%
- request.setCharacterEncoding("UTF-8"); //设置响应的编码为UTF-8
- String name1 = request.getParameter("name");
- String factory1 = request.getParameter("factory");
- String id1 = request.getParameter("id");
- String standard1 = request.getParameter("standard");
- Connection conn = null; //定义静态数据库连接
- Statement stat = null;
- conn = DBUtil.getConnection();
- stat = conn.createStatement();
- stat.execute("update good set name='" + name1 + "' ,factory='" + factory1 + "' ,id='" + id1 + "' ,standard='" + standard1+"' where name='" + name1 + "'");
- ResultSet rs = stat.executeQuery("select * from good where name='" + name1 + "'"); //查找data表id字段
- %>
- <br>
- <h3>修改成功!</h3> <%--标题样式3--%>
- <br>
- <h3>修改后的库存商品信息为:</h3> <%--标题样式3--%>
- <hr noshade>
- <br>
- <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>
- <%
- while(rs.next())
- {
- out.print("<tr>");
- out.print("<td>" + rs.getString("name") + "</td>"); //输出name内容
- out.print("<td>" + rs.getString("factory") + "</td>"); //输出gender内容
- out.print("<td>" + rs.getString("id") + "</td>");
- out.print("<td>" + rs.getString("standard") + "</td>"); //输出major内容
- out.print("</tr>");
- }
- %>
- </table>
- <br>
- <br>
- <a href=add.jsp>返回库存商品添加信息页面</a><br/><a href=show.jsp>返回库存商品信息查询页面</a>
- <%
- if(rs != null)
- {
- rs.close(); //关闭结果集,但是rs还是有null值。
- rs = null; //将rs滞空。
- }
- if(stat != null)
- {
- stat.close(); //关闭stat。
- stat = null; //滞空stat。
- }
- if(conn != null)
- {
- conn.close(); //关闭数据库连接
- conn = null;
- }
- %>
- </body>
- </html>
- package com.javao.msg;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- public class DBUtil {
- public static Connection getConnection() {
- try {
- //1 鍔犺浇椹卞姩
- Class.forName("com.mysql.cj.jdbc.Driver");
- } catch (ClassNotFoundException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- String user = "root";
- String password = "123456";
- String url = "jdbc:mysql://localhost:3306/inventory?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false";
- Connection connection = null;
- try {
- //2 鍒涘缓閾炬帴瀵硅薄connection
- connection = DriverManager.getConnection(url,user,password);
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return connection;
- }
- //鍏抽棴璧勬簮鐨勬柟娉�
- public static void close(Connection connection ) {
- try {
- if (connection != null) {
- connection.close();
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- public static void close(PreparedStatement preparedStatement ) {
- try {
- if (preparedStatement != null) {
- preparedStatement.close();
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- public static void close(ResultSet resultSet ) {
- try {
- if (resultSet != null) {
- resultSet.close();
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
一个Java系统测试的更多相关文章
- 一个Java文件至多包含一个公共类
编写一个java源文件时,该源文件又称为编译单元.一个java文件可以包含多个类,但至多包含一个公共类,作为编译时该java文件的公用接口,公共类的名字和源文件的名字要相同,源文件名字的格式为[公共类 ...
- 一个java源文件中为什么只能有一个public类。
我们都遇到过一个源文件中有多个java类,但当第一个类使用public修饰时,如果下面还有类使用public修饰,会报错.也就是是说一个java源文件最多只能有一个public类. 当有一个publi ...
- webmagic的设计机制及原理-如何开发一个Java爬虫
之前就有网友在博客里留言,觉得webmagic的实现比较有意思,想要借此研究一下爬虫.最近终于集中精力,花了三天时间,终于写完了这篇文章.之前垂直爬虫写了一年多,webmagic框架写了一个多月,这方 ...
- Java基础-一个java文件多个类的问题
一个.java文件当然可以包括多个类.但这些类有一个特殊的类与其它的不同,,这个类是带public 属性的类.一个.java类文件中仅有一个public属性的类.而且这个类与文件名相同.
- 在Eclipse中,如何把一个java项目变成web项目
经常在eclipse中导入web项目时,出现转不了项目类型的问题,导入后就是一个java项目.解决步骤:1.进入项目目录,可看到.project文件,打开.2.找到<natures>... ...
- 搭建java开发环境、使用eclipse编写第一个java程序
搭建java开发环境.使用eclipse编写第一个java程序 一.Java 开发环境的搭建 1.首先安装java SDK(简称JDK). 点击可执行文件 jdk-6u24-windows-i586. ...
- 分享:写了一个 java 调用 C语言 开发的动态库的范例
分享:写了一个 java 调用 C语言 开发的动态库的范例 cfunction.h 代码#pragma once#ifdef __cplusplusextern "C" {#e ...
- java程序保护如何知识产权,特别提供一个java 开发的java 源代码级的混淆器
java程序保护如何知识产权,特别提供一个java 开发的java 源代码级的混淆器 下载地址:http://yunpan.cn/QXhEcGNYLgwTD 运行方式:java -jar Encryp ...
- 自己写一个java.lang.reflect.Proxy代理的实现
前言 Java设计模式9:代理模式一文中,讲到了动态代理,动态代理里面用到了一个类就是java.lang.reflect.Proxy,这个类是根据代理内容为传入的接口生成代理用的.本文就自己写一个Pr ...
随机推荐
- HBase单机模式安装
第一部分 安装前准备 1.安装hadoop 今天刚刚学了hbase的一点基础,准备安装Hbase实际操练一下.因为安装hbase的前提条件是已经成功安装了hadoop,而且hadoop的版本要和hba ...
- 2 jmeter常用功能介绍-测试计划、线程组
1.测试计划测试用来描述一个性能测试,所有内容都是基于这个测试计划的. (1)User Defined Variables:设置用户全局变量.一般添加一些系统常用的配置.如果测试过程中想切换环境,切换 ...
- 字符串转 多行 ,判断给定一组id ,查库中不存在用
SELECT REGEXP_SUBSTR('17,20,23', '[^,]+', 1, LEVEL, 'i') AS STR FROM DUAL CONNECT BY LEVEL < ...
- [sh]getopt参数解析
https://www.cnblogs.com/FrankTan/archive/2010/03/01/1634516.html sh参数处理方法 * 手工处理方式 * getopts #好像不支持长 ...
- (转)EOS中账户、钱包和密钥的关系
EOS对于账户的设计与ETH有很大的不同,引入了Account账户, Wallet钱包, 钱包密码, Key公私钥, Permission权限等众多概念,刚入门的时候感觉一头雾水.本文希望通过对这些概 ...
- UML序列图的理解:
UML序列图的理解:UML序列图是指一个对象的方法在处理过程中调用其他对象的图:重点是要突出调用其他对象的序列:
- .Net拾忆:从List去除重复-拾忆集合
方法1: private static List<int> DistinctList(List<int> list) {//去除重复 HashSet<int> ha ...
- js中两个!!的理解
在js中经常有两个!!出现,经常让人难以理解 (function () { var a = 10; var b = 20; function add(num1, num2) { var num1 = ...
- 文档设计也需要坚持DRY原则--支付中心应用部署结构图完善
今天上午,我拿着支付中心的设计文档,给入职不久的同事讲解目前支付中心系统的应用部署情况.当时同事嗯嗯地点头反应. 下午呢,发现自己设计的有问题,赶紧给予完善. 代码重构方面讲究DRY编程原则.我们在设 ...
- node.js初识11
1.EJS Embedded JavaScript templates 模板引擎 .EJS的效率不高,因为他后台是通过字符串来处理的 <ul> <% for(var i = 0 ; ...