1、 《JSP程序设计》课程实训说明书 (说明:标题为宋体,一号,居中,加粗,上面空三行) 题 目: 系 部: 计算机与信息工程系 专 业: 计算机软件技术 班 级: 姓 名: 学 号: 联系方式: 指导教师 : 苏建华 起止时间 : 20
2、23-6-23至2023-7-4 (说明:页面设立:上下右边距2cm,左边距3.5,项目文字三号,宋体,加粗,下划线同样长短) 课程设计任务书 一、设计题目:《新闻发布系统》 二、设计内容:实现一个新闻发布系统,重要功能涉及新闻查看功能、管理员登陆发布新闻和新闻管理功能。 三、设计参数:开发语言选择jsp,后台数据库任选,推荐选择mysql,应用程序与数据库的连接方式可以采用ODBC、jdbc等。 四、设计规定:开发的系统要有一定的完整性,有统一的web界面,运用jsp实现动态页面,通过前台的web界面调用后台的数据库。可以体现一个软件的基本功能。新闻发布系
3、统重要需要实现以下一些基本功能。 1) 查看新闻功能:任何用户均可以使用查看新闻功能。用户通过在系统导航栏上单击“查看新闻”超链接,可以进入查看新闻页面。查看新闻功能显示所有新闻,并且使用分页显示的效果,用户可通过单击下方的页码或在文本框中输入页码来跳转到任意一页浏览。这里显示的所有新闻按发布的时间降序排列,以保证最新发布的新闻位于最前面。用户通过单击每条新闻的标题可以查看到新闻的具体内容。 2) 管理员登录功能:当用户需要使用新闻管理功能时,需要先以管理员身份登录系统。当未登录用户单击系统导航栏上的“新闻管理”超链接时,进入管理员登录页面。用户可以在登录页面输入用户名和密码,若登录失败,
4、则重定向到管理员登录页面等待下一次登录。 3) 发布新闻功能:管理员通过在系统导航产上单击“发布新闻”超链接可以进入发布新闻页面。发布新闻时,需要填写新闻的标题和内容,发布时间取当前系统时间,不需要填写。 4) 新闻管理功能:当管理员登录系统后,可以进行新闻管理操作,涉及对现有新闻的修改和删除。在管理页面上,用户可通过单击每条记录右侧的“编辑”和“删除”超链接来进行操作。当管理员的本次维护工作结束后,可通过单击“管理员退出”超链接来注销管理员身份。 五、工作计划: 时间 完毕内容 提交文档 备注 第1天 查找资料,拟定题目,选择方案 课程设计任务书 设计准备阶段 第2天
5、 题目分析 需求分析阶段 第3、4天 功能模块的划分和设计 设计阶段 第5、6、7天 程序设计与调试 编码测试阶段 第8、9天 整理材料,撰写设计说明书 收尾阶段 第10天 课程设计答辩 课程设计说明书、设计源代码 课程设计考核,评估成绩 六、工作量规定:说明书内容不少于5000汉字,其中必须涉及总体设计,具体设计和数据库设计等相关图表。 (说明:标题“课程设计任务书”宋体三号加粗,除标题外的内容部分五号,宋体,) 摘 要 本系统重要阐述一个网上购书商城的前后台操作过程及一些关键技术。该系统会员信息、书籍信息、评论信息和公告信息
6、重要由管理员对数据库输入和修改。在前台,购物时会员一方面选择登陆,输入准确的会员用户名和密码,不是会员的选择注册。没登陆的话可以对书籍进行搜索、查看书籍详情、查看书城新闻新书动态等等,登陆后才可以对书籍进行购买、查看定单、查看购物车以及在会员中心对自己的信息进行修改。在后台,管理员除了对会员、书籍信息进行修改和输入以外,还可以对定单进行解决、评论进行审核。 多多网上书城系统和系统数据库的设计重要采用了JSP、Servlet、JavaBean、HTML、图形编辑工具DreamWeaver、RationalRose、PowerDesigner与SQL Server 2023等工具,通过WEB服
7、务器访问纯JSP页面,实现在线购物与其它相关功能。 关键字:MD5, MVC, Eclipse, 数据库连接池 目录 第一章 引 言 1 1.1 系统简介 1 1.2使用工具说明 1 1.3 本人完毕的工作 3 第二章 系统分析 5 2.1开发模式 5 2.2可行性分析 6 2.3需求分析 7 2.4系统的功能模块图 7 2.5系统数据流图 9 2.6系统流程图 9 第三章 概要设计 11 3.1 后台简要功能说明 11 3.2 数据库设计 11 第四章 具体设计 13 4.1系统结构设计 13 4.2数据库具体设计 16 第五章 程序源代码 20
8、 5.1 代码片段 20 第六章 系统测试与评价 25 6.1 系统测试 25 6.2 系统评价 26 第七章 系统使用说明 27 7.1 使用说明 27 7.2 后台程序使用方法 29 第八章 其他 30 8.1毕业设计总结 30 8.2致谢 30 8.3参考文献 31 第一章 引 言 1.1 系统简介 随着中国市场经济的日趋成熟,中国公司面对的竞争压力也越来越大,公司要想生存,就必须充足运用信息化手段来提高管理效率及市场响应速度。电子商务是在互联网开放的网络环境下,基于浏览器/服务器应用方式,实现消费者的网上购物、商户之间的网上交易和在线电
9、子支付的一种新型的商业运营模式。电子商务作为一种独立的经济形态,已初具规模,一些电子商务网站的成立,给人们的生活带来了巨大的影响。 如何建立公司的电子商务,如何把公司业务建在Internet上,涉及到建立电子商务网站、开发符合Internet特点的有效的业务应用、管理网上的交易信息、保证网上数据安全、快速反映市场变化以及充足满足Internet业务进一步发展的规定等等。对一个运营商业公司来说,电子商务网站是其生存的理由和基础,同时也是公司对外展示信息、从事商务活动的窗口和界面。如何设计、建立一个经济、实用、安全、高效、稳定的网站是每个电子商务网站必须考虑的问题。 而要解决好这些问题,就必须
10、在提高公司内部管理效率、充足运用公司内部资源的基础上,从整体上减少成本,加快对市场的响应速度,提高服务质量,提高公司的竞争力。但是公司在运用信息化技术时,必须要考虑成本、技术难度、发明的价值等几个方面。该系统最终实现消费者通过互联网进行网上购物,统一和谐的操作界面,能保证系统的易用性。规范、完善的基础信息设立。书籍分类详尽,可按不同类别查看书籍信息。按书籍大类及书籍名称进行模糊查询。实现网上购书。新书及特价书籍展示。书籍销售排行等功能。 1.2使用工具说明 Eclipse是一种Java的集成开发工具,可以方便快捷的开发大多数的Web项目。 PowerDesigner是一种数据库的建模工具
11、它可以通过很和谐的界面对数据库进行设立,从而可以更好的对数据库进行设计。 1.2.1概 述 (1) 开发成本减少--可以对自己功能组件进行plugin委托eclipse进行接入模块组件的管理体系中并结合MDA的特点进行构建化(例如IBM WSAD/IRAD的一些组件应用,国内普元构建平台,很多开源项目都会提供eclipse插件化方便用户使用--起到很好开关作用)。 (2) 为我们开拓一个B/S以外的一种很好机制RCP,例如我们在工作流OA系统中定制流程部分假如使用B/S结构开发成本高,性能低,假如使用RCP结合GEF使用可以方便实现流程定制工具,同时根据plugin的更新功能或者动态远
12、程装载,可以实现管理发布/更新既有b/s的特点又有c/s的优势。 (3) 使用eclipse的功能可以方便同在扩展方便完全引入它的优势。 1.2.2 Eclipse应用的结构 Eclipse的结构体系如图1-1所示: 图1-1 Eclipse类似于“软总线”的体系结构,Eclipse的核心部分(Platform Runtime)类似于一条“即插即用”的“总线”,它提供了许多的“插槽”(扩展点:extension poInt)。其余的部分都可当作类似于外部设备的“插件”(Plug-in),可随时加载和卸载。更为灵活的是每个插件又提供了“插槽”可继续安装其他的插件。 Eclipse
13、分为Eclipse平台、JDT、PDE、其他的插件几个部分。其中Eclipse平台是整个系统的基础,Eclipse的核心。JDT是提供了用于编辑、查看、编译、调试和运营Java代码的专门插件。PDE构建于Eclipse平台和JDT之上,提供了专门开发插件的工具。 Eclipse平台是在其上创建插件扩展的核心框架和服务的名称,是一个通用的基础架构。平台由平台运营时、工作空间、工作台、帮助、小组、调试构成。平台在结构上大体可分为核心(core)和用户界面(UI)两层。核心是与用户界面无关的基础结构,包含平台运营时和插件管理、工作空间和资源管理以及版本和配置管理。其中平台运营时又是Eclipse平
14、台的核心。 1.2.3 PowerDesigner的4种模型文献 (1) 概念数据模型 (CDM) CDM 表现数据库的所有逻辑的结构,与任何的软件或数据储藏结构无关。 一个概念模型经常涉及在物理数据库中仍然不实现的数据对象。 它给运营计划或业务活动的数据一个正式表现方式。 (2) 物理数据模型 (PDM) PDM 叙述数据库的物理实现。 藉由 PDM ,你考虑真实的物理实现的细节。 它进入帐户两个软件或数据储藏结构之内拿。 你能修正 PDM 适合你的表现或物理约束。 (3) 面向对象模型 (OOM) 一个OOM包含一系列包,类,接口 , 和他们的关系。 这些对象一起形成所
15、有的 ( 或部份) 一个软件系统的逻辑的设计视图的类结构。 一个OOM本质上是软件系统的一个静态的概念模型。 你使用 PowerDesigner 面向对象模型建立面向对象模型.(OOM) 你能为纯粹地对象- 导向的靠模切目的建立一个OOM, 产生Java文献或者PowerBuilder文献,或你能使用一个来自OOM的物理数据模型(PDM)对象 , 来表达关系数据库设计分析。 (4) 业务程序模型 (BPM) BPM 描述业务的各种不同内在任务和内在流程,并且客户如何以这些任务和流程互相影响。 BPM 是从业务合作人的观点来看业务逻辑和规则的概念模型,使用一个图表描述程序,流程,信息和合
16、作协议之间的交互作用 1.3 本人完毕的工作 网上书城系统分为前台和后台两个模块,本人重要负责数据库设计,后台界面设计和后台所有功能。数据库分为15个表(管理员表,会员表,会员等级表,书籍表,类别表,留言表,反馈表,收藏表,定单表,定单详情表,定单状态表,进货表,销售表,供应商表,新闻公告表)。重要完毕后台以下功能: (1) 管理员登陆 重要为管理者提供一个登陆平台。当登陆成功以后,管理员可以对书城进行相应的管理。 (2) 密码找回 重要为管理者提供一个找回密码的平台。 (3) 书籍管理 管理员可以对书籍进行增删改的操作。 (4) 订单管理 对消费者的各个订单进行操作。
17、5) 会员管理 管理睬员有关信息(涉及增删改)。 (6) 留言管理 为管理者提供一个留言管理的平台。 (7) 反馈管理 管理成员对书城的相关反馈信息。 第二章 系统分析 对于一个系统要进行可行性研究,才干分析出开发此系统是否合理,是否有经济效益。本章重要阐述系统的开发模式、可行性研究、需求分析和系统的结构图设计两方面。 2.1开发模式 2.1.1 MVC模式介绍 MVC模式是"Model-View-Controller"的缩写,中文翻译为"模式-视图-控制器"。MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者
18、同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己。MVC模式最早是smalltalk语言研究团提出的,应用于用户交互应用程序中。smalltalk语言和java语言有很多相似性,都是面向对象语言,很自然的SUN在petstore(宠物店)事例应用程序中就推荐MVC模式作为开发Web应用的架构模式。MVC模式是一种架构模式,其实需要其他模式协作完毕。在J2EE模式目录中,通常采用service to worker模式实现,而service to
19、worker模式可由集中控制器模式,派遣器模式和Page Helper模式组成。而Struts只实现了MVC的View和Controller两个部分,Model部分需要开发者自己来实现,Struts提供了抽象类Action使开发者能将Model应用于Struts框架中。 MVC模式是一个复杂的架构模式,其实现也显得非常复杂。但是,我们已经终结出了很多可靠的设计模式,多种设计模式结合在一起,使MVC模式的实现变得相对简朴易行。Views可以看作一棵树,显然可以用Composite Pattern来实现。Views和Models之间的关系可以用Observer Pattern体现。Control
20、ler控制Views的显示,可以用Strategy Pattern实现。Model通常是一个调停者,可采用Mediator Pattern来实现。 2.1.2 MVC模式的优点 大部分用过程语言比如ASP、PHP开发出来的Web应用,初始的开发模板就是混合层的数据编程。例如,直接向数据库发送请求并用HTML显示,开发速度往往比较快,但由于数据页面的分离不是很直接,因而很难体现出业务模型的样子或者模型的重用性。产品设计弹性力度很小,很难满足用户的变化性需求。MVC规定相应用分层,虽然要花费额外的工作,但产品的结构清楚,产品的应用通过模型可以得到更好地体现。 一方面,最重要的是应当有多个视
21、图相应一个模型的能力。在目前用户需求的快速变化下,也许有多种方式访问应用的规定。例如,订单模型也许有本系统的订单,也有网上订单,或者其他系统的订单,但对于订单的解决都是同样,也就是说订单的解决是一致的。按MVC设计模式,一个订单模型以及多个视图即可解决问题。这样减少了代码的复制,即减少了代码的维护量,一旦模型发生改变,也易于维护。 另一方面,由于模型返回的数据不带任何显示格式,因而这些模型也可直接应用于接口的使用。 再次,由于一个应用被分离为三层,因此有时改变其中的一层就能满足应用的改变。一个应用的业务流程或者业务规则的改变只需改动MVC的模型层。 控制层的概念也很有效,由于它把不同的
22、模型和不同的视图组合在一起完毕不同的请求,因此,控制层可以说是包含了用户请求权限的概念。 最后,它尚有助于软件工程化管理。由于不同的层各司其职,每一层不同的应用品有某些相同的特性,有助于通过工程化、工具化产生管理程序代码。 2.2可行性分析 可行性分析重要涉及:经济可行性、需求可行性、技术和设备可行性等方便。 2.2.1经济可行性 商业公司在运营过程中,经常会受到以下一些条件的限制: (1) 产品的宣传受到限制,采购商或顾客只能通过上门征询、电话沟通等方式进行各种信息的获取,受一定的时间与物理空间的局限并且成本较高。 (2) 庞大的商业经济周转。 (3) 复杂的产品周转渠
23、道。从看样品、谈价格到支付货款等一系列的产品周转渠道过于复杂,公司与顾客之间缺少全面的沟通与快捷运营的平台。 (4) 商业公司中根据季节的变化,热销商品在销售高峰到来时货源紧张,公司需要实时了解商品的销售情况,保证热销商品的要货满足率。 因此,公司需要重新结识市场、消费者以及自身市场定位,对的结识电子商务技术在公司中的重要地位,以少量的时间和资金建立公司信息门户网站并架设一定范围的商务网络,以此来制定长远发展战略,使公司与顾客间的经济活动变得更灵活、更积极。 2.2.3技术和设备可行性 硬件平台: (1)CPU:P42.8GHz; (2)内存:512MB以上。 软件平台: (1
24、)运营环境:Windows 2023 Server或Windows XP; (2)数据库:SQL Server 2023; (3)开发工具:Eclipse + MyEclipse; (4)浏览器:IE5.0及以上版本,推荐使用IE6.0; (5)分辨率:最佳效果1024×768。 2.3需求分析 通过对一些典型网上书城的考察、分析以及实际的市场调查,规定本系统具有以下功能: (1) 统一和谐的操作界面,能保证系统的易用性 (2) 规范、完善的基础信息设立 (3) 书籍分类详尽,可按不同类别查看书籍信息 (4) 按书籍大类及书籍名称进行模糊查询 (5) 实现网上购书 (6
25、) 新书及特价书籍展示 (7) 书籍销售排行 (8) 对书籍发表评论 (9) 查看定单 (10) 修改会员资料和密码 (11) 找回密码 2.4系统的功能模块图 2.4.1系统功能结构图 1. 多多网上书城系统前台功能结构如图2-1所示: 多多书城前台系统 图2-1 系统前台功能结构图 2.前台系统的重要功能如下图2-2所示: 会 员 找回密码 修改资料 购买书籍 查看定单 发表评论 查看购物车 登陆成功 图2-2 会员功能结构图 3.多多网上书城系统后台功能结构如图2-3 所示: 多多书城前台系统 图2-
26、3 系统后台功能结构图 2.5系统数据流图 1.会员登陆功能的数据流图如下表达: 登 录 会员 购买,收藏 图2-4 登陆数据流图 2. 会员购买书籍的数据流图如下表达: 购 买 会员 下订单 图2-5 购买数据流图 3. 查看定单数据流图如下表达: 查 询 定 单 登 录 登 录 结果显示 图2-6 查询定单数据流图 2.6系统流程图 整个系统的流程可以用流程图具体表达,前后台管理登陆的流程图如下图所示: 网上书城 前台 判断是否注册 注册 登录 购物车 退出 开始 浏览书籍和评
27、论、查询 会员中心 注销 资料修改 查看定单 购买书籍 删除、修改、清空商品 查看 数据管理 确认购买 导出 数据 是 否 生成定单 填写定单资料 完毕购物 图2-7 前台整体流程图 第三章 概要设计 3.1 后台简要功能说明 后台登陆:后台管理员根据自己的用户名和密码进行登陆,以进行商城后台管理,提高安全性。 商品管理:具有商品管理权限的管理员可以添加商品信息(重要在进货后)、修改已有商品信息(如产品价格调整)以及删除商品信息(不再销售某种商品)。 会员管理:系统注册会员的基本信息由前台注册得到,后台管理员对系统注册会员的信息进行维护(如会员
28、账户密码丢失等)。 定单管理:后台管理员可以对定单的状态进行及时修改,同时,定期对不必要定单进行删除解决,以减少数据繁杂,方便管理。 留言管理:管理员要进行及时的查看留言、回复留言和屏蔽留言。 供应商管理:根据需要,管理员可以对自己需要的数据进行导出打印。 意见反馈管理: 根据成员反馈进行书城的改善。 3.2 数据库设计 图3-1 图3-2 图3-3 第四章 具体设计 具体设计是整个设计过程中,最重要的环节之一。下面就分如下几个部分对系统进行具体设计: 4.1系统结构设计 4.1.1书城后台系统采用典型的三层架构 其结构如图4-1所示:
29、 图4-1 4.1.2前台模块设计 (1) 会员注册 提供注册功能,用户填写必要资料和可选资料后成为本购物网站的会员,只有注册会员才可以进行购物操作,非注册会员只能查看商品资料。 (2) 会员登录 注册会员输入注册用户名和密码可以登录本网站进行购物。 (3) 显示商品列表 显示本网站所提供的商品资料条目。 (4) 显示商品具体信息 通过点击某一商品条目可以查看该商品的具体资料。 5.查看购物篮 购物者可以通过本功能查看已选取的商品资料。 6.查看订单 用户确认购买后,可以通过该功能查看购物订单
30、信息。 购物流程如图4-2所示: 主 页 进入主页 确认选购选购 浏览商品 选购商品 生成订单 已登陆 是 已注册 注册 登录 购物完毕 否 否 否 是 是 否 是 是 图4-2购物流程图 4.1.3后台模块设计 (1) 商品管理 添加、删除和修改网站商品信息。 (2) 订单管理 对购物者在前台购物时产生的订单进行管理,涉及删除、查询等功能。 (3)会员管理 对注册会员信息进行相关操作。 (4)员工管理 对后台管理用户及其权限进行添加、修改和删除等
31、操作。 (5)系统管理 对系统日记进行查询操作。 其用例图如下: 图4-3 图4-4 图4-5 图4-6 图4-7 4.2数据库具体设计 通过PowerDesigner数据库建模工具对数据库进行很好的设立: 具体设立环节如下表所示: 表4-1 管理员表 字段名 数据类型 长度 是否主键 描述 vAdminName VarChar 20 是 管理员名称 字段名 数据类型 长度 是否主键 描述 vAdminPwd
32、VarChar 50 管理员密码 vTrueName VarChar 20 管理员真名 cSex Char 2 管理员性别 cPhone Char 11 管理员电话 vAddress VarChar 50 管理员地址 cPower VarChar 10 管理员权限 表4-2 会员表 字段名 数据类型 长度 是否主键 描述 vUserName VarChar 20 是 会员名称 vUTrueName VarChar 20 会员真名 vUserPwd VarChar 20 密码
33、cUserSex Char 2 性别 cUserPhone Char 11 电话 cEmail VarChar 20 电子邮件 vUserCity VarChar 50 城市 vUserAddress VarChar 50 地址 cZip VarChar 6 邮编 cQuestion VarChar 50 找密码问题 cAnswer VarChar 50 找密码答案 mUserCost Money 会员消费 cUGradeid Int 消费等级 表4-3 新闻公告表
34、 字段名 数据类型 长度 是否主键 描述 vNewsId Int 是 新闻ID vTitle VarChar 50 新闻主题 vNewContent VarChar 100 新闻内容 vNewsType VarChar 50 新闻类型 vSetName VarChar 20 发布人 dIssueDate DateTime 发布时间 表4-4书籍类别表 字段名 数据类型 长度 是否主键 描述 ProdTypeId Int 是 类别ID vProdTypeName VarChar
35、 50 类别名称 表4-5 书籍(库存)表 字段名 数据类型 长度 是否主键 描述 vStockId Int 是 表编号 pISBN VarChar 50 书ISBN码 字段名 数据类型 长度 是否主键 描述 mSellPrice Money 30 销价 mStockNum Money 30 库存量 mAlertNum Money 30 预警量 renqi Int 60 人气 image VarChar 50 图片 istuijian Char 1 是否推荐 st
36、ockdate DateTime 入库日期 jptuijian Char 1 是否精品推荐 表4-6 进货表 字段名 数据类型 长度 是否主键 描述 InPutId Int 是 进货ID pISBN VarChar 50 书ISBN码 vProdName datatime 20 书名 vAuthor VarChar 20 作者 vDiscription VarChar 50 描述 mCost Float 进价 mInNum Int 进货数量 ProdTypeId
37、Int 书类型ID vSupplyerId VarChar 5 供应商ID dInDate DateTime 进货日期 isstock Char 1 是否入库 表4-7 定单详情表 字段名 数据类型 长度 是否主键 描述 vOrderDetId Int 是 编号 vOrderId Varcher 50 订单编号 dOrderDate DateTime 订单日期 mOrderSum Int 订单商品总数 vConsignee VarChar 20 收货人 v
38、ConsigneeAdd VarChar 50 收货人地址 vZip VarChar 10 邮编 vConsigneePhone VarChar 11 电话 表4-8 定单表 字段名 数据类型 长度 是否主键 描述 vOrderId Char 15 订单编号 pISBN VarChar 50 书ISBN码 mOrderNum Int 商品数量 mUtilPrice Float 商品单价 vOrderName VarChar 20 订单人 vID Int 是 编号
39、表4-9 反馈信息表 字段名 数据类型 长度 是否主键 描述 IfebId VarChar 30 名称 vfeZhuti VarChar 100 出版发行 vfeContent VarChar 30 作者 vfeDate VarChar 30 数量 vType VarChar 30 登记日期 vEmail VarChar 30 登记人姓名 vAddress VarChar 80 登记人地址 vName VarChar 30 登记人邮编 vPhone VarChar 30 登记
40、人电话 表4-10收藏表 字段名 数据类型 长度 是否主键 描述 InSCid Int 是 编号 pISBN VarChar 50 书的isnb vScPeople VarChar 20 收藏人 表4-11销售表 字段名 数据类型 长度 是否主键 描述 vSellId Int 是 编号 pISBN VarChar 50 书的isnb mSellNum Int 销售量 dSellDate DateTime 销售日期 表4-12会员等级表 字段名 数据类型 长度 是
41、否主键 描述 cUGradeid Int 是 编号 vGradeName VarChar 20 等级名 vGradeTerm VarChar 15 等级条件 mRebate Float 比率 第五章 程序源代码 5.1 代码片段 以用户登陆为列 1. 创建 数据库的连接bean package bean.dbhelp; /* 数据访问组件 */ import java.io.*; import java.util.*; import java.sql.*; public class dbPool{
42、 private static dbPool instance = null; //取得连接 public static synchronized Connection getConnection() { if (instance == null){ instance = new dbPool(); } return instance._getConnection(); } public dbPool(){ super(); } pri
43、vate Connection _getConnection(){ try{ String sDBDriver = null; String sConnection = null; String sUser = null; String sPassword = null; Properties p = new Properties(); InputStream is = getClass().getResourceAs
44、Stream("/db.properties"); p.load(is); sDBDriver = p.getProperty("DBDriver",sDBDriver); sConnection = p.getProperty("Connection",sConnection); sUser = p.getProperty("User",""); sPassword = p.getProperty("Password",""); Pr
45、operties pr = new Properties(); pr.put("user",sUser); pr.put("password",sPassword); pr.put("CharacterEncoding", "GB2312"); pr.put("useUnicode", "TRUE"); Class.forName(sDBDriver).newInstance(); return DriverManager.getCon
46、nection(sConnection,pr); } catch(Exception se){ System.out.prIntln(se); return null; } } //释放资源 public static void dbClose(Connection conn,PreparedStatement ps,ResultSet rs) throws SQLException { rs.close();
47、 ps.close(); conn.close(); } } 2 数据库配置文献db.properties DBDriver=com.microsoft.jdbc.sqlserver.SQLServerDriver Connection=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=bookshoppe User=sa Password= 3. 创建 字符编码过滤器 package bean.filtrate; import java.io.IOException; i
48、mport javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; public class SetCharactorEncoding implements Filter{ public void destroy() {
49、 // TODO Auto-generated method stub } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { // TODO Auto-generated method stub request.setCharacterEncoding("GBK"); chain.doFilter(request, response); } pub
50、lic void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub
}
}
4. 配置web.xml
······






