基于BS的日常费用报销管理系统_软件工程课程设计.doc_第1页
基于BS的日常费用报销管理系统_软件工程课程设计.doc_第2页
基于BS的日常费用报销管理系统_软件工程课程设计.doc_第3页
基于BS的日常费用报销管理系统_软件工程课程设计.doc_第4页
基于BS的日常费用报销管理系统_软件工程课程设计.doc_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 随着计算机技术的发展,信息化技术越发贴近人们的生活。传统的记 事本管理方式由于过多的繁杂步骤、信息保存的不完整性,已经满足不了 当今社会各公司及个人的需求。 日常费用报销管理系统在设计方面采用 B/S 模式,同时使用 JSP 技术 进行基本页面的设计,使用 MyEclipse 工具进行项目编写整合,利用 MVC 框架中的 servlet 完成功能实现,后台数据库选用 MySQL 数据库。主要功能 包括登录连接、员工信息录入、报销登记、报销审批和查询报表五大功能。 用户通过登录界面登录到客户端对报销信息进行增删改查操作。 日常费用报销管理系统使得费用管理轻松、快捷,并且使得信息能够 长时间保存,提高企业的管理效率。 目目 录录 第一章 绪论 1 1.1 论文背景及课题来源 1 1.2 本课题在国内外发展状况.1 1.3 应解决的问题及系统开发意义.1 第二章 开发工具及相关技术介绍 .3 2.1 JAVA与 MVC 简介.3 2.2MYECLIPSE介绍 .4 2.3B/S 模型介绍4 2.4 用 JAVA 实现 MVC 模型5 2.5 JAVA中的 JSP 简介.6 2.6 MYSQL 简介 .6 第三章 系统需求分析 .7 3.1 系统任务描述 7 3.2 系统功能分析 7 3.2.1 系统的功能需求.7 3.2.2 系统数据流图. 8 3.2.3 系统数据分析 .8 3.3 系统可行性分析 .10 第四章 系统设计 .12 4.1 系统总体结构设计 .12 4.2 数据库设计 .13 4.3 系统功能模块详细设计 .14 第五章 编码与实现 16 5.1 系统主要模块代码 .16 5.1.1 连接数据库 16 5.1.2 登陆进系统 17 5.1.3 增加新报销信息18 5.1.4 修改报销信息20 5.1.5 删除报销数据23 5.2 系统测试 .25 结 束 语 .28 参考文献 .29 第一章第一章 绪论绪论 1.11.1 论文背景及课题来源论文背景及课题来源 随着计算机技术的发展,信息化技术越发贴近人们的生活。传统的记事本管理方 式由于过多的繁杂步骤、信息保存的不完整性,已经满足不了当今社会各公司及个人 的需求。日常费用报销管理系统使得费用管理轻松、快捷,并且使得信息能够长时间 保存,提高企业的管理效率。 基于 B/S 模型的日常费用报销管理系统是应用于管理公司的日常费用报销,它的 主要特点有: (1)通用性:日常费用报销管理系统在各种各样的系统网络中均可以运行,系统 具有较高的可移植性和使用性; (2)实用性:系统具有良好的操作界面,简单易懂,便于工作人员利用来管理业 务。 (3)信息持久性:日常费用报销管理系统可以长时间保存信息,这方便了公司长 时间之后依然可以对公司消费进行查账。 日常费用报销管理系统的实用性和信息持久性是其最大的特点。一个良好的系统 必须达到操作简单的效果,这样才使得用户能够快速地完成对信息的增删改查工作。 信息的长时间保存更是其重要性之一,有了信息的持久性,系统就有了更大的保障。 1.21.2 本课题在国内外发展状况本课题在国内外发展状况 随着计算机技术的发展、普及,越来越多的手动操作被计算机所替代,这一方面 解决了资源的浪费,另一方面方便了人们更简单地解决问题,当人们意识到计算机系 统的优越性之后,系统开发随之出现。信息技术的发展使得越来越多的公司都开始利 用系统来管理公司的日常业务,像金牛、兴元 X 是比较好的应用比较广泛的管理系统, 很多国内外公司都在使用,方便了公司对于员工的消费状况进行统计、管理。各方面 数据显示反馈信息都是对其优越性的赞同。 1.31.3 应解决的问题及系统开发意义应解决的问题及系统开发意义 本系统针对公司日常费用报销的需要,建立了客户端、服务器端。主要解决的问 题包括: (1)客户端要实现界面化,并且界面尽量简约、美观、人性化。 (2)服务器端能够正确的启动,时刻监视客户端,通过 session 保持与客户端的 连接。 (3)客户端能够准确连接上服务器端,将输入的信息及时处理并保存到数据库中。 (4)异常处理,对于用户的不正确操作系统应该有对应的提示。 基于 B/S 的日常费用报销管理系统它的开发意义在于为公司提供了一个方便快捷 的平台帮助公司处理日常费用报销业务。 第二章第二章 开发工具及相关技术介绍开发工具及相关技术介绍 2.12.1 JavaJava 与与 MVCMVC 简介简介 Java 是一种面向对象的程序设计语言,是由 Sun Microsystems 公司推出的 Java 程 序设计语言和 Java 平台(即 JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的 通用性、高效性、安全性,广泛应用于移动电话、个人电脑、游戏控制台、数据中心 和互联网。在当今社会移动互联网的产业环境下,Java 更具备了显著的优势和广阔的 前景1。 基于 MVC,M 是指模型,V 是指视图,C 是指控制,使用 MVC 的目的是将 M 和 V 的代码实现分离,从而使得程序轻度耦合,独立性更优越。比如一批统计数据可以 分别用线形图、柱状图来表示。C 确保了 M 和 V 的同步,一旦 M 改变,V 应该同步 更新。 模型视图控制器(MVC)是 Xerox PARC 为编程语言 Smalltalk80 发明的一 种软件设计模式,现已被广泛使用。后来被推荐为 Oracle 旗下 Sun 公司 Java EE 平台 的设计模式,并且受到越来越多的使用 ColdFusion 和 PHP 的开发者的欢迎。模型视 图控制器模式是一个有用的工具箱2。 MVC 优点: (1)耦合性低 业务层和视图层分离,这样就可以更改视图层代码而不用重新编译模型和控制器 代码,同样,一个应用的业务流程或者业务规则的改变只需要改动 MVC 的模型层即可。 因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则3。 (2)生命周期成本低 MVC 使开发和维护客户端的技术含量下降。 (3)部署快 使用 MVC 模式使开发时间大幅度减少,它使 Java 开发人员更加专注于业务逻辑, 界面程序员(HTML 和 JSP 开发人员)更加专注于表现形式上。 (4)可维护性高 将 M 和 C 进行分离使得 WEB 更容易得到修改与维护。 (5)有利软件工程化管理 由于不同的层各司其职,每一层不同的应用具有一定的相同的特征,有利于通过 工程化、工具化管理程序代码。控制器也提供了一个好处,就是可以使用控制器来联 接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力 的手段。给定一些可重用的模型和视图,控制器可以根据用户的需求选择模型进行处 理,然后选择视图将处理结果显示给用户。 2.2MyEclipse2.2MyEclipse 介绍介绍 MyEclipse(是 MyEclipse Enterprise Workbench 的缩写)是对 EclipseIDE 的扩展, 利用它我们可以在 JavaEE 的开发、发布和数据库以及应用程序服务器的整合方面进一 步提高工作效率。它是功能丰富的 JavaEE 集成开发环境,包括了完备的编码、调试、 测试和发布功能 HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate4。 MyEclipse 是一个十分优秀的用于开发 Java, J2EE 的 Eclipse 插件集合, MyEclipse 的功能非常强大,支持也十分广泛。MyEclipse 目前支持 Java Servlet,AJAX, JSP, Struts,Spring, Hibernate,JDBC 数据库链接工具等多项功能。MyEclipse 几乎囊括了 目前所有主流开源产品的专属 eclipse 开发工具。根据官方最新消息,MyEclipse 2013 已经正式发布!MyEclipse 2013 支持 HTML5、JQuery 和主流的 Javascript 库。 随着 MyEclipse 2013 支持 HTML5 ,你可以添加音频、视频等新的元素到你的项 目,从而为移动设备创建更多效果更好的 Web 应用程序。你甚至还可以通过 HTML5 可视化设计器设计令人难以置信的用户界面。同时,随着 MyEclipse 2013 支持 JQuery,你可以通过插件来提升性能,并添加动画效果到设计中5。 2.3B/S2.3B/S 模型介绍模型介绍 B/S 是 Browser/Server 的缩写,即浏览器/服务器技术,也可以称为 B/S 模型。很 显然,B/S 技术有以下几个基本特点: (1)是 WEB 兴起后的一种网络结构模式,它不同于 C/S 的一点就是 B/S 设计模 式是通过浏览器来实现的,WEB 浏览器是客户端最主要的应用软件。这种模式统一了 客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使 用。客户机上只需安装一个浏览器,如 google 浏览器或 Internet Explorer,服务器安装 Oracle、Sybase、Informix 或 SQL Server 等数据库。浏览器通过 Web Server 同数据库 进行数据交互。 (2)维护和升级方式简单易行。目前,软件系统的改进速度越来越快,B/S 架构 的产品明显体现着更为方便的特性。对一个稍微大一点公司来说,系统管理人员如果 需要在几百甚至上千台电脑之间来回奔跑,效率和工作量是非常庞大的,B/S 架构的软 件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。 无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的 操作只需要针对服务器进行。因此,维护和升级革命的方式是给客户机减负,而给服 务器增压。 (3)成本降低,选择更多。大家都知道 windows 在桌面电脑上几乎造成垄断,浏 览器成为了标准配置,但在服务器操作系统上 windows 并不是处于绝对的统治地位。 现在的趋势是凡使用 B/S 架构的应用管理软件,只需安装在 Linux 服务器上即可,而 且安全性高。所以服务器操作系统的选择是很多的,不管选用哪种操作系统都可以让 大部分人使用 windows 作为桌面操作系统电脑不受影响,这就使得最流行的 Linux 操 作系统快速发展起来,Linux 除了操作系统是免费的以外,连数据库也是免费的,这种 选择非常盛行。 B/S 软件技术是一种通用的,基于消息的技术。用图形表示如图 1 所示: 图 1 B/S 技术模型 Browser/Server 结构的主要优点就是速度快。 2.42.4 用用 JAVAJAVA 实现实现 MVCMVC 模型模型 MVC 设计模式是一个存在于服务器表达层的模型,它将应用分开,使得应用之间 轻度耦合,提高独立性。其中 MVC 是 Model-View-Control 的简称,即模型-视图-控 制器。这个过程如图2所示: 图 2 MVC 实现信息交互图 在 MVC 模式中,Web 用户向服务器提交的所有请求都由控制器接管。接受到请 求之后,控制器负责决定应该调用哪个模型来进行处理;然后模型根据用户请求进行 相应的业务逻辑处理,并返回数据;最后控制器调用相应的视图来格式化模型返回的 数据,并通过视图呈现给用户6。 2.52.5 JavaJava 中的中的 JSPJSP 简介简介 JSP 是由 SunMicrosystems 公司倡导、许多公司参与一起建立的一种动态的技术标 准。在传统的网页 HTML 文件中加入 JSP 标签,就构成了 JSP 网页。java 程序片段可 以操纵数据库、重新定向网页以及发送 E-mail 等,实现建立动态网站所需要的功能7。 所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样 大大降低了对客户浏览器的要求,即使客户浏览器不支持 Java 语言,也可以访问 JSP 网页8。 2.62.6 MySQLMySQL 简介简介 MySQL 是一个开放源码的小型关联式数据库管理系统,开发者为瑞典 MySQLAB 公司。目前 MySQL 被广泛地应用在 Internet 上的中小型网站中。由于体积小、速度快、 总体拥有成本低,特别是开放源码这一特点,许多中小型网站为了降低网站总体拥有 成本而选择了 MySQL 作为网站数据库9。 MySQL 的重要管理工具: (1)服务管理器 可以通过服务管理器启动、停止、暂停 MySQL 服务器的相关服务。当操作服务器 中的数据时,应该首先确保该服务器正常启动了相应的服务。 (2)企业管理器 企业管理器提供了一种图形化界面来操作数据库对象,在该界面中可以进行数据 库、表等数据对象的增加、修改、查询、删除等操作,可以完成 MySQL 中绝大多数的 管理工作。 (3)查询分析器 查询分析器是运行、测试用户的 Transact-sql 语句、批处理和脚本的场所。 Transact-sql(又称为 t-sql)是 MySQL 在标准的 SQL 语句上进行了扩充的语言,是交互 式的结构化查询语言,能够完成对 MySQL 数据库的所有操作。SQL(结构化查询语言)起 源于 IBM 的实验室,目前 SQL 语言已经成为操作关系数据库中数据的标准语言。在 ASP 中,只要访问数据库,就必然会使用 SQL 语言10。 第三章第三章 系统需求分析系统需求分析 3.13.1 系统任务描述系统任务描述 本系统是采用 Java 基于 B/S 开发的日常费用报销管理系统。管理员在通过登陆界 面登陆进系统后,对系统内的信息进行增加、修改、删除、查询,其中包括员工登记 信息和报销处理信息,处理完信息后必须经由领导进行审批方可通过。 用户只需要在登录界面中输入正确的用户名和密码即可登录,本系统用户名已定, 已设置初始密码,如要进行修改必须先输入原始密码才可进行修改。保证系统信息的 安全性。 3.23.2 系统功能分析系统功能分析 .1 系统的功能需求系统的功能需求 报销系统通常需要完成以下一些基本功能: 登录进系统; 登记公司员工信息; 登记报销信息; 对报销信息进行修改; 对报销信息进行审批; 查询报表; 本系统具体功能需求如下: (1)不论是管理员还是用户都需要在登录界面输入正确的用户名和密码后才可以 登录到各自的界面中去。 (2)对公司员工的信息进行对号登记,确定人员部门、联系方式等以便随时联系 员工核对报销信息。 (3)报销信息登记,要知道报销对象的报销是由、费用科目、报销日期等。 (4)如果因工作上的疏忽导致第一次信息输入错误,可对信息进行修改,确保信 息的正确性及完整性。 (5)当报销信息完整地确认后,需交由领导进行审批确认通过报销事件才可完成。 (6)当报销已处理,几个月或几年后需要进行统计分析,依然可以进行报销查询。 (7)显著提高工作效率,减少人力、物力资源的投入。报销管理系统运行稳定、 安全性高、性能可靠。 .2 系统数据流图系统数据流图. . 系统的顶级数据流图如图 3 所示: 图 3 系统顶级数据流图 用户在界面进行操作,数据通过控制层传输到数据库,然后进行 SQL 语句处理, 将数据进行增删改查操作,并传输到显示界面。 .3 系统数据分析系统数据分析 在仔细调查费用报销系统过程的基础上,总结出该系统需要满足以下系统数据的 需求: (1)系统管理员用户名和管理员密码。 (2)员工信息记录员工的资料。包括员工的姓名、性别、所属部门、身份证号、 联系方式。 (3)报销对象信息记录报销对象报销理由和信息。包括单据号、报销对象、单据 状态、是否付款、报销日期、报销是由、财务账期、报销金额及办理人。 登陆:用户 名密码 员工信息的 增删改查 报销登记数 据的增删改 审批数据传 递 报表查询 数据库 MySQL (4)报销审批主要是是否报销状态的改变。 日常费用报销管理系统总体 E-R 图如图 4 所示: 图 4 日常费用报销管理系统总体 E-R 图 在仔细调查企业项目管理过程的基础上,总结出该系统需要满足以下主要系统数 据的需求: 图 5 用户实体图 姓名 报销对象 性别联系方式 身份证所属部门 保存信息 终结报销信息 管理员 审批 修改 删除报销信息 未通过 通过 增加 用户 用户名 密码 图 6 部门员工实体图 图 7 报销信息实体图 3.33.3 系统可行性分析系统可行性分析 从技术发面来看,Java 语言的优点主要表现在:简单、面向对象、安全性等方面。 (1)简单性 Java 与 C+语言非常相近,但 Java 比 C+简单,它抛弃了 C+中的一些不是绝对必 要的功能,如头文件、预处理文件、指针、结构、运算符重载、多重继承以及自动强 迫同型。Java 实现了自动的垃圾收集,简化了内存管理的工作。这使程序设计更加简 便,同时减少了出错的可能。 (2)面向对象 Java 将程序视为一个大的对象,再将各个子系统分为小的对象。对象中封装了它 的状态和方法,很好地实现了模块化和信息隐藏;而类则提供了一类对象的原型,通 是否付款 报销金额 财务账期 办理人 报销日期 报销事由 单据状态 单据号 报销对象 报销信息 部门员工联系方式 身份证 所属部门 性别 姓名 过继承和重载机制,子类可以使用或重新定义父类或超类所提供的方法,从而既实现 了代码的复用,又提供了一种动态的解决方案。 Java 是一种完全面向对象的程序设计语言,它除了数组、布尔和字符三个基本数 据类型外的其它类都是对象,它不再支持全局变量。在 Java 中,如果不创建新类就无 法创建程序,Java 程序在运行时必须先创建一个类的实例,然后才能提交运行。 Java 同样支持继承特性,Java 的类可以从其它类中继承行为,但 Java 只支持类的 单重继承,即每个类只能从一个类中继承。 Java 支持界面,界面允许程序员定义方法但又不立即实现,一个类可以实现多个 界面,利用界面可以得到多重继承的许多优点而又没有多重继承的问题。 (3)安全性 用于网络、分布环境下的 Java 必须要防止病毒的入侵,Java 不支持指针,一切对 内存的访问都必须通过对象的实例变量来实现,这样就防止了程序员使用欺骗手段访 问对象的私有成员,同时也避免了指针操作中容易产生的错误。 从开发环境来看 ,JBuilder5 是一组全面高效率工具,使用 Java 编程语言创建可 伸缩的,高性能的和具有不依赖于平台性能的应用程序。JBuilder5 新增几个新功能, 并对已有的功能进行了改造,包括一个单步产品安装过程,以及自动卸载功能。其他 功能还有:对 JAVA 的支持,WEB 应用开发,Enterprise JavaBeans(EJB),JMS 和 EAR 向导,团队开发,编译器的增强功能,工程属性,配置 JDK,部署,IDE 的增强功能, 语言的支持。 从自身能力来看,本人在实习期间对 Java 语言进行过为期 4 个月的系统学习,对 Java 有一定的了解和掌握。虽然对 Java 的网络编程不是很熟悉,但是通过到图书馆查 阅书籍和网上收集资料,现在对 Java 网络编程有了一定的了解。 第四章第四章 系统设计系统设计 系统设计是系统开发的重要阶段,它直接影响到系统的质量,是整个开发工作的 核心。系统设计阶段的主要任务是:在对系统进行分析的过程中,科学合理地进行物 理模型设计。系统设计分为:总体设计和详细设计。总体设计包括系统的整体流程和 子系统将要实现的功能。面向对象将系统分为若干个对象,然后对各对象进行设计分 析。详细设计包括各模块的详细描述、输入输出设计等。 系统设计遵循的原则是:经济性、稳定性、适应性、系统性。 4.14.1 系统总体结构设计系统总体结构设计 本系统是用 Java 语言基于 B/S 开发设计的,其核心的 MVC 设计技术决定了该系 统的安全性和稳定性,从而保证了本系统有较强的使用性。其最终要的功能就是实现 了对数据库及前台页面的信息交互,实现了信息的增删改查,保证信息能够长时间保存。 基于 B/S 的 Java 日常费用报销管理系统的作用是提供给公司一个平台,用来管理 公司的日常费用报销。系统主要是由前台页面 JSP 中间控制层 Servler 及后台数据库 MySQL 组成。系统功能模块图如图 8 所示: 审 批 操 作 报 销 科 目 录 入 页 面 操 作 员 工 信 息 录 入 认 证 用 户 名 密 码 用 户 登 录 基于 JAVA 实现报销管理 报 销 信 息 操 作 连 接 服 务 器 客户端 图 8 系统功能模块图 系统客户端介绍: 本系统客户端分为用户登录和页面操作两个子模块。首先,用户登录是指用户通过 输入用户名和密码进入到页面操作,并且页面操作自动连接上服务器。页面操作模块 是指系统报销管理所具有的基本功能,如对信息进行增删改查操作,对数据进行处理 保证数据的合理性。 4.24.2 数据库设计数据库设计 本次数据库开发工具为 MySQL,具体设计的表单如下: 表 1 管理员信息表 字段名类型大小允许空备注 usernamevarchar20 否用户名 passwordvarchar20 否密码 表 2 公司员工信息表 字段名类型大小允许空备注 namevarchar20 否姓名 sexvarchar10 否性别 departmentvarchar25 否部门 id_cardvarchar20 否 省份证号 cellvarchar20 否 联系电话 表 3 报销员工信息表 字段名类型大小允许空备注 Do_numbervarchar20 否 单据号 objectvarchar10 否 报销对象 statevarchar25 否 单据状态 paymentvarchar20 否 是否付款 p_date Date20 否 报销日期 eventvarchar25 否 报销是由 periodvarchar25 否 财务账期 Moneyvarchar25 否 总报销金额 transactorvarchar20 否 办理人 4.34.3 系统功能模块详细设计系统功能模块详细设计 管理员登录模块流程图如图 9 所示: 开始 输入用户名与密码 查询数据库 是否有这条 记录? 进入管理员界面 提示用户名 或密码错误 结束 图 9 管理员登录模块流程图 管理员信息操作模块流程图如图 10 所示: 图 10 管理员登录模块流程图 进入管理界面 审 批 操 作 报 表 查 询 操 作 员 工 信 息 录 入 报 销 管 理 修 改 报 销 单 查 询 报 销 单 增 加 报 销 单 删 除 报 销 单 审 批 报 销 单 结束 第五章第五章 编码与实现编码与实现 5.15.1 系统主要模块代码系统主要模块代码 .1 连接数据库连接数据库 package unit; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class JDBCUtil private final String driver = “com.mysql.jdbc.Driver“; private final String url = “jdbc:mysql:/localhost:3306/bxgl?useUnicode=truecharacterEncoding=utf-8“; private final String user = “root“; private final String password = “123“; private Connection conn; public Connection getConnection() try Class.forName(driver); try conn = DriverManager.getConnection(url, user, password); catch (SQLException e) e.printStackTrace(); catch (ClassNotFoundException e) e.printStackTrace(); return conn; public void close() if(conn != null) try conn.close(); catch (SQLException e) e.printStackTrace(); conn = null; .2 登陆进系统登陆进系统 package controller; import java.io.IOException; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import service.UserService; import vo.User; public class Login extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(“utf-8“); String username = request.getParameter(“username“); String password = request.getParameter(“password“); User user = new User(username,password); UserService uerService = new UserService(); if(uerService.Login(user) List users = uerService.findUserList(); request.getSession().setAttribute(“username“, username); System.out.println(“users“); request.setAttribute(“message“, “登录成功!欢迎使用日常费用报销管 理系统!“); request.setAttribute(“users“, users); request.getRequestDispatcher(“/index.jsp“).forward(request, response); else request.setAttribute(“message“, “登录失败!请重新输入密码!“); System.out.println(“333333“); request.getRequestDispatcher(“/login.jsp“).forward(request, response); .3 增加新报销信息增加新报销信息 package controller; import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import service.New_messageService; import vo.New_message; public class AddNew_messageServlet extends HttpServlet private New_messageService nws = null; public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException this.doPost(request, response); public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(“utf-8“); / 首先获取输入的值 String action = request.getParameter(“action“); nws = new New_messageService(); if (“showAll“.equals(action) this.showAll(request, response); else this.add(request, response); this.showAll(request, response); private void add(HttpServletRequest request, HttpServletResponse response) String do_number = request.getParameter(“djh“); String object = request.getParameter(“bxdx“); String state = request.getParameter(“djzt“); String payment = request.getParameter(“sffk“); String p_date = request.getParameter(“data“); String event = request.getParameter(“bxsy“); String period = request.getParameter(“cwzq“); String money = request.getParameter(“bxze“); String transactor = request.getParameter(“blr“); New_message nm = new New_message(do_number, object, state, payment, p_date, event, period, money, transactor); nws.addNew_message(nm); private void showAll(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException / TODO Auto-generated method stub List nmlist = null; nmlist = nws.finAllNew_message(); request.setAttribute(“nmlist“, nmlist); request.getRequestDispatcher(“baoxiao.jsp“).forward(request, response); .4 修改报销信息修改报销信息 package controller; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import service.New_messageService; import vo.New_message; public class EditNew_messageServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException this.doPost(request, response); public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(“utf-8“); int id = Integer.parseInt(request.getParameter(“id“); String do_number = request.getParameter(“djh“); String object = request.getParameter(“bxdx“); String state = request.getParameter(“djzt“); String payment = request.getParameter(“sffk“); String p_date = request.getParameter(“data“); String event = request.getParameter(“bxsy“); String period = request.getParameter(“cwzq“); String money = request.getParameter(“bxze“); String transactor = request.getParameter(“blr“); /封装数据 New_message nm = new New_message(id,do_number,object,state,payment,p_date,event,period,money,transactor); New_messageService nms = new New_messageService(); boolean b = nms.updateNew_message(nm); if(b) request.getRequestDispatcher(“New_messageServlet“).forward(request, response); return; package controller; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import service.New_messageService; import vo.New_message; import vo.User; public class UpdateNew_messageServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException this.doPost(request, response); public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException response.setContentType(“text/html; charset=UTF-8“); request.setCharacterEncoding(“UTF-8“); response.setCharacterEncoding(“UTF-8“); /得到参数 id String id = request.getParameter(“id“); System.out.println(id); /调用数据库,更新 状态 New_messageService nms = new New_messageService(); New_message nm = nms.findNew_messageById(Integer.parseInt(id); request.setAttribute(“nm“, nm); request.getRequestDispatcher(“updateNew_message.jsp“).forward(request, response); 在此申明,修改涉及到的模块有两个,首先要进行一个查询,查询到之后将数据 显示在页面上,然后在进行修改修改完返回主界面。 .5 删除报销数据删除报销数据 package controller; import java.io.IOException; import java.io.PrintWriter; import java.util.List; impor

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论