




已阅读5页,还剩97页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于 mvc 架构的 webshop 管理系统的设计与实现 毕业设计 毕业设计论文 基于 mvc 架构的 webshop 管理系统的设计与实现 济南大学毕业设计 摘 要 当今社会正快速向信息化社会前进,信息自动化的作用也越来越大。随着网络 技术的迅速发展,网上购物成为一种时尚,电子商务的出现使我们从繁琐实际购物 中解放出来,提高了我们的工作效率。本系统就是一个具有交互功能的基于 mvc 架 构的 webshop 管理系统,本系统旨在在网上建立的一个商品交易市场,使得交易, 变得更加快速灵活,从而节省投资和运营成本,并代替传统的人工管理。该系统采 用瀑布式设计,包括商品模块,单价模块,名称模块等几个模块。基本实现了管理 员对商品单 价等的修改以及客户对其的查询。 关键词:关键词:网上购物;基于 mvc 架构的 webshop 管理系统;商品模块;单价模块;名称模块 济南大学毕业设计 abstract in todays society is fast forward to the information society, the role of information automation is becoming more and more big. with the rapid development of internet technology, online shopping became a kind of fashion, the appearance of electronic commerce makes us liberated from complicated actual shopping, improve our work efficiency. this system is an interactive webshop management system based on mvc architecture, this system is to set up an online commodity trading market, make the deal, become more quickly and flexibly, so as to save investment and operating costs, and instead of the traditional manual administration. the system adopts the design of the waterfall, including commodity module, unit module, the name of the module, etc. several modules. basically achieved the administrator of commodity price changes and customer queries. key words:online shopping; the webshop management system based on mvc architecture; commodity module; the unit price module; the name of the module. 基于 mvc 架构的 webshop 管理系统的设计与实现 毕业设计 目 录 摘要. .i abstract.ii 1 前言.1 2 相关技术. .2 2.1 sql server 数据库. .2 2.2 tomcat 服务器. .2 2.3 jsp. .2 2.4 eclipse. .3 2.5 struts1 . . . .3 2.6 mvc . . . .4 3 系统需求分析. . . . .4 3.1 可行性分析. 5 3.1.1 开发背景. 5 3.1.2 网上购物的发展. . . 5 3.1.3 网上购物的好处. . . 5 3.2 技术可行性分析 . . .6 3.3 经济可行性分析. . . .6 3.3.1 实体店的劣势. . . .6 3.3.2 网上商店的优势. .6 3.4 系统功能分析 . . . . . . .6 3.5 开发环境 . . . . .6 4 系统概要设计或详细设计. 8 4.1 系统的架构设计. .8 4.2 系统的 ui 设计 . . . . .9 4.3 各模块概要设计. . . . .11 4.3.1 商品模块. . . .11 4.3.2 单价模块. .12 济南大学毕业设计 4.3.3 名称模块. .12 4.4 数据库表设计. . .12 4.5 复杂算法的设计. . .16 济南大学毕业设计 4.5.1 商品模块. .17 4.5.2 单价模块. . .18 4.5.3 名称模块. . .19 4.6 开发环境的设定. .19 5 系统的实现 . . 24 5.1 商品模块的实现.24 5.2 单价模块的实现.25 5.3 名称模块的实现. .27 结论.29 参考文献.30 致谢.31 附录 a. . . . .32 附录 b. . . . .43 附录 c. . . . .85 济南大学毕业设计 - 1 - 1 前言 随着计算机网络技术的快速发展,网络/联网应用,在全球范围内的普及,当今社 会,信息自动化的作用也越来越大。电子商务的出现,使我们从各种实务中解放出来, 提高了我们工作的效率。在计算机网络支持下,弥补数据库和稳定的开发平台,原有 的软件和硬件发展成一套开源的体系结构,可扩展计划或易于维护、良好的机器界 面在线的商品交易系统,实现统一管理的商品,供应商,客户的计算机系统服务详细准 确。购物过程更容易接受,快捷、方便,很适合现代生活的步伐。该论文主要从商品, 单价及名称等方面研究网上购物系统。 济南大学毕业设计 - 2 - 2 相关软件及技术介绍 2.1sql server 数据库 sql server 是微软公司开发的一个关系数据库管理系统,以 transact_sql 作为 它的数据库查询和编程语言。tsql 是结构化查询语言 sql 的一种,支持 ansi sql92 标准。是一个高性能的、多用户的关系型数据库管理系统;它是专为客户 /服务器计算环境设计的,是当前最流行的数据库服务器系统之一;它提供的内置数 据复制功能、强大的管理工具和开放式的系统体系结构为基于事务的企业级信息管 理方案提供了一个卓越的平台。sql server 所使用的数据库查询语言称为 transact- sql,它是 sql server 的核心,transact-sql 强化了原有的 sql 关键字以进行数据 的存取,储存及处理等功能,transact-sql 扩充了流程控制指定,可以使你方便的 编写功能强大的存储过程,他们存放在服务器端,并预先编译过,执行速度非常块, 触发是一种特殊的存储过程,用来确保 sql server 数据库引用的完整性,你可以建 立插入,删除和更新触发以控制相关的表格中对数据列的插入,删除和更新,你还 可以使用规则(rule) ,缺省(default)以及限制(constraints) ,来协助将新的数值 套用到表格中去。 2.2tomcat 服务器 tomcat 服务器是一个免费的开放源代码的 web 应用服务器。tomcat 是 apache 软件基金会(apache software foundation)的 jakarta 项目中的一个核心项 目,由 apache、sun 和其他一些公司及个人共同开发而成。由于有了 sun 的参与 和支持,最新的 servlet 和 jsp 规范总是能在 tomcat 中得到体现,tomcat 5 支持 最新的 servlet 2.4 和 jsp 2.0 规范。因为 tomcat 技术先进、性能稳定,而且免费, 因而深受 java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的 web 应用服务器。在本系统设计过程中,利用 tomcat 在本地调试 jsp 编写出来的网 页。在本地调试的好处是无需连接互联网即可以打开系统页面,并能够快速刷新页 面,为设计带来极大的便利。 2.3 jsp jsp(全称 javaserver pages)是由 sun microsystems 公司倡导和许多公司参与共 同建立的一种使软件开发者可以响应客户端请求,而动态生成 html、xml 或其他 格式文档的 web 网页的技术标准。jsp 技术是以 java 语言作为脚本语言的,jsp 网 页为整个服务器端的 java 库单元提供了一个接口来服务于 http 的应用程序。 jsp 使 java 代码和特定的预定义动作可以嵌入到静态页面中。jsp 句法增加了被称为 济南大学毕业设计 - 3 - jsp 动作的 xml 标签,它们用来调用内建功能。另外,可以创建 jsp 标签库,然后 像使用标准 html 或 xml 标签一样使用它们。标签库提供了一种和平台无关的扩 展服务器性能的方法。 jsp 被 jsp 编译器编译成 java servlets。一个 jsp 编译器可 以把 jsp 编译成 java 代码写的 servlet 然后再由 java 编译器来编译成机器码,也 可以直接编译成二进制码。 2.4 eclipse eclipse 是一个开放源代码的、基于 java 的可扩展开发平台。就其本身而言, 它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,eclipse 附带了一个标准的插件集,包括 java 开发工具(java development kit,jdk) 。 2.5 struts1 图 2.1 struts1 的工作原理 (1)初始化:struts 框架的总控制器 actionservlet 是一个 servlet,它在 web.xml 中配置成自动启动的 servlet,在启动时总控制器会读取配置文件(struts-config.xml) 的配置信息,为 struts 中不同的模块初始化相应的对象。(面向对象思想) (2)发送请求:用户提交表单或通过 url 向 web 服务器提交请求时,请求的 数据通过 http 协议传递给 web 服务器。 (3)form 填充:struts 的总控制器 actionservlet 在用户提交请求时将数据放到对 应的 form 对象中的成员变量中。 (4)派发请求:控制器根据配置信息对象 actionconfig 将请求派发到具体的 济南大学毕业设计 - 4 - action,对应的 formbean 一并传给这个 action 中的 excute()方法。 (5)处理业务:action 一般只包含一个 excute()方法,它负责执行相应的业务 逻辑(调用其它的业务模块) 完毕后返回一个 actionforward 对象。服务器通过 actionforward 对象进行转发工 作。 (6)返回响应:action 将业务处理的不同结果返回一个目标响应对象给总控制 器。 (7)查找响应:总控制器根据 action 处理业务返回的目标响应对象,找到对应 的资源对象,一般情况下为 jsp 页面。 (8)响应用户:目标响应对象将结果传递给资源对象,将结果展现给用户。 2.6 mvc mvc 全名是 model view controller,是一种软件设计典范,是模型(model)视 图(view)控制器(controller)的缩写,用业务逻辑和数据显示分离的方法来组织 代码。这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用 户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑 mvc 被独特的 发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结 构中。 mvc 开始是存在于桌面程序中的,m 是指业务模型,v 是指用户界面,c 则是控制器, 使用 mvc 的目的是将 m 和 v 的实现代码分离,从而使同一个程序可以使用不同的表 现形式。比如一批统计数据可以分别用柱状图、饼图来表示。c 存在的目的则是确 保 m 和 v 的同步,一旦 m 改变,v 应该同步更新。 模型视图控制器(mvc)是 xerox parc 在二十世纪八十年代为编程语言 smalltalk80发明的一种软件设计模式,已被广泛使用。后来被推荐为 oracle 旗 下 sun 公司 java ee 平台的设计模式,并且受到越来越多的使用 coldfusion 和 php 的开发者的欢迎。模型视图控制器模式是一个有用的工具箱,它有很多好处, 但也有一些缺点。 济南大学毕业设计 - 5 - 3系统需求分析 3.1 可行性分析 3.1.1 开发背景 随着计算机网络技术的快速发展,网络/联网应用,在全球范围内的普及,当今社 会,信息自动化的作用也越来越大。电子商务的出现,使我们从各种实务中解放出来, 提高了我们工作的效率。在计算机网络支持下,弥补数据库和稳定的开发平台,原有 的软件和硬件发展成一套开源的体系结构,可扩展计划或易于维护、良好的机器界 面在线的商品交易系统,实现统一管理的商品,供应商,客户的计算机系统服务详细准 确。购物过程更容易接受,快捷、方便,很适合现代生活的步伐。网上购物成为潮流。 3.1.2 网上购物的发展 全球信息化的进程正改变着人们的生活方式,全球正逐步进入网络经济时代。 网上购物的出现给人们的生活方式带来了前所未有的变化,作为占世界人口五分之 一的中国也深刻的感受到了这股浪潮的冲击。网上购物在当今发达国家已显示出了 较强的发展势头,它是推动国家经济增长方的一支崭新的力量。例如,gfk(捷孚凯 集团)一份针对德国网上购物者的调查指出,在 2007 年上半年,德国的在线购物销 售额达到了 53 亿欧元。gfk 预计,2007 年全年德国在线购物销售额达到了 110 亿欧 元之多。相较之下,我国网上购物还是比较滞后的,但经过近几年的发展,越来越 多的人认识到“网上订货,送货上门”的方便,也有越来越多的人开始接受网上购 物。cnnic 在其发布的中国互联网络热点调查报告中显示:在我国有 17.9%的网 民在半年内有过网络购物经历,有过网络购物经历的被访者中有超过 90%的人今后 会继续进行网络购物;有 63.7%没有购物经历的网民表示今后会尝试网络购物。这 些数据都表明我国网上购物市场有巨大的潜力。 3.1.3 网上购物的好处 首先,对消费者来说可以在家“逛商店” ,订货不受时间、地点的限制;随时可 以获得大量的最新的商品信息,可以买到当地没有的商品。无需亲自到现场,省时 省力而且价格较一般商场的同类商品更便宜。其次,对于商家来说,由于网上销售 经营成本低、没有库存压力、经营规模不受场地限制等。将来必然会有更多的企业 选择网上销售,通过互联网对市场信息的及时反馈适时调整经营战略,以此提高企 业的经济效益。综上可以看出,网上购物突破了传统商务的障碍,无论对消费者还 是企业都有着巨大的吸影响力和吸引力,在新经济时代无疑是达到“多赢”效果的 理想模式。 济南大学毕业设计 - 6 - 3.2 技术可行性分析 随着我国今年来上网费的降低,网民总数及网上购物者显著增多。现在人们已 经离不开网络,网上商店成为时代的产物。网上开店好处多多,运用互联网平台建 立自己的网上商店系统。随着网络技术的发展,支撑电子商务应用的技术越来越多: web 技术、电子邮件、edi 技术、条形码技术、数据仓库与数据挖掘技术等等。 3.3 经济可行性分析 3.3.1 实体店的劣势 店面成本高,商品信息与顾客需求不符,需花钱雇服务人员,服务员对商品不 了解,易积货。 3.3.2 网上商店的优势 投资少,回收快,无所谓存货,不需门面店,启动资金少,只需一台电脑即可。 适合个人和小商店网上创业。解决了实体店的劣势,规模越大价格越低,比在实体 店购买方便,而且方便顾客不同店家的同类商品;销售地点不受限制,小店铺可做 大生意,网上商店不受店面限制,即使实际你只拥有一个小地摊,在网上你却可以 拥有一座百货大楼,上万种商品供你销售;销售不受时间限制,不需专人看守,可 时刻经营。网上商店无限延长了营业时间,可全天 24 小时不停运转,而且不受天气 影响,只要能上网就可正常营业;网上商店易宣传,人气旺,成千上万的网民都有 可能成为你的顾客。 3.4 系统功能分析 本系统分为前台和后天两部分共 3 个模块分别是商品模块,名称模块,单价模 块。在前台用户可通过注册浏览商品信息价格等。后台管理包括商品信息管理,价 格管理,名称管理等以及各种即时信息的发布管理。 前台: 浏览商品:客户可以浏览网上商城的查看想要商品信息。 查询商品:客户可以输入条件,查询自己感兴趣的商品。 后台: 商品管理,添加修改删除商品信息 3.5 开发环境 安装配置 jsp 运行环境,安装配置 eclipse,tomcat5.0,以及 jdk1.5。 济南大学毕业设计 - 7 - 4 系统概要设计或详细设计 4.1 系统的架构设计 本系统采用 mvc 的设计方式,mvc 开始是存在于桌面程序中的,m 是指业务模型, v 是指用户界面,c 是控制器,使用 mvc 的目的是将 m 和 v 的实现代码分离,从而使 同一个程序可以使用不同的表现形式。c 存在的目的则是确保 m 和 v 的同步,一旦 m 改变,v 应该同步更新。 图 4.1 mvc 流程 济南大学毕业设计 - 8 - 进原价 图 4.2 网上商店模块分布 4.2 系统的 ui 设计 图 4.3 登入页面 输入数值后点击确定,数值从数据库里找然后进入系统首页面 网上商店系统 商品模块单价模块 名称模块 商 品 名 商 品 略 称 价 格 变 更 可 否 适 用 始 日 适 用 终 了 日 消 费 税 区 分 买 进 原 价 率 卖 出 单 价 消 费 税 名 称 略 称 b u t t o n 济南大学毕业设计 - 9 - 图 4.4 系统首页 点击管理機能进入详细功能画面 图 4.5 详细功能画面 济南大学毕业设计 - 10 - 图 4.6 商品台账保守 图 4.7 单价台账保守 济南大学毕业设计 - 11 - 图 4.8 名称台帐保守 4.3 各模块概要设计 4.3.1 商品模块 (1)概要:可以进行商品表的追加修正删除等操作,一旦论理删除的数据再检索, 无法检索出来。 (2)机能:商品情报的登入,商品所属部门的设定,价格可否变更的设定,仮 jan 的登入 (3)制限条件:只有商品 code 能登入,jan 正规行的检查 4.3.2 单价模块 (1)概要:可以进行单价表的追加修正删除等操作,一旦论理删除的数据再检索, 无法检索出来。 (2)机能:商品单价和消费税率的基本情报的登入,商品单价适用期的设定,仮 jan 数据单价的登入,单价变更的场合相关联的数据表示,输入数值位数不满的情 况下在数值前面添零补足 济南大学毕业设计 - 12 - (3)制限条件:输入日期要包含在适用开始日和终了日之间,检查设定适用期的 合理性,仮 jan 表存在的检查,仮 jan 数据的单价登入后仮 jan 里的该数据删除, 复数单价表的期间的设定场合下表间的一天以上的空闲当做错误处理 4.3.3 名称模块 (1)概要:可以进行名称表的追加修正删除等操作,一旦论理删除的数据再检索, 无法检索出来。 (2)机能::名称基本情报的设定,名称 code 名称区分的设定,区分 idappellation_cls 条件下从区分表里得到画面的名称区分,输入的名称 code 不满 4 位的情况下前面补零处理 3.3 制限条件:名称 code、名称、略称、位置必须输入,进行位置 的重复检查 4.4 数据库表设计 表 4.1 table 一览表 id表名字段名 1区分 tm_kbn 2商品tm_hin 3単価tm_prc 4名称 tm_app 商品表逻辑设计: 表 4.2 商品表 项目 id项目属性 article_code 商品数字 jan_code jan 数字 article_name 商品名文字 article_kana 商品略称文字 branch_code1 大部門数字 branch_code2 中部門数字 branch_code3 小部門数字 济南大学毕业设计 - 13 - price_upd_flg 価格変更可否文字 图 4.9 商品表的物理设计 表 4.3 单价表逻辑设计 項目 id項目属性 article_code 商品数字 jan_code jan 数字 use_date_s_dt_find 適用開始日(検索)数字 use_date_s_dt 適用開始日数字 use_date_e_dt 適用終了日数字 co_tax_rate_cd 消費税率区分文字 before_tax_sale_price 売上単価税抜価格数字 sale_price 売上単価税込価格数字 sale_excise_tax 売上単価消費税額数字 cost_rate 仕入原価率数字 before_tax_stock_price 仕入原価税抜価格数字 stock_price 仕入原価税込価格数字 stock_excise_tax 仕入原価消費税額数字 売上消費税区分是 0:外税的场合、売上単価税抜価格必须输入 売上消費税区分是 1:内税的场合、売上単価税込価格必须输入 売上消費税区分是 2:非课税的场合、売上単価税抜価格必须输入 仕入消費税区分是 0:外税的场合、仕入単価税抜価格必须输入 仕入消費税区分是 1:内税的场合、仕入単価税込価格必须输入 济南大学毕业设计 - 14 - 仕入消費税区分是 2:非课税的场合、仕入単価税抜価格必须输入 仕入消費税区分未入力的场合、不必输入 图4.10 单价表的物理设计 表4.4 名称表的逻辑设计 項目 id項目属性 appellation_code 名称数字 appellation_cls 名称区分文字 appellation 名称文字 appellation_acronym 略称文字 button_position 位置数字 济南大学毕业设计 - 15 - 图4.11 名称表的物理设计 struts_config.xml 文件的配置 struts_config.xml 文件是一个 xml 文本文件,它用来储存应用程序的配置信息 (如 应用程序的身份验证方式) ,它可以出现在应用程序的每一个目录中。config 文件,包括默认的配置设置,所有的子目录都继承它的配置设置。如果你想修改子 目录的配置设置,你可以在该子目录下新建一个 config 文件。它可以提供除从父目 录继承的配置信息以外的配置信息,也可以重写或修改父目录中定义的设置。 在运 行时对 web.config 文件的修改不需要重启服务就可以生效。config 文件是可以扩展 的,你可以自定义新的配置参数并编写配置处理程序以对它们进行处理。 济南大学毕业设计 - 16 - 4.5 复杂算法的设计 4.5.1 商品模块 当画面检索按钮按下后如果 jan 区分是1的情况下,当输入 jan 时 会报jan 入力。 的错误信息。其关键代码如下: if (!basecheck.isempty(form.getbranchcode1() tmbmn_st st = new tmbmn_st(); st.setbranchcode1(form.getbranchcode1(); st.setbranchcode2(form.getbranchcode2(); st.setbranchcode3(form.getbranchcode3(); returnvalue retvalue = db.seletbypk(st); if (retvalue.iserror() form.seterrorcode(retvalue.geterrorcode(); form.seterrormessage(retvalue.geterrormessage(); form.setmode(search); return; 对于画面输入值的检查代码如下: logic.checkbody(form); /結果評判 if (!form.iserror() / 場合 form.setmethod(form.getmode(); / 元 if (add.equals(form.getmode() form.setsuccesscode(“2001000“); / id (登 録,) 济南大学毕业设计 - 17 - else if (update.equals(form.getmode() form.setsuccesscode(“2001010“); / id (更 新,) else if (delete.equals(form.getmode() form.setsuccesscode(“2001020“); / id (削 除,) form.setbodyreadonly(false); / 部分入力可 form.setbodycanview(true); / 部分表示 form.setheadreadonly(true); / 部分入力不可 /画面遷移 return mapping.findforward(tojsp); 4.5.2 单价模块 图4.12 日期范围图 如果输入的检索开始日不在适用日期范围内则报错误信息 if (outst.getusedateedt().compareto( basecheck.convertdatetoyyyymmdd(form.getusedatesdt() = 0) messlist.setmessage(“usedatesdt“, null, “1000470“, integer.min_value, “ 適用開始日“); form.seterrorcode(bussinesserror); form.seterrormesslist(messlist); return; 济南大学毕业设计 - 18 - 4.5.3 名称模块 更新时,当画面上的名称 code 不和检索的 code 一样时报指定位 置他端末設定可能性。 的错误信息 if (!(out.getappellationcode().equals(form.getappellationcode() string formatcode=basecheck.getinputcheckformat(“mt0100_buttonposition“).split(“,“ ); messlist.setmessage(“buttonposition“,form.getbuttonposition().tostring(), “1000920“,integer.min_value,null,formatcode23);/ 指定位置 他端末設定可能性。 4.6 开发环境的设定 tomcat 的设定: 图 4.13 tomcat 的设定 济南大学毕业设计 - 19 - 图 4.14 tomcat 的设定 图 4.15 tomcat 的设定 济南大学毕业设计 - 20 - 图 4.16 tomcat 的设定 图 4.17 tomcat 的设定 济南大学毕业设计 - 21 - 图 4.18 tomcat 的设定 webshop 的部署 图 4.19 webshop 的部署 济南大学毕业设计 - 22 - 选中 tomcat manager 图 4.20 webshop 的部署 图 4.21 webshop 的部署 济南大学毕业设计 - 23 - 济南大学毕业设计 - 24 - 5 系统的实现 5.1 商品模块的实现 该模块实现了对商品信息的增删改查业务,在追加、更新的场合下按下追加修 正按钮首先进行画面输入项目的检查,位数不满的填零补足;在进行部门 code 的检 查时,当输入的值是数据库中没有的值时报错误信息。当所有检查都通过时进行追 加操作。 对部门的检索 check 代码如下: public void bblk006(mt0050frm form) throws exception logmethodstartinfo(form, “bblk006“); try if (!basecheck.isempty(form.getbranchcode1() tmbmn_st st = new tmbmn_st(); st.setbranchcode1(form.getbranchcode1(); st.setbranchcode2(form.getbranchcode2(); st.setbranchcode3(form.getbranchcode3(); returnvalue retvalue = db.seletbypk(st); if (retvalue.iserror() form.seterrorcode(retvalue.geterrorcode(); form.seterrormessage(retvalue.geterrormessage(); form.setmode(search); return; else if (retvalue.gethitcount() 0) tmbmn_st out = (tmbmn_st) retvalue.getdatavalue(); form.setlbljanname(out.getbranchname(); return; else form.setlbljanname(“); 济南大学毕业设计 - 25 - else form.setlbljanname(“); finally logmethodendinfo(form, “bblk006“); 在削除时按下削除按钮将数据从数据库中削除。 图 5.1 数据流 er 图 5.2 单价模块的实现 该模块实现了对单价信息的增删改查操作。按下 menu 的単価台帳保守后,画面 显示检索条件画面。当检索出数据后才可进行追加更新删除的操作。在更新修正的 场合下,画面进行入力项目的检查,适用期间的检查,消费税区分检查,当都通过 时才进行更新操作。在追加的场合要进行适用开始日的检查。削除时按下削除按钮, 从数据库中吧数据删除。当检索时不输入时间界面如下: 济南大学毕业设计 - 26 - 图 5.2 空时间图 图 5.3 检索时输入错误时间的界面 部分代码如下: 济南大学毕业设计 - 27 - retvalue = dbb.selectbypkusedateedt(stb); if (retvalue.iserror() / 場合 form.seterrorcode(retvalue.geterrorcode(); form.seterrormessage(retvalue.geterrormessage(); form.setmode(search); return; 5.3 名称模块的实现 该模块实现对名称信息的增删改查操作。按下检索按钮后把相应数据显示出来。 在追加和更新的场合下都要进行位置的检查。 济南大学毕业设计 - 28 - 结论 通过本次网上商店系统的设计和论文的撰写对自身有了很大的提高,在两个多 月的毕业设计里,从课题的接触,到熟悉开发本系统的语言环境、开发工具,选定 设计方案,再到设计、开发来实现本系统的主要功能,可真是受益匪浅。系统中所 运用到的这些知识是我在平时课堂学习中所学不到的。感谢学院老师给了我一个动 手实践的机会,同时在指导老师的耐心指导之下,使自己能够把所学到的理论知识 与实践结合起来。在设计中,发现了自己的很多不足,在指导老师的帮助下,我能 够认清自己的不足,并很好的解决这些问题。 设计过程中出现的问题及解决办法: (1)系统中 date 控件的使用:系统中的 date 控件位于 jsp/js/popcalendar.js 中。这 个控件用于显示日期的选择控件,同时将用户选择的日期按指定格式写入输入框中, 用户也需要指定某个控件来作为日期选择控件的基准点。使用方法是在 javascript 代 码中调用 popupcalendar 函数,此函数参数列表为:ctl, ctl2, format, top, left,其中 ctl 是日期选择控件的基准点,ctl2 是输入框控件,format 指定日期输入格式(如 yyyy/mm/dd) ,top 和 left 指定了显示日期选择控件时的偏移。一般在系统中都是选 择在 click 事件中调用的:onclick=popupcalendar(this, dealdate, dateformat,-1,-1), 这里 dateformat 在系统的 common.jsp 中定义,值为 yyyy/mm/dd。此控件在使用前 需要在页面中包含 popcalendar.js: (2)bigdecimal 类型转换异常,在利用 struts 框架来作为表示层的架构时,用 formbean 来实现从页面到业务的数据交换,如果 formbean 中有涉及到金额的算法时 要用 bigdecimal 来代替 float,因为 float 的精度是有问题的。 如果简单的用 bigdecimal 代替 float 来声明变量,在编译阶段完全没有问题,但在运行阶段会出现 问题。系统会抛出一个 mons.beanutil.conversionexception 异常。 在 bigdecimalconversion.java 的 convert()的方法中,对于页面为“空值“的传入,即 value=“,其将跳过之前的判断直接运行:return (new bigdecimal (value.tostring(); 但是 bigdecimal 实例化时无法实例化 new bigdecimal()因此抛出了异常。 济南大学毕业设计 - 29 - 参 考 文 献 1 郑阿奇,刘启芬,顾韵华. sql server 实用教程【m】. 北京: 电子工业出版社,2005:55-85 2 李刚. 轻量级 javaee 企业应用实战(第 3 版).电子工业出版社,2009:384-457 3 何兴昌. java 技术发展与应用研究【j】. 硅谷,2009(2):128-129 4 张欣曼.精通 jsp-web 开发技术与典型应用【m】. 北京:人民邮电出版社,2007:516-564 5 newman w m, sbroull r f. principles of interactive computer graphicsm. new york: mcgraw hill, 1979.10:10-25 6 mastri a r. neuropathy of diabetic neurogenic bladderj. ann intern med, 1980, 92(2):316-318 济南大学毕业设计 - 30 - 致 谢 在整个设计过程中很多人给了我很大的帮助和支持,在此特别感谢王海燕老师对 我本次设计的悉心指导;感谢许多朋友和同学在数据库连接,服务器配置以及编码 给我的帮助和支持。 济南大学毕业设计 - 31 - 附录 a 商品模块逻辑代码: package jp.co.sirius1.webshop.logic; import java.util.arraylist; import jp.co.sirius1.webshop.action.mt0050frm; import jp.co.sirius1.webshop.bean.tmbmn_st; import jp.co.sirius1.webshop.bean.tmhin_st; import jp.co.sirius1.webshop.bean.tmkbn_st; import jp.co.sirius1.webshop.bean.tmstr_st; import mon.basecheck; import mon.baseconnection; import mon.baselogic; import mon.messagelist; import mon.returnvalue; import jp.co.sirius1.webshop.db.tmbmnd; import jp.co.sirius1.webshop.db.tmhind; import jp.co.sirius1.webshop.db.tmkbnd; import jp.co.sirius1.webshop.db.tmstrd; import org.apache.struts.util.labelvaluebean; /* * * * * copyright: sirius1 copyright (c) * author : ccst(gxk) (method:getcombo) * author : ccst(gxk) (method:checkheader) * author : ccst(gxk) (method:bblk) * author : ccst(gxk) (method:checkbody) * author : ccst(gxk) (method:add) * author : ccst(gxk) (method:delete) * date : 济南大学毕业设计 - 32 - * version : 1.0 */ public class mt0050lgc extends baselogic private static final string progid = “mt0050“; public mt0050lgc(baseconnection conn) super.init(conn); /* * c値取得 * * param form * link jp.co.sirius1.webshop.action.mt0050frm * exception exception * exception for information of other errors * */ public void getcombo(mt0050frm form) throws exception logmethodstartinfo(form, “getcombo“); arraylist labellist = new arraylist(); tmkbnd db = new tmkbnd(conn); tmkbn_st st = new tmkbn_st(); st.setclassid(“price_upd_flg“); returnvalue retvalue = db.selectbyclassid(st); if (retvalue.iserror() / 場合 form.seterrorcode(retvalue.geterrorcode(); form.seterrormessage(retvalue.get
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度安全设备租赁及人工费用综合服务合同
- 胞蔓不动杆菌患者的护理
- 晋升制度培训
- 线性模型诊断
- 2024汪清县第一职业技术高中工作人员招聘考试及答案
- 2024泉州市工商旅游职业中专学校工作人员招聘考试及答案
- 建筑工程施工规范培训
- 眼底出血中医护理方案
- 建筑装修工程分包合同模板
- 艺术标准课程解读课件
- 城镇燃气安全技术与管理
- 鼠疫知识讲座
- 清产核资工作方案
- 房 产 税教学课件
- 2025年广东省公务员省考《行测》联考真题(含答案)
- 保安证考试考前复习试题及答案
- 2025河北中考必考名著:《革命诗抄》考点及中考真题
- 互联网医院医疗服务平台合作协议
- 福建省福州市六校2023-2024学年高一下学期期末联考试题 数学 含解析
- 2024年湖北省襄阳市第四中学第五中学自主招生考试语文试卷
- 2025年江苏苏北四市高三一模高考地理试卷试题(含答案详解)
评论
0/150
提交评论