java servlet软件缺陷库管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点
    java servlet软件缺陷库管理系统是一套完善的java web信息管理系统 系统采用serlvet+dao+bean(mvc模式),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。

java serlvet 软件缺陷库系统1


二、功能介绍
(1)菜单管理:对菜单信息进行添加、删除、修改和查看
(2)角色管理:对角色信息进行添加、删除、修改和查看
(3)菜单角色管理:对菜单角色信息进行添加、删除、修改和查看
(4)用户管理:对用户信息进行添加、删除、修改和查看
(5)属性管理:对属性信息进行添加、删除、修改和查看
(6)缺陷管理:对缺陷信息进行添加、删除、修改和查看
(7)流程节点管理:对流程节点信息进行添加、删除、修改和查看
(8)审批管理:对审批信息进行删除、修改和查看 通过流程配置进行审批   

数据库设计

(1)菜单信息表如表5.1所示:

表5.1 菜单信息表

序号

字段名称

数据类型

长度

主键

描述

1

cdid

INTEGER

11

菜单编号

2

cdmc

VARCHAR

40

菜单名称

3

xh

VARCHAR

40

序号

4

lx

VARCHAR

40

类型

5

lj

VARCHAR

40

链接

6

f

VARCHAR

40

(2)角色如表5.2所示:

表5.2 角色表

序号

字段名称

数据类型

长度

主键

描述

1

jsid

INTEGER

11

角色编号

2

jsmc

VARCHAR

40

角色名称

3

js

VARCHAR

40

介绍

(3)菜单角色表如表5.3所示:

表5.3 菜单角色表

序号

字段名称

数据类型

长度

主键

描述

1

cdjsid

INTEGER

11

菜单角色编号

2

cd

VARCHAR

40

菜单

3

js

VARCHAR

40

角色

(4)用户管理表如表5.4所示:

表5.4 用户管理信息表

序号

字段名称

数据类型

长度

主键

描述

1

yhid

INTEGER

11

用户编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

5

lxdh

VARCHAR

40

联系电话

6

lxdz

VARCHAR

40

联系地址

7

js

VARCHAR

40

角色

(5)属性管理详情表如表5.5所示:

表5.5 属性管理详情表

序号

字段名称

数据类型

长度

主键

描述

1

sxid

INTEGER

11

属性编号

2

sxmc

VARCHAR

40

属性名称

3

sxz

VARCHAR

40

属性值

4

bj

VARCHAR

40

标记

(6)缺陷表如表5.6所示:

表5.缺陷表

序号

字段名称

数据类型

长度

主键

描述

1

qxid

INTEGER

11

缺陷编号

2

qxzt

VARCHAR

40

缺陷主题

3

ssxt

VARCHAR

40

所属系统

4

zxt

VARCHAR

40

子系统

5

ssxq

VARCHAR

40

所属需求

6

cshj

VARCHAR

40

测试环境

7

yxj

VARCHAR

40

优先级

8

yzdj

VARCHAR

40

严重等级

9

qxyy

VARCHAR

40

缺陷原因

10

yh

VARCHAR

40

用户

11

sj

VARCHAR

40

时间

12

zt

VARCHAR

40

状态

13

fj

VARCHAR

40

附件

14

ms

VARCHAR

40

描述

15

qxzht

VARCHAR

40

缺陷状态

ER图设计

