软件工程课程设计编码与测试
- 格式:doc
- 大小:227.50 KB
- 文档页数:21
实验报告课程名称软件工程实验项目实验4 编码及测试系别___ 计算机学院 _ ______专业____ 网络工程 _ ___班级/学号________网工1101_______组长姓名 __薛又蜚 2011011312___同组成员荣理 2011011325胡跃伟 2011011313孙昊 2011011323 实验日期_ XXXX.XX.XX成绩___________________ ___指导教师田英爱1 实验内容学生根据系统的特点,选取适当的编程语言实现系统,并对系统功能实施测试。
2 实验要求完成系统的编码和测试工作,书写实验报告。
3 分组说明组长姓名:[薛又蜚]负责任务说明:[选择开发语言,编码,给组员分配任务。
]成员姓名:[孙昊]各自负责任务说明:[在本次实验中参与关于系统测试的构想和讨论。
]成员姓名:[荣理]各自负责任务说明:[在本次实验中同样参与关于系统测试的构想和讨论。
]成员姓名:[胡跃伟]各自负责任务说明:[对测试用例进行实施与测试。
]4系统题目4.1 请根据所选系统,说明所利用的开发语言,并说明所开发系统的编码结构。
使用了php,mysql,javascript4.2 根据系统用例及所实现的系统功能,编写4-5个具有代表性的测试用例。
(1)登录模块测试登录、密码模块测试本测试采用黑盒测试法:为了检测不同权限的用户在登录时,是否能进入对应的模块并得到对应有的权限,检查密码模块的正确有效测试用例1(正确输入)【输入:】用户;lc 密码:lc【期望输出】:登录成功,显示前台销售管理窗体【实际输出】:登录成功,显示前台销售管理窗体测试用例2(无该用户)【输入】:用户名:aa 密码:aa【期望输出】:提示用户名或密码错误【实际输出】:提示用户名或密码错误测试用例3 (密码错误)【输入】:用户;lc 密码:aa【期望输出】:提示用户名或密码错误【实际输出】:提示用户名或密码错误测试用例4(无输入)【输入】:用户:密码:【期望输出】:提示用户名或密码错误【实际输出】:提示用户名或密码错误(2)销售管理模块测试本测试是采用黑盒与白盒测试,为了检测系统的销售时的收银业务销售定价等功能的输入输出进行验证。
第6章编码和测试案例6教务管理系统“教务管理系统”在开发中,需要考虑到其用户量大以及活动时间集中的现状,必须做好相应的算法优化以及缓存措施。
教务系统还有开学期间批量提供学生注册等功能,所以必须考虑到高校有大量学生,很都工作都必须要实现可以批量完成。
高校教务管理系统还提供大量学生成绩记录和查询,而很多学生都精通计算机相关知识,所以安全性上要做较多考虑。
同时考虑到我国一些高校实行学年制,一些高校实行学年学分制,所以教务管理系统要同时支持两种制度。
教务管理系统,可以一个模块一个模块的测试,例如注册,排课等,单元测试通过后,再组合在一起。
测试时,需要模拟大量学生同时操作,以测试系统在高负载情况的反应,是否能正常运转。
同时由于教学程序的敏感性,需要做一定数据安全性设计,防入侵,防灾害损失,如断电,水灾等。
【知识导入】在完成了项目的总体设计和详细设计之后,也就结束了项目的全部设计工作。
此时需要考虑如何将设计变为代码,也就进入我们本章节要学习的内容,编码是将软件设计的结果转换成某种程序设计语言书写的程序,是软件工程实施过程中一个必不可少的阶段。
程序编码是把“详细设计”转换成用某一种程序设计语言编写可在实际环境中运行的实际程序。
在此过程中,编程语言的选择和程序设计风格会影响到软件的质量与可维护性。
对源程序的质量要求主要有3点:①语法正确。
②源程序具有良好的结构性。
③良好的程序设计风格。
在软件开发,特别是大型软件的开发过程中,每一个阶段都可能引入新的错误。
虽然可以在每个阶段结束之前通过正式的技术评审和管理复审的方法发现并纠正软件中的差错,但审查并不能发现所有的错误。
软件测试是对软件规格说明、软件设计和编码的最全面也是最后的审查。
通过软件测试,可以发现软件中绝大部分潜伏的错误,从而大大提高软件产品的可用性、正确性、可靠性,进而可显著提高软件产品质量。
统计表明,软件测试工作量往往占软件开发总工作量的40%以上。
而对于那些可靠性要求极高的系统,如在关键的实时嵌入式计算机系统的软件测试成本可能是软件开发其它阶段总成本的3—5倍以上。
软件开发实习的编码与测试工作在软件开发过程中,编码与测试是两个非常重要的环节。
作为一名软件开发实习生,掌握编码与测试技能是必不可少的。
本文将重点探讨软件开发实习中的编码与测试工作,并给出一些相关的实践建议。
一、编码工作编码是软件开发的核心环节,它是将需求转化为可执行代码的过程。
作为一名软件开发实习生,在编码工作中应该注意以下几个方面:1. 了解项目需求:在进行编码之前,首先要对项目的需求进行全面的了解。
可以阅读需求文档、与项目经理进行沟通等方式,确保自己对项目需求有清晰的认识。
2. 熟悉编程语言和开发工具:不同的项目可能会使用不同的编程语言和开发工具,作为实习生应该熟悉所使用的编程语言和开发工具,并不断学习和提升自己的技术能力。
3. 使用合适的编码规范:编码规范是软件开发中非常重要的一环,它可以提高代码的可读性和可维护性。
在进行编码工作时,应该遵循团队所制定的编码规范,编写出高质量的代码。
4. 代码版本控制:在软件开发过程中,往往需要多人协同工作。
使用代码版本控制工具,如Git,可以方便地管理和追踪代码的变动,保证代码的安全性和可追溯性。
5. 进行代码复审:代码复审是保证代码质量的重要环节。
作为实习生,应该参与代码复审的工作,学习他人的经验和技巧,并不断改进自己的编码能力。
二、测试工作测试是软件开发中一个同样重要的环节,它是为了验证所开发的软件是否符合需求和预期。
作为一名软件开发实习生,在测试工作中应该注意以下几个方面:1. 了解测试需求:在进行测试工作之前,首先要了解测试需求。
可以与测试人员沟通,明确测试的范围和目标,为测试工作做好准备。
2. 编写测试用例:测试用例是进行软件测试的基本单位,它描述了测试的输入数据、预期输出和测试步骤。
作为实习生,应该学习如何编写高质量的测试用例,并不断完善自己的测试能力。
3. 执行测试用例:执行测试用例是测试工作的核心任务,它通过输入一组测试数据,观察输出结果是否符合预期,从而验证软件的功能和性能。
淮海工学院计算机工程学院实验报告书课程名:《软件工程》题目:图着色理论在仓库系统中的应用——编码和测试班级:网络122学号:83姓名:叶婷1、实验目的与要求(1)选定项目中以模块,给出详细设计结果与C语言代码,对其使用白盒和黑盒测试技术设计若干测试用例。
然后,使用测试用例进行实际测试操作实验,并给出测试结果;(2)了解一些典型的自动化测试软件和方法,建议有条件可下载、安装Mercury Interactive 公司的负载测试工具LoadRunner、功能测试工具WinRunner和测试管理工具TestDirector;IBM-Rational公司的测试套件Rational Suite TestStudio的Rational Robot、Rational TestManagerhe、Rational Quantify等工具。
2、实验内容一、编码1. 1系统界面设计描述当用户启动程序后真接显示主界面,在主界面中有‘用户管理’,‘商品入库’,‘商品出库’,‘库存管理’以及退出系统。
当用户在未登录的状态下执行任何操作时系统会自动判断是否已经登录,若用户还没有登录则显示登录界面,让用户进行登录。
若登录的帐号不存在则表示该用户还不是员工,故需要用户重新申请新的用户,新用户的类型为普通员工,当普通用户已经通过管理员审核,并且分配了相关的权限后就可以登录系统。
若用户是管理员则该用户可以对普通用户进行相关的修改和删除,而且还可以修改、查询、删除库存表及商品出入库表中的相关信息。
若用户是普通员工则只能进行商品的出入库及查询。
1.1.1登录界面设计用户通过输入登录的账号和密码及类型系统进行验证1.1.2商品出入库界面设计1.1.3库存界面设计编码1.2.1登录界面(主要代码)public boolean isExistsEmply(String id){boolean flags=false;try{int count=0;String sql1="select 员工号from Users where 员工号=";PreparedStatement ps=(sql1);(1, (String)id);ResultSet result=();while()){}();();if (count>0){=id;flags=true;getInfo(id);return flags;}else{((String)id);}}catch(Exception e){();}return flags;}oString().trim();password=(2).trim();employtype=(3).toString().trim();emplooy=(4).toString().trim();}();();}catch(Exception e){();}}...............");();isE=true;return isE;}else if "否")){(UID);return isE;return isE;}1.2.2出库界面(主要代码)public Object setSdata2(){try{String sql2="select * from OutStore";Statement st=();ResultSet result=(sql2);Sdata2=new Object[Row2][Column2];int n=0;while()){Sdata2[n][0]=(1).toString().trim();Sdata2[n][1]=(2).toString().trim();Sdata2[n][2]=(3).toString().trim();Sdata2[n][3]=(4).toString().trim();Sdata2[n][4]=(5).toString().trim();Sdata2[n][5]=(6).toString().trim();n++;}();();return Sdata2;}catch(Exception e){();}return Sdata2;}oString().trim();newStoreOfOut[2]=(3).toString().trim();newStoreOfOut[3]=new Integer(4));newStoreOfOut[4]=(5).toString().trim();newStoreOfOut[5]=(6).toString().trim();}();();return newStoreOfOut;}catch(Exception e){();return newStoreOfOut;}1.2.3入库界面public Object setSdata(){try{String sq2="select * from InStore";Statement st=();ResultSet result=(sq2);Sdata=new Object[Row][Column];int n=0;while()){Sdata[n][0]=(1).toString().trim();Sdata[n][1]=(2).toString().trim();Sdata[n][2]=(3).toString().trim();Sdata[n][3]=(4).toString().trim();Sdata[n][4]=(5).toString().trim();Sdata[n][5]=(6).toString().trim();n++;}();();return Sdata;}catch(Exception e){();}return Sdata;}oString().trim();newRow[2]=(3).toString().trim();newRow[3]=new Integer(4));newRow[4]=(5).toString().trim();newRow[5]=(6).toString().trim();}();();1.2.4oString().trim();Sdata[n][1]=(2).toString().trim();Sdata[n][2]=(3);n++;();();return Sdata;}catch(Exception e){}return Sdata;}public void init(){1.1.1分析研究报告可以使软件开发团体尽可能早的估计研制课题的可行性,可以在定义阶段较早的认识到系统方案的缺陷,可以节省时间、财力和精力,并且避免了专业方面的困难.及早地预测项目的可行性,在可行的前提下获得最好的实施方案。
软件工程中的软件工程师编码与测试能力在软件工程领域中,软件工程师的编码和测试能力是至关重要的。
编码是软件开发的核心环节,它决定了软件的功能、性能和质量。
而测试是为了确保软件的正确性和稳定性。
本文将探讨软件工程师在编码和测试方面需要具备的能力。
一、编码能力编码能力是软件工程师最基本的技能之一。
它涉及到程序语言的掌握、算法和数据结构的理解以及代码的设计和实现。
一个优秀的软件工程师应该具备以下几个方面的编码能力:1. 熟悉程序语言:软件工程师需要熟练掌握至少一种程序语言,比如Java、C++、Python等。
熟悉程序语言可以使工程师能够更好地理解和编写代码。
2. 理解算法和数据结构:算法和数据结构是编写高效代码的基础。
软件工程师应该对常用的算法和数据结构有深入的理解,并能够灵活运用它们解决实际问题。
3. 设计和实现代码:软件工程师需要具备良好的代码设计能力和实现能力。
他们应该能够将需求转化为可执行的代码,并且能够写出结构清晰、可维护的代码。
二、测试能力测试是为了保证软件质量而进行的活动。
软件工程师需要具备良好的测试能力,以保证软件的正确性和稳定性。
以下是软件工程师在测试方面应该具备的能力:1. 熟悉测试方法和工具:软件工程师应该了解各种测试方法和工具,包括单元测试、集成测试、系统测试等。
他们应该能够选择合适的测试方法和工具,并能够根据需求进行测试。
2. 编写测试用例:软件工程师需要编写各种类型的测试用例,包括正常情况下的输入输出、边界条件、异常情况等。
测试用例应该全面覆盖软件的功能和性能需求。
3. 进行测试执行和结果分析:软件工程师需要执行测试用例,并对测试结果进行分析。
他们应该能够找出软件中的缺陷,并进行合理的修复和验证。
三、综合能力除了编码和测试能力,软件工程师还需要具备一些综合能力,以便更好地完成工作。
以下是几个重要的综合能力:1. 沟通能力:软件工程师需要与团队成员、产品经理和用户进行有效的沟通。
淮海工学院计算机工程学院实验报告书课程名:《软件工程》题目:图着色理论在仓库系统中的应用——编码和测试班级:网络122学号:2012122683姓名:叶婷1、实验目的与要求(1)选定项目中以模块,给出详细设计结果与C语言代码,对其使用白盒和黑盒测试技术设计若干测试用例。
然后,使用测试用例进行实际测试操作实验,并给出测试结果;(2)了解一些典型的自动化测试软件和方法,建议有条件可下载、安装Mercury Interactive 公司的负载测试工具LoadRunner、功能测试工具WinRunner和测试管理工具TestDirector;IBM-Rational公司的测试套件Rational Suite TestStudio的Rational Robot、Rational TestManagerhe、Rational Quantify等工具。
2、实验内容一、编码1. 1系统界面设计描述当用户启动程序后真接显示主界面,在主界面中有‘用户管理’,‘商品入库’,‘商品出库’,‘库存管理’以及退出系统。
当用户在未登录的状态下执行任何操作时系统会自动判断是否已经登录,若用户还没有登录则显示登录界面,让用户进行登录。
若登录的帐号不存在则表示该用户还不是员工,故需要用户重新申请新的用户,新用户的类型为普通员工,当普通用户已经通过管理员审核,并且分配了相关的权限后就可以登录系统。
若用户是管理员则该用户可以对普通用户进行相关的修改和删除,而且还可以修改、查询、删除库存表及商品出入库表中的相关信息。
若用户是普通员工则只能进行商品的出入库及查询。
1.1.1登录界面设计用户通过输入登录的账号和密码及类型系统进行验证1.1.2商品出入库界面设计1.1.3库存界面设计1.2编码1.2.1登录界面(主要代码)public boolean isExistsEmply(String id){boolean flags=false;try{int count=0;String sql1="select 员工号from Users where 员工号=?";PreparedStatement ps=conn.prepareStatement(sql1);ps.setString(1, (String)id);ResultSet result=ps.executeQuery();while(result.next()){count=result.getRow();}result.close();ps.close();if (count>0){this.UID=id;flags=true;getInfo(id);return flags;}else{error.errorDialog((String)id);}}catch(Exception e){e.printStackTrace();}return flags;}//根据‘工号’分别获取对应的的信息public void getInfo(String uid){try{String sql2="select 员工姓名,密码,员工类型,是否员工from Users where 员工号=?";PreparedStatement pps=conn.prepareStatement(sql2);pps.setString(1,uid);ResultSet result=pps.executeQuery();while(result.next()){name=result.getString(1).toString().trim();password=result.getString(2).trim();employtype=result.getString(3).toString().trim();emplooy=result.getString(4).toString().trim();}result.close();pps.close();}catch(Exception e){e.printStackTrace();}}//对登录的'工号'进行密码验证public boolean login(String id,String pwd,String type){boolean isEmploy=false;try{if (id.equals(UID) && pwd.equals(password) && type.equals(employtype)){isEmploy=true;return isEmploy;}else{return isEmploy;}}catch(Exception e){e.printStackTrace();}return isEmploy;}//判断用户是否已经通过管理员的审核public boolean Y_NEmply(){boolean isE=false;if (this.emplooy.equals("是")){System.out.println("员工号:"+UID+"已经通过了审核.................");main.showMainFarme();isE=true;return isE;}else if (this.emplooy.equals("否")){error.noEmplo0y(UID);return isE;}return isE;}1.2.2出库界面(主要代码)public Object setSdata2(){try{String sql2="select * from OutStore";Statement st=conn.createStatement();ResultSet result=st.executeQuery(sql2);Sdata2=new Object[Row2][Column2];int n=0;while(result.next()){Sdata2[n][0]=result.getString(1).toString().trim();Sdata2[n][1]=result.getString(2).toString().trim();Sdata2[n][2]=result.getString(3).toString().trim();Sdata2[n][3]=result.getString(4).toString().trim();Sdata2[n][4]=result.getString(5).toString().trim();Sdata2[n][5]=result.getString(6).toString().trim();n++;}result.close();st.close();return Sdata2;}catch(Exception e){e.printStackTrace();}return Sdata2;}//先判断库存表中是否存在要出库的商品编号public boolean isExistsGid(String gid){boolean flags=false;try{int count=0;String sql3="select count(商品编号) from StoreManage where 商品编号=?";PreparedStatement ps=conn.prepareStatement(sql3);ps.setString(1, gid);ResultSet result=ps.executeQuery();while(result.next()){count++;}result.close();ps.close();if (count>0){flags=true;return flags;}else{return flags;}}catch(Exception e){e.printStackTrace();}return flags;}//判断库存表中的库存量是否满足出库的笨条件public boolean lookNumber(String gid,int number){boolean flags=false;try{int num=0;String sql4="select 库存量from StoreManage where 商品编号=?";PreparedStatement ps=conn.prepareStatement(sql4);ps.setString(1, gid);ResultSet result=ps.executeQuery();while(result.next()){num=result.getInt(1);}result.close();ps.close();if (number<=num){flags=true;}elseflags=false;return flags;}catch(Exception e){e.printStackTrace();}return flags;}//商品出库向出库表写入一条数据的出库记录public void newStoreOuput(String outgid,String outgname,int outgnum){ try{String sql5="insert into OutStore (商品编号,商品名称,出库数量,出库人,出库时间) values(?,?,?,?,getdate())";PreparedStatement ps=conn.prepareStatement(sql5);ps.setString(1, outgid);ps.setString(2, outgname);ps.setInt(3, outgnum);ps.setString(4, outpeople);ps.executeQuery();ps.close();}catch(Exception e){e.printStackTrace();}}//这是要修改库存表中的库存量public void updateStoreManage(String outgid ,int num){try{String sql6="update StoreManage set 库存量=(select 库存量from StoreManage where 商品编号=?)-? where 商品编号=?";PreparedStatement ps=conn.prepareStatement(sql6);ps.setString(1,outgid);ps.setInt(2, num);ps.setString(3, outgid);ps.executeQuery();ps.close();}catch(Exception e){e.printStackTrace();}}//向出库表模型中添加一条新一出库记录public Object addOutStoreToTable(String outgid){try{String sql7="select * from OutStore where 商品编号=? and 出库编号=(select count(*) from OutStore)";PreparedStatement ps=conn.prepareStatement(sql7);ps.setString(1, outgid);ResultSet result=ps.executeQuery();while(result.next()){newStoreOfOut[0]= new Integer(result.getInt(1));newStoreOfOut[1]=result.getString(2).toString().trim();newStoreOfOut[2]=result.getString(3).toString().trim();newStoreOfOut[3]=new Integer(result.getInt(4));newStoreOfOut[4]=result.getString(5).toString().trim();newStoreOfOut[5]=result.getString(6).toString().trim();}result.close();ps.close();return newStoreOfOut;}catch(Exception e){e.printStackTrace();}return newStoreOfOut;}1.2.3入库界面public Object setSdata(){try{String sq2="select * from InStore";Statement st=conn.createStatement();ResultSet result=st.executeQuery(sq2);Sdata=new Object[Row][Column];int n=0;while(result.next()){Sdata[n][0]=result.getString(1).toString().trim();Sdata[n][1]=result.getString(2).toString().trim();Sdata[n][2]=result.getString(3).toString().trim();Sdata[n][3]=result.getString(4).toString().trim();Sdata[n][4]=result.getString(5).toString().trim();Sdata[n][5]=result.getString(6).toString().trim();n++;}result.close();st.close();return Sdata;}catch(Exception e){e.printStackTrace();}return Sdata;}//向入库表中插入新的数据public void goodsInserData(String gid,String gname,int gnum){try{String sql3="insert into InStore (商品编号,商品名称,入库数量,入库人,入库时间) values(?,?,?,?,getdate())";PreparedStatement ps=conn.prepareStatement(sql3);ps.setString(1, gid);ps.setString(2, gname);ps.setInt(3, gnum);ps.setString(4, inpeople);ps.executeUpdate();ps.close();}catch(Exception e){e.printStackTrace();}}//判断库存表中是否有相同商品编号的商品存在public boolean isExistsGood(String gid){boolean flags=false;try{String sql4="select * from StoreManage where 商品编号=?";PreparedStatement ps=conn.prepareStatement(sql4);ps.setString(1, gid);ResultSet result=ps.executeQuery();int i=0;while(result.next()){i++;}result.close();ps.close();if (i>0){//如果库存表中存在该商品的商品编号,则调用修改函数flags=true;return flags;else{//若库存表中不存在则调用插入函数新插入一条数据return flags;}}catch(Exception e){e.printStackTrace();}return flags;}//若库存表中不存在则新建一条信息public void insertStoreManage(String gid,String gname,int gnum){try{String sql5="insert into StoreManage (商品编号,商品名称,库存量) values(?,?,?)";PreparedStatement ps=conn.prepareStatement(sql5);ps.setString(1, gid);ps.setString(2, gname);ps.setInt(3, gnum);ps.executeUpdate();ps.close();}catch(Exception e){e.printStackTrace();}}//如果存在直接修改原有的数量//1、先获取原有的库存量public int getStoreNumber(String gid){int num=0;try{String sql6="select 入库数据from StoreManage where 商品编号=?";PreparedStatement ps=conn.prepareStatement(sql6);ps.setString(1,gid);//ps.executeQuery();ResultSet result=ps.executeQuery();num=result.getInt(1);}result.close();ps.close();return num;}catch(Exception e){e.printStackTrace();}return num;}//2、再修改库存量public void updateStoreManage(int count,String gid){try{int NUM=getStoreNumber(gid)+count;String sql7="update StoreManage set 库存量=NUM where 商品编号=?";PreparedStatement ps=conn.prepareStatement(sql7);ps.setString(1,gid);//ps.setInt(1, count);//ps.setString(2, gid);ps.executeUpdate();ps.close();}catch(Exception e){e.printStackTrace();}}//error!没有注意到出库表会存在多条相同的记录//向入库表模型中添加一条入库记录public void addStoreOnInStore(String gid){Object[] newRow=new Object[6];try{String sql8="select * from InStore where 商品编号=? and 入库编号=(select count(*) from InStore)";PreparedStatement ps=conn.prepareStatement(sql8);ps.setString(1,gid);ResultSet result=ps.executeQuery();newRow[0]= new Integer(result.getInt(1));newRow[1]=result.getString(2).toString().trim();newRow[2]=result.getString(3).toString().trim();newRow[3]=new Integer(result.getInt(4));newRow[4]=result.getString(5).toString().trim();newRow[5]=result.getString(6).toString().trim();}result.close();ps.close();//向表模式中添加一行新数据dtm1.addRow(newRow);}catch(Exception e){e.printStackTrace();}}1.2.4库存管理界面public Object setSData(){try{String sql2="select * from StoreManage";Statement st=conn.createStatement();ResultSet result2=st.executeQuery(sql2);Sdata=new Object[Row][Column];int n=0;while(result2.next()){Sdata[n][0]=result2.getString(1).toString().trim();Sdata[n][1]=result2.getString(2).toString().trim();Sdata[n][2]=result2.getInt(3);n++;}result2.close();st.close();return Sdata;}catch(Exception e){System.out.println(e.getMessage());}return Sdata;public void init(){//先调用方法获得表头和二维表的表数据//this.setSData();//this.setHeader();this.setTitle("天涯仓库管理");this.setSize(700,300);this.setLocation(300, 150);this.setLayout(new GridLayout(2,1));dtm1=new DefaultTableModel(Sdata,Sheader);jtable=new JTable(dtm1);pane1=new JScrollPane(jtable);jtable.setRowHeight(30);jtable.setGridColor(Color.blue);jp1.add(jlbl1);jp1.add(jtxt1);jp1.add(jlbl2);jp1.add(jtxt2);jp1.add(jlbl3);jp1.add(jtxt3);jp1.add(btnupdate);jp1.add(btndel);btnupdate.addActionListener(this);btndel.addActionListener(this);jtable.addMouseListener(this);//dtm1.addTableModelListener(jtable);this.add(pane1);this.add(jp1);this.show();}public boolean UpdateStoreDate1(String goodid,String goodname,int goodnum){ boolean flags=false;try{String Sql3="update StoreManage set 商品名称=?,库存量=? where 商品名称='goodid'";PreparedStatement ps=conn.prepareStatement(Sql3);ps.setString(1, goodname);ps.setInt(2, goodnum);ps.executeUpdate();flags=true;}catch(Exception e){System.out.println(e.getMessage());}return flags;}//更新数据public boolean UpdateStoreDate(String goodid,String goodname,int goodnum){ boolean flags=false;try{String Sql3="update StoreManage set 商品名称=?,库存量=? where 商品名称=?";PreparedStatement ps=conn.prepareStatement(Sql3);ps.setString(1, goodname);ps.setInt(2, goodnum);ps.setString(3, goodid);ps.executeUpdate();ps.close();flags=true;}catch(Exception e){System.out.println(e.getMessage());}return flags;}//删除选中的数据public boolean DelStoreDate(String goodid){boolean flags=false;try{String sql4="delete from StoreManage where 商品编号=?";PreparedStatement ps=conn.prepareStatement(sql4);ps.setString(1, goodid);ps.executeUpdate();ps.close();flags=true;}{System.out.println(e.getMessage());}return flags;}//判断是否缺货public boolean IsDeletio(){boolean flags=false;try{String sql5="select count(商品编号) from StoreManage where 库存量<=50";Statement st=conn.createStatement();ResultSet result=st.executeQuery(sql5);int m=0;while(result.next()){m++;}//判断是否有商品缺失if (m>0){flags=true;}}catch(Exception e){System.out.println(e.getMessage());}return flags;}二、测试1.1引言1.1.1编写目的本软件是用来有效的管理超市仓库货物数量及种类,以方便超市工作人员可以全面的了解超市仓库库存货物数量和种类来方便高效的管理超市仓库。