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

本文主要是介绍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

四 系统实现



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

这篇关于java servlet软件缺陷库管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/556249

相关文章

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

破茧 JDBC:MyBatis 在 Spring Boot 中的轻量实践指南

《破茧JDBC:MyBatis在SpringBoot中的轻量实践指南》MyBatis是持久层框架,简化JDBC开发,通过接口+XML/注解实现数据访问,动态代理生成实现类,支持增删改查及参数... 目录一、什么是 MyBATis二、 MyBatis 入门2.1、创建项目2.2、配置数据库连接字符串2.3、入

Springboot项目启动失败提示找不到dao类的解决

《Springboot项目启动失败提示找不到dao类的解决》SpringBoot启动失败,因ProductServiceImpl未正确注入ProductDao,原因:Dao未注册为Bean,解决:在启... 目录错误描述原因解决方法总结***************************APPLICA编

深度解析Spring Security 中的 SecurityFilterChain核心功能

《深度解析SpringSecurity中的SecurityFilterChain核心功能》SecurityFilterChain通过组件化配置、类型安全路径匹配、多链协同三大特性,重构了Spri... 目录Spring Security 中的SecurityFilterChain深度解析一、Security

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Apache Ignite 与 Spring Boot 集成详细指南

《ApacheIgnite与SpringBoot集成详细指南》ApacheIgnite官方指南详解如何通过SpringBootStarter扩展实现自动配置,支持厚/轻客户端模式,简化Ign... 目录 一、背景:为什么需要这个集成? 二、两种集成方式(对应两种客户端模型) 三、方式一:自动配置 Thick

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

SQL Server跟踪自动统计信息更新实战指南

《SQLServer跟踪自动统计信息更新实战指南》本文详解SQLServer自动统计信息更新的跟踪方法,推荐使用扩展事件实时捕获更新操作及详细信息,同时结合系统视图快速检查统计信息状态,重点强调修... 目录SQL Server 如何跟踪自动统计信息更新:深入解析与实战指南 核心跟踪方法1️⃣ 利用系统目录