代码实现

	private void insertM(HttpServletRequest request, HttpServletResponse response){//缺陷添加quexianDao dao=new quexianDao();quexian quexian=new quexian();quexian.setQxid((String)request.getParameter("keyid"));
quexian.setQxzt((String)request.getParameter("qxzt"));
quexian.setSsxt((String)request.getParameter("ssxt"));
quexian.setZxt((String)request.getParameter("zxt"));
quexian.setSsxq((String)request.getParameter("ssxq"));
quexian.setCshj((String)request.getParameter("cshj"));
quexian.setYxj((String)request.getParameter("yxj"));
quexian.setYzdj((String)request.getParameter("yzdj"));
quexian.setQxyy((String)request.getParameter("qxyy"));
quexian.setYh((String)request.getParameter("yh"));
quexian.setSj((String)request.getParameter("sj"));
quexian.setZt((String)request.getParameter("zt"));
quexian.setFj((String)request.getParameter("fj"));
quexian.setMs((String)request.getParameter("ms"));
quexian.setQxzht((String)request.getParameter("qxzht"));response.setCharacterEncoding("gb2312");try {dao.insert(quexian);request.setAttribute("flag", "操作成功"); request.getRequestDispatcher("quexian/quexianadd.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void ListM(HttpServletRequest request, HttpServletResponse response){//缺陷信息列表ResultSet rs=null;quexianDao dao = new quexianDao();String str=(String)request.getParameter("Page");String sql="";response.setCharacterEncoding("gb2312");try{if(str==null){str="0";}		String qxzt=(String)request.getParameter("qxzt"); if(qxzt!=null&&!qxzt.equals("")){ //如果缺陷主题不为空 拼接sql语句sql+=" and qxzt like '%"+qxzt+"%'";//拼接sql语句 } String ssxt=(String)request.getParameter("ssxt"); if(ssxt!=null&&!ssxt.equals("")){ //如果所属系统不为空 拼接sql语句sql+=" and ssxt='"+ssxt+"'";//拼接sql语句 } String zxt=(String)request.getParameter("zxt"); if(zxt!=null&&!zxt.equals("")){ //如果子系统不为空 拼接sql语句sql+=" and zxt='"+zxt+"'";//拼接sql语句 } String ssxq=(String)request.getParameter("ssxq"); if(ssxq!=null&&!ssxq.equals("")){ //如果所属需求不为空 拼接sql语句sql+=" and ssxq='"+ssxq+"'";//拼接sql语句 } String cshj=(String)request.getParameter("cshj"); if(cshj!=null&&!cshj.equals("")){ //如果测试环境不为空 拼接sql语句sql+=" and cshj='"+cshj+"'";//拼接sql语句 } String yxj=(String)request.getParameter("yxj"); if(yxj!=null&&!yxj.equals("")){ //如果优先级不为空 拼接sql语句sql+=" and yxj='"+yxj+"'";//拼接sql语句 } String yzdj=(String)request.getParameter("yzdj"); if(yzdj!=null&&!yzdj.equals("")){ //如果严重等级不为空 拼接sql语句sql+=" and yzdj='"+yzdj+"'";//拼接sql语句 } String qxyy=(String)request.getParameter("qxyy"); if(qxyy!=null&&!qxyy.equals("")){ //如果缺陷原因不为空 拼接sql语句sql+=" and qxyy='"+qxyy+"'";//拼接sql语句 } if(request.getSession().getAttribute("yhm")!=null){ //如果用户不为空 拼接sql语句sql+=" and yh='"+request.getSession().getAttribute("yhm").toString()+"'";//拼接sql语句 } String sj=(String)request.getParameter("sj"); if(sj!=null&&!sj.equals("")){ //如果时间不为空 拼接sql语句sql+=" and sj='"+sj+"'";//拼接sql语句 } String zt=(String)request.getParameter("zt"); if(zt!=null&&!zt.equals("")){ //如果状态不为空 拼接sql语句sql+=" and zt='"+zt+"'";//拼接sql语句 } String fj=(String)request.getParameter("fj"); if(fj!=null&&!fj.equals("")){ //如果附件不为空 拼接sql语句sql+=" and fj='"+fj+"'";//拼接sql语句 } String ms=(String)request.getParameter("ms"); if(ms!=null&&!ms.equals("")){ //如果描述不为空 拼接sql语句sql+=" and ms='"+ms+"'";//拼接sql语句 } String qxzht=(String)request.getParameter("qxzht"); if(qxzht!=null&&!qxzht.equals("")){ //如果缺陷状态不为空 拼接sql语句sql+=" and qxzht='"+qxzht+"'";//拼接sql语句 } rs=dao.qlist(sql);PrintWriter out = response.getWriter();request.setAttribute("rs", rs); request.getRequestDispatcher("quexian/quexianlist.jsp?Page="+str).forward(request, response);}catch(Exception e){e.toString();e.printStackTrace();}		}private void PListM(HttpServletRequest request, HttpServletResponse response){//测试信息列表ResultSet rs=null;quexianDao dao = new quexianDao();System.out.println("alist");String sql="";response.setCharacterEncoding("gb2312");try{rs=dao.qlist(sql);PrintWriter out = response.getWriter();request.setAttribute("rs", rs); request.getRequestDispatcher("quexian/quexianplist.jsp").forward(request, response);}catch(Exception e){e.toString();e.printStackTrace();}}private void modifyIndex(HttpServletRequest request, HttpServletResponse response){//缺陷修改首页ResultSet rs=null;response.setCharacterEncoding("gb2312");quexianDao dao = new quexianDao();String keyid=(String)request.getParameter("keyid");String sql="";if(keyid!=null&&!keyid.equals("")){sql+=" and qxid='"+keyid+"'";}try{rs=dao.qlist(sql);PrintWriter out = response.getWriter();request.setAttribute("rs", rs); request.getRequestDispatcher("quexian/quexianmodify.jsp").forward(request, response);//response.sendRedirect("quexian/quexianmodify.jsp");}catch(Exception e){e.toString();e.printStackTrace();}}

三、注意事项
    1、管理员账号:admin密码:admin 数据库配置文件DBO.java
     2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
    3、数据库文件名是jsprjqx.sql ,系统名称rjqx
    4、系统首页地址:http://127.0.0.1:8080/rjqx/login.jsp

四 系统实现



 源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/311317.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LINUX 抓包工具Tcpdump离线安装教程

本次教程基于内网环境无法访问网络使用安装包进行安装抓包工具 1、首先给大家看下一共有6个安装包,依次进行解压,包我就放到csdn上了,需要的可以联系我进行下载 2打包然后传到服务器任意一个目录下,进入到当前目录,然后…

基于ssm的教师办公管理系统的设计与实现论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本教师办公管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息…

数据结构: 位图

位图 概念 用一个bit为来标识数据在不在 功能 节省空间快速查找一个数在不在一个集合中排序 去重求两个集合的交集,并集操作系统中的磁盘标记 简单实现 1.设计思想:一个bit位标识一个数据, 使用char(8bit位)集合来模拟 2.预备工作:a.计算这个数在第几个char b.是这个ch…

EasyExcel详解(结合官方文档)

EasyExcel 零、前言 文章是根据官方文档&#xff0c;加上自己的测试运行总结出来的&#xff0c;目前只总结的EasyExcel读的部分&#xff0c;写的部分还未完结&#xff0c;后续会更新1、官方文档 https://easyexcel.opensource.alibaba.com/2、EasyExcel的maven依赖 <!--…

利用ufun对部件进行操作(新建、打开、保存、另存、关闭等)

一、概述 在NX二次开发中我们常常会用到新建、打开、保存、另存为和关闭命令&#xff0c;这些函数一般放在UF_part.h头文件下&#xff0c;下面针对以上有关功能结合案例进行说明。 二、功能函数结合案例说明 2.1新建文件创建块保存功能 1&#xff09;NXOpenC代码 #include …

DNS域名查询过程

目录 DNS&#xff08;Domain Names System&#xff09; 域名转IP IP转域名 域名 域名查询流程 浏览器DNS缓存 操作系统缓存 本地host文件 完整流程 递归查询 迭代查询 DNS&#xff08;Domain Names System&#xff09; 域名系统&#xff0c;将域名和 IP 地址进行转…

Python中如何使用_new_实现单例模式

单例模式是一个经典设计模式&#xff0c;简要的说&#xff0c;一个类的单例模式就是它只能被实例化一次&#xff0c;实例变量在第一次实例化时就已经固定。 在Python中常见的单例模式有None&#xff0c;这就是一个很典型的设计&#xff0c;通常使用 if xxx is None或者if xxx …

学习路径概览

根据codewave 低代码官方的资料&#xff0c;我们以一个简单的初级采购管理系统为例&#xff0c;带大家进行学习。学习的案例框架如下&#xff1a; https://ik4mh7u2np.feishu.cn/docx/NjyEd9qD5oElkoxJhapc3fV4nPe?fromfrom_copylink​​​​​​​ 主要分为以下四个学习模块

数组(定义,静态初始化,地址值,元素访问,索引,遍历,动态初始化,两种初始化的区别,练习)

文章目录 1.数组概念&#xff1a; 2.数组的定义格式一&#xff1a;格式二&#xff1a;详解&#xff1a;注意点&#xff1a; 3.数组的静态初始化完整格式&#xff1a;格式详解&#xff1a;注意点&#xff1a;简化格式:练习1&#xff1a;练习2&#xff1a;练习3&#xff1a; 4.地…

uniapp二维码有效期倒计时三分钟的效果是实现

需求&#xff1a; 会员码时效只有3分钟有效期&#xff0c;需要在页面倒计时3分钟&#xff0c;没有长按保存的效果实现 效果&#xff1a; 代码&#xff1a; <templete> <view> <uni-list> <view class"custom-list-item" click"onCode(c…

音视频基本概念

多线程好处 充分利用cpu资源的工具 多线程带来的问题 多线程管理问题 线程的互斥与同步 互斥 资源 有限多个人去抢 同步 有序进行 锁的种类 读写锁 读写分离 自旋锁 等待资源释放&#xff08;例如&#xff09; 可重入锁 SDL锁 互斥锁 SDL_CreateMutex/SDL_Destro…

请将简单的代码推给AI

如火如荼的人工智能火遍人类&#xff0c;如果您已非稚请将简单的事儿推给AI。 (笔记模板由python脚本于2023年12月31日 18:11:16创建&#xff0c;本篇笔记适合能写出一行代码的所有人的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网&#xff1a;https://www.python.org/ …