基于java语言的网络服装购物平台论文

基于java语言的网络服装购物平台论文

ID:6194310

大小:2.90 MB

页数:59页

时间:2018-01-06

上传者:U-1035
基于java语言的网络服装购物平台论文_第1页
基于java语言的网络服装购物平台论文_第2页
基于java语言的网络服装购物平台论文_第3页
基于java语言的网络服装购物平台论文_第4页
基于java语言的网络服装购物平台论文_第5页
资源描述:

《基于java语言的网络服装购物平台论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

基于Java语言的网络服装购物平台毕业论文57目录1.引言12.开发环境与工具12.1配置环境12.2ApacheTomcat简介23.JAVA语言特点23.1Java语言简介23.2Java与C/C++的差异63.3JAVA架构设计73.4AJAX无刷新模式开发技术113.5本站应用的内置对象114.网站内容简介与说明124.1可行性研究124.2网站需求内容134.3需求分析135.网站总体设计145.1设计思想145.2目标系统145.3网站功能模块设计145.4数据库关系图216.详细设计216.1用户注册和登录模块设计216.2首页的模块设计236.3服装打折的模块设计246.4购物车的模块设计276.5服装详情的模块设计286.6后台的模块设计296.7订单管理的模块设计316.8后台管理模块3257 7.测试及维护36总结37参考文献:38谢辞:39附录一:4057 长春工程学院毕业设计(论文)1.引言网上开店是一个新兴的词汇,具体来说就是经营者在互联网上注册一个虚拟的网上商店(以下简称网店),将待售商品的信息发布到网页上,对商品感兴趣的浏览者通过网上或网下的支付方式向经营者付款,经营者通过邮寄等方式,将商品发送到购买者。网上开店是一种在互联网时代的背景下诞生的新销售方式,区别于网下的传统商业模式,与大规模的网上商城及零星的个人网上拍卖相比,网上开店投入不大、经营方式灵活,可以为经营者提供不错的利润空间,成为许多人的创业途径。随着计算机科学的发展,数据库技术在Internet和Intranet中的应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。本文描述了如何使用JSP技术来组建网上服装店。本文首先阐述了基于JSP平台的网上服装店的开发背景以及其实践意义,其次说明了网上服装店的功能以及相比同类系统的创新之处。然后就网上服装店开发中所使用的一些的技术进行研究探讨。主要针对数据库的设计技术J2EE技术以及用SQLServerJSP数据提供程序访问SQLserver2000数据库技术四个方面进行了研究。最后还附上了网上服装店的安装说明、简单使用说明和一些通用性的经典代码。笔者化了大量的时间用于程序设计,这也是笔者工作的重点,所开发的系统具有实用价值,所编写的代码对J2EE程序员也有很好的参考性。在系统的开发过程中,笔者深刻体会到了J2EE平台的强大性、优越性以及存储过程在提高数据访问性能和增强数据访问安全性上所起到的重要作用。此外,对于关系代数在数据库科学里的应用,笔者在编程过程中也做了一定的研究。2.开发环境与工具2.1配置环境1.Internet信息服务管理器。2.MyEclipse6.5集成开发环境。3.带有ServicePack2.0WindowsXPProfessional。4.CPU:AMDsemprom(tm)processor2600+。5.内存:512RAMDDR400。57 长春工程学院毕业设计(论文)6.显示卡:NVIDIAGEFORCEMX440WITHAGP8X。7.浏览器:360安全浏览器。8.分辨率:最佳效果1024×768像素。9.操作系统:Windowsxp。2.2ApacheTomcat简介Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的tomcat标志改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。这里的诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。3.Java语言特点3.1Java语言简介Java平台由Java虚拟机(JavaVirtualMachine)和Java应用编程接口(ApplicationProgrammingInterface、简称API)构成。Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java57 长春工程学院毕业设计(论文)平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.5,最近版本为Java1.7。其主要有如下特点:●Java语言特点Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。  当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。那么Java到底有何神奇之处呢?Java语言其实最早诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折。但是,网络的出现改变了OAK的命运。在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEB中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力。SUN的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。当SUN公司1995年正式以Java这个名字推出的时候,几乎所有的WEB开发人员都心生感叹:噢,这正是我想要的!于是Java成了一颗耀眼的明星,丑小鸭一下子变成了白天鹅。 ●Java主要特性Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。●Java语言是一个面向对象的57 长春工程学院毕业设计(论文)Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。●Java语言是分布式的Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java.net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。●Java语言是健壮的Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。●Java语言是安全的Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。●Java语言是体系结构中立的Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。●Java语言是可移植的这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSIC实现的。57 长春工程学院毕业设计(论文)●Java语言是解释型的Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。●Java是高性能的与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。●Java语言是多线程的在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable)的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。●Java语言是动态的Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。  Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。57 长春工程学院毕业设计(论文)3.2Java与C/C++的差异3.2.1Java与C/C++熟悉C语言和C++语言的读者一定想搞清楚这个问题,实际上,Java确实是从C语言和C++语言继承了许多成份,甚至可以将Java看成是类C语言发展和衍生的产物.比如Java语言的变量声明,操作符形式,参数传递,流程控制等方面和C语言,C++语言完全相同.尽管如此,Java和C语言,C++语言又有许多差别,主要表现在如下几个方面:(1)Java中对内存的分配是动态的,它采用面向对象的机制,采用运算符new为每个对象分配内存空间,而且,实际内存还会随程序运行情况而改变.程序运行中,每个,Java系统自动对内存进行扫描,对长期不用的空间作为“垃圾”进行收集,使得系统资源得到更充分地利用.按照这种机制,程序员不必关注内存管理问题,这使Java程序的编写变得简单明了,并且避免了了由于内存管理方面的差错而导致系统出问题.而C语言通过malloc()和free()这两个库函数来分别实现分配内在和释放内存空间的,C++语言中则通过运算符new和delete来分配和释放内存.在C和C++这个机制中,程序员必须非常仔细地处理内存的使用问题.一方面,如果对己释放的内存再作释放或者对未曾分配的内存作释放,都会造成死机;而另一方面,如果对长期不用的或不再使用的内存不释放,则会浪费系统资源,甚至因此造成资源枯竭.(2)Java不在所有类之外定义全局变量,而是在某个类中定义一种公用静态的变量来完成全局变量的功能.(3)Java不用goto语句,而是用try-catch-finally异常处理语句来代替goto语句处理出错的功能.(4)Java不支持头文件,而C和C++语言中都用头文件来定义类的原型,全局变量,库函数等,这种采用头文件的结构使得系统的运行维护相当繁杂.(5)Java不支持宏定义,而是使用关键字final来定义常量,在C++中则采用宏定义来实现常量定义,这不利于程序的可读性.(6)Java对每种数据类型都分配固定长度.比如,在Java中,int类型总是32位的,而在C和C++中,对于不同的平台,同一个数据类型分配不同的字节数,同样是int类型,在PC机中为二字节即16位,而在VAX-11中,则为32位.这使得C语言造成不可移植性,而Java则具有跨平台性(平台无关性).(7)类型转换不同.在C和C++57 长春工程学院毕业设计(论文)中,可通过指针进行任意的类型转换,常常带来不安全性,而在Java中,运行时系统对对象的处理要进行类型相容性检查,以防止不安全的转换.(8)结构和联合的处理.在C和C++中,结构和联合的所有成员均为公有,这就带来了安全性问题,而在Java中根本就不包含结构和联合,所有的内容都封装在类里面.(9)Java不再使用指针.指针是C和C++中最灵活,也最容易产生错误的数据类型.由指针所进行的内存地址操作常会造成不可预知的错误,同时通过指针对某个内存地址进行显式类型转换后,可以访问一个C++中的私有成员,从而破坏安全性.而Java对指针进行完全地控制,程序员不能直接进行任何指针操作.3.3JAVA架构设计软件架构作为一个概念,体现在技术和业务两个方面。从技术角度来说:软件架构随着技术的革新不断地更新其内容,软件架构建立于当前技术和一些基本原则的基础之上。先说一些基本原则:分层原则:分层是为了降低软件深度复杂性而使用的关键思想,就像社会有了阶级一样,软件有了层次结构。 模块化原则:模块化是化解软件广度复杂的必然手段,模块化的目的就是让软件分工。接口实现分离原则随着软件模块化的不断深入改进,面向接口编程而不是面向实现编程可以让复杂度日趋增高的软件降低模块之间的耦合度,从而让各模块更轻松改进。从这个原则出发,软件也从微观进行了细致的规范化。还有两个比较小但很重要的原则:细节隐藏原则很显然把复杂问题简化,把难看的细节隐去,能让软件结构更清晰。其实这个原则使用很普遍,java/c++语言中的封装原则以及设计模式中的Facade(外观)模式就很能体现这个原则的精神。依赖倒置原则随着软件结构的进一步发展,层与层之间、模块与模块之间的依赖逐渐加深,而层、模块的动态可插拔要求不端增大。依赖倒置原则可看视为接口实现分离原则的深化,根据此原则的精神,软件进入了工具时代。这个原则有点类似于知名的好莱坞法则:57 长春工程学院毕业设计(论文) 以上这些原则奠定了我们的软件架构的价值指标。但软件架构毕竟是建立在当前技术之上的。而每一代技术都有架构模式。过去的不再说了,让我们现在就来看一下当前流行的技术,以及当前我们能采用的架构。因为面向对象是当前最流行开发技术,且设计模式的大量使用使面向对象的走向成熟,而数据库是当前最有效的存储结构、web界面是当前最流行的用户接口,所以当前最典型的三层次架构就架构在以上几项技术的基础之上,用数据库作存储层、用面向对象来实现业务层、用web作为用户接口层。我们从三层次架构谈起:因为面向对象技术和数据库技术不适配,所以在标准三层次架构的基础上,我们增加了数据持久层,来管理O-R双向映射,但目前一直没有最理想的实现技术。cmp和entitybean技术因为其实现复杂,功能前景有限,已接近被淘汰的边缘。JDO及hibernate作为o-r映射的后期之秀,尤其是hibernate,功能相当完备。在业务层,因为当前业务日趋负载,且变动频繁,所以我们必须有足够敏捷的技术来保证我们的适应变化的能力,在标准j2ee系统中sessionbean负责业务处理,且有不错的性能表现,但采用ejb系统对业务架构模式改变太大,且其复杂而昂贵,业务代码移植性差。而spring作为一个bean配置的轻量级架构,漂亮的IOC模式实现,对业务架构影响小,所以推荐作为中间层业务框架。在用户结构层,虽然servlet/jsp/jstl/javaBean能够实现MVC架构,但终究过于粗糙。struts对MVC架构的实现就比较完美,Taperstry也极好地实现MVC架构,且采用基于事件的方式,非常诱人,惜其不够成熟,我们仍旧推荐struts作为用户接口层基础架构。因为业务层是三层次架构中最有决定意义的,所以让我们回到业务层细致地分析一下,在复杂的业务我们常常需要以下基础服务的一种或几种:事务一致性服务acid(tool:jta/jts)、并发加锁服务concurrent&&lock、池化管理服务cache、访问控制服务(tool:jaas)、流程控制服务workflow、动态实现服务IOC,串行化消息服务(tool:jms)、负载平衡服务blance等。如果我们不采用重量级应用服务器(如weblogic,websphere,jboss等)及重量级组件(EJB),我们必须自己实现其中一些服务。虽然我们大多情况下,不需要所有这些服务,但实现起来却非易事。幸运的是我们有大量的开源实现代码,但采用开源代码却常常是件不轻松的事。57 长春工程学院毕业设计(论文)随着xml作为结构化信息传输和存储地位日渐重要,一些xml文档操作工具(DOM,Digester,SAX等)的使用愈发重要,而随着xmlschema的javabinding工具(jaxb,xmlbean等)工具的成熟,采用xmlschema来设计xml文档格式,然后采用javabinding来生成javabean会成为主要编程模式,而这又进一步使数据中心向xml转移,使在中小数据量上,愈发倾向于以xquery为查询语言的xml数据库。最近还有一个趋势,microsoft,ibm等纷纷大量开发中间软件如(microsoftoffice之infopath),可以直接从xmlschema生成录入页面等非常实用的功能。还有webservice的广泛应用,都将对软件的架构有非常重大的影响。至于面向服务架构(SOA)前景如何,三层次架构什么时候走入历史,现在还很难定论。aop的发展也会对软件架构有很深的影响,但在面向对象架构里,无论aspectJ还是jboss-aop抑是aspectWerks、nanning都有其自身的严重问题:维护性很差,所以说它将很难走远。也许作为一个很好的思想,它将在webservice里大展身手。rdf,owl作为w3c语义模型的标志性的语言,也很难想象能在当前业务架构发挥太大影响。但如果真如它所声称那样,广泛地改变着信息的结构。那么对软件架构也会有深远影响。在这里我可以对那些想要学习这方面知识的人推荐一下,这个还是不错的,是国内最高端的一个专注于架构设计软件开发人员培养的专业机构,但是这个学校对学员的入学条件要求比较高。如果感兴趣,你们可以自己在网上查一下他们学校。有关架构设计的一些忠告:尽量建立完整的持久对象层,可获得高回报。尽量将各功能分层,分块,每一模块均依赖假定的其它模块的外观。不能依赖静态数据来实现IOC模式,应该依赖数据特征接口,静态数据仅是数据特征接口实现方式之一。从业务角度说:软件架构应是深刻体现业务内部规则的业务架构,但因为业务变化频纴,所以软件架构很难保持恒定不变,但业务的频繁变化不应是软件架构大规模频繁变化的原因,软件架构应是基于变化的架构。一种业务有其在一段时间内稳定存在的理由(暂且不谈),业务内部有许多用例,每一种用例都有固定的规则,每一规则都有一些可供判定的项,每一项57 长春工程学院毕业设计(论文)从某一维度来观察都是可测量的,我们的架构首先必须保证完美适应每一项每一种测量方式,很多失败的架构都是因为很多项的测量方式都发生变更这种微观变化中。每个用例都有规则,我们在作业务用例分析,常常假定一些规则是先验的,持久稳定的,然而后来的业务改变常常又证明这种看法是错误的,然而常常我们的架构已经为之付出了不可挽回的代价。大量事实证明:规则的变化常常用例变化的根本原因。所以我们的架构要尽可能适应规则的变化,尽可能建立规则模版。每个用例都关系着不同的角色。每一个用例的产生都必然是因为角色的变更(注意:不是替换,而是增强或减弱),所以注意角色的各种可能情况,对架构的设计有举足轻重的意义。在我们当前的三层架构里,角色完美地对应接口概念。在一个系统里很多用例都相互关联,考虑到每个用例均有可能有不同的特例,所以在架构设计中,尽量采用依赖倒置原则。如架构许可可采用消息通信模式(JMS)。这样可降低耦合度。现在我们谈一下业务稳定存在理由对业务的影响。存在即是合理,在这里当然是正确的。业务因人而存在,所以业务存在的理由即是不同角色的需要这项业务的理由以及喜欢不喜欢当前业务用例的理由,所有这样的角色都应该在系统里预留。在架构设计中有几个原则可以考虑:用例尽量细分 用例尽量抽象角色尽量独立项测量独立原则追求简单性这里未提供相关的例子,例子会在以后的更新时提供。 业务和模式之间的关系业务中的一些用例之间的关系常常和一些常规的模式很相似。但随着时间的演化,慢慢地和先前的模式有了分歧。这是个正常的现象。但这对系统架构却要求非常高,要求系统架构能适应一些模式的更替。在这里我们尽可能早地注意到用例之间的相互角色变化,为架构更新做好准备.57 长春工程学院毕业设计(论文)3.4AJAX无刷新模式开发技术Ajax概念:全称为“AsynchronousJavaScriptandXML”(异步JavaScript和XML),是使用客户端脚本和Web服务器交换数据的Web应用开发方法。通过AJAX,Web页面不用打断交互流程就可以进行重新加载,从而实现动态更新。它是指一种创建交互式网页应用的网页开发技术。它有机地包含了以下几种技术:●基于web标准(standards-basedpresentation)XHTML+CSS的表示。●使用DOM(DocumentObjectModel)进行动态显示及交互。●使用XML和XSLT进行数据交换及相关操作。●使用XMLHttpRequest进行异步数据查询、检索。●使用JavaScript将所有的东西绑定在一起。●类似于DHTML或LAMP,AJAX不是指一种单一的技术,而是有机地利用了一系列相关的技术。事实上,一些基于AJAX的“派生/合成”式(derivative/composite)的技术正在出现,如“AFLAX”。作用:ScriptManager控件负责管理Page页面中所有的AJAX服务器控件,是AJAX的核心,有了ScriptManager控件才能让Page局部更新作用,所需要的JavaScript才会自动管理。因此开发AJAX网站时,每个页面中必须添加ScriptManager控件作为管理。3.5本站应用的内置对象当用户打开浏览器,并从网站请求Web页时,Web服务器就接收一个HTTP请求,此请求包含用户,用户计算机,页面以及浏览器的相关信息,这些信息将被完整地封装,并在request对象中利用它们,以上这些信息都通过request对象一次性提供。3.5.2response对象在Jsp中,HTTP响应信息一般都封装在HTTPResponse类中。Response对象用于将数据从服务器发回浏览器。它允许将数据作为请求的结果发送到服务器中,并提供有关响应的信息。它可以用来在页面中输入数据,还可以传递各个页面的参数。它与HTTP协议的响应消息相对应。3.5.3session对象session对象用来存储跨网页程序的变量或者对象。Session对象57 长春工程学院毕业设计(论文)只针对单一网页使用者,也就是说,各个连接的对象都有各自的Session对象,不同的用户无法相互存取。Session对象终止于联机机器离线时,也就是当网页使用者关掉浏览器或者超过设定Session变量的有效时间时,Session对象就会消失。数据库连接方法:publicclassDBconn{static{try{Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");}catch(Exceptione){e.printStackTrace();}}publicstaticConnectiongetConn(){try{Connectionconn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databasename=Clothes","sa","sa");returnconn;}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();returnnull;}}4.网站内容简介与说明4.1可行性研究近年来,基于Internet的电子商务正方兴未艾,成为Internet商业化发展的重要内容。网络技术的飞速发展,极大地影响了商业交易中传统的交易方式和流通方式。电子商务将传统的交易行为转到网络上来进行,整合了商业运作中的资金流、物流以及信息流,扩大了交易面和交易速度。57 长春工程学院毕业设计(论文)本站的商品属于服装类的,服装类商品比较杂,有很多方面的内容类别中包括:女装:针织衫、T恤、连衣裙、毛衣、外套、裤子、羽绒服等。男装:夹克、风衣、牛仔、衬衫、男裤、西服、运动服、毛衣、内衣、童装等。商品中又包括品牌、质地、面料、洗涤方式、尺寸大小,又包括服装的各种颜色。邮递方式距离远近的不同,价格也不同。网站需要加入安全性方面的组织,保障其信誉。4.2网站需求内容产品介绍子页包括:图片展示框,商品介绍及购买,购物车,会员登录,订购帮助信息,相关商品,购买该产品的顾客还购买过,浏览历史,详细介绍,用户评论等功能。网站不需注册放也能购买商品、购买时会有一个省、市的库方便用户选择。首页有循环展示图片,可通过后台随时更换,滚动的新闻消息可提醒用户本站的最新消息和动态。网站有最新产品、商品排行、打折商品和一般商品等几个内容。还有可以根据服装的名称、类别等选项来挑选商品。注册用户后可到本站的用户中心来查看和修改个人的信息。后台可管理:商品管理、订单管理、会员管理、系统设置。网站不采取VIP制,所有新老客户享受同样价格,注册客户根据积分在本站享受减价购买。可对每一产品上传时单独设置积分。4.3需求分析对网上服装店设计的需求的环境:CPU要求InterPentiumIII-class600MHZ以上,内存要求256MB以上。磁盘:全部安装(全部帮助文档,即MSDN),安排盘上至少需要3.8GB磁盘空间,系统盘至少1GB磁盘空间。4.2.1用户功能需求1)网站浏览:为浏览者对本网站的熟悉和信赖,初步了解本网站的目的。2)用户注册:用户只有注册成为本网站会员,才能享受一定的政策。3)用户购物:用户分为非注册购买和注册购买两种方式。57 长春工程学院毕业设计(论文)4)网上银行:付款方式分为网上付款和现实付款两种。5)网上留言:注册的用户可在本站上留言,非注册用户不可实现这个功能。4.2.2管理员需求1)管理员能管理网站所有的信息,图片的上传,删除,修改等。2)对管理员密码的修改,对注册的用户查找和删除一些用户等。3)对服装的添加和修改。4)对发货的管理和送货的管理。5)对订单的管理操作。5.网站总体设计5.1设计思想经过四十来年的发展,数据库技术己经趋于成熟。加上www提供了共享数据的方法,这样用户可以在Web浏览器上方便地检索数据库的内容。而且具有检索迅速,查找方便,可靠性高,存储量大,保密性好,寿命长,成本低等优点。随着网络的建设,基于互联网的应用系统的开发正在蓬勃发展并发挥着较大的作用。5.2目标系统1用户登录及注册要求1)提交用户的数据2)验证用户数据3)在本系统中有三类用户:管理员,普通会员,不注册会员。三种不同的用户所具有的操作权限以及操作内容均不一样。5.3网站功能模块设计1)对本网站设计系统功能结构如图5.1所示57 长春工程学院毕业设计(论文)图5.1服装E-R图3)后台文件架构,带管理的字段里均包括查找、删除、更新、添加等功能如图5.2所示后台管理员登录口后台首页订单管理服装管理新闻管理账户管理送货管理网站退出图5.2后台管理结构化分析实质上是创建模型的活动。数据模型包含三种相互关联的信息:数据对象、描述数据对象的属性及数据对象彼此间相互连接的关系。57 长春工程学院毕业设计(论文)数据对象是对软件必须理解的复合信息的表示。所谓复合信息是指具有一系列不同性质或属性的事物。在这个查询系统中,数据对象就是标本和用户。属性是指数据的对象的性质,在确定属性时,应该根据对所要解决的问题来理解。关系是指数据的对象之间相互连接的方式。根据数据模型的相互关系,我们得到了用户的实体关系如图5.3所示用户用户名真名密码性别用户地址用户积分图5.3用户对象服装的实体关系图如下所示:图5.4服装对象57 长春工程学院毕业设计(论文)随着网络技术的飞速发展,网络信息的不断增加。数据库在一个网站中扮演着越来越重要的地位。在本网站中,数据库在网站设计中也有着十分重要的地位。下面来介绍一些关于数据库的表的内容。实现用户的注册与登录功能,可以修改用户密码,并且可以积累用户积分查询积分可用于减免商品的价格表5.1用户表对服装的各个对象进行描述,通过购买率、上架时间等对商品进行排序,通过对性别、颜色、价格等来进行各种搜索和高级搜索,并涉及到外键衣服类别。表5.2服装表服装表的一个外键,是对服装类别的进一步描述,需要联合服装表对商品进行类别的搜索。57 长春工程学院毕业设计(论文)表5.3类别表需要跟用户表和服装表进行关联,主要实现用户进入购物车页面后可以看到自己买了多少商品,需要多少钱,还可以修改数量等。表5.4购物车表用户登录,购买商品后对该产品的评价,涉及到用户表的外键。表5.5用户留言表管理员在首页的一些位置可以发布消息,开展某种活动,来吸引或提醒用户的作用。表5.6消息表需要用户表和服装表的两个外键,可方便用户和管理员分别来查看商品的状态,这里的购买数量确定以后,需要减去服装表相应的数量。57 长春工程学院毕业设计(论文)表5.7订单表后台登陆用的表5.8管理员表是当用户购买完商品后,或选择完付款方式后,需要填写的内容,当用户确定以后就是默认的发货时间表5.9发货表对服装表的额外的补充表5.10服装详情是57 长春工程学院毕业设计(论文)可以有多个图片,有主图,有附图,主图只有一个附图可以没有也可以有多个不同的附图。表5.11服装表用户可以发表一些评论。表5.12用户评论表57 长春工程学院毕业设计(论文)5.4数据库关系图图5.5关系图6.详细设计6.1用户注册和登录模块设计用户可以注册和登录,且用户登录后能够看到自己的登录状态。6.1.1用户注册界面实现用户名不可重复的验证,其他的字段不可为空,用户名必为11位手机号码。密码和确认密码相一致的问题。如图6.1所示:57 长春工程学院毕业设计(论文)图6.1用户注册界面6.1.2用户登录界面下图为本站的首页(不完全版)有新闻通告,用户注册登录,销售排行,图片上方有如何注册网上银行的帮助步骤,在本站购物的流程和帮助。在导航栏中包括网站首页、购物车、用户注册、商品搜索、打折商品和用户中心选项,来帮助用户更好的操作。新闻页面是后台管理员根据本站的更新和本站的一些促销来提醒和吸引客户的注意,以便了解本站的最新动态。如图6.2所示:57 长春工程学院毕业设计(论文)图6.2用户登录界面6.2首页的模块设计主要利用session来保存用户的登录信息状态。首页包括用户登录、注册、销售排行榜,新品展示、推荐产品、友情链接、打折服装、新闻通知等内容。首页的界面,如图6.3所示:57 长春工程学院毕业设计(论文)图6.3首页界面6.3服装打折的模块设计如图6.4所示:图6.4服装打折的主要界面6.3.1服装查询界面如图6.5所示:57 长春工程学院毕业设计(论文)6.5服装查询的浏览界面6.3.2服装详情界面如图6.6所示:6.6服装详情界面服装详情界面的一些操作,会员购买单击后,如图6.7所示:57 长春工程学院毕业设计(论文)6.7如果没有登录将会给出提示,如果没有选择商品也将会给出一个提示服装详情界面的一些操作,非会员购买单击后,如图6.8所示:6.8如果没有选择商品也将会给出一个提示,选择完后挑转页面57 长春工程学院毕业设计(论文)6.3.3服装图片详情界面鼠标单击放大和缩小按钮来查看大图,也可以用鼠标滑轮来实现,单击关闭关掉本页面,用鼠标左键点住图片不放,可对图片进行拖拽。如图6.9所示:6.9当单击图片时,跳转到图片详情页面,图片位置可以移动,大小可以改变。6.4购物车的模块设计本图为未购买商品页面,单击“马上登录去选宝贝”跳转到首页选购商品。如图6.8所示:57 长春工程学院毕业设计(论文)6.10图购物车页面6.5服装详情的模块设计服装详情界面,关于如图6.11所示:图6.11服装详情的主要界面服装详情界面,关于,如图6.12所示:图6.12服装详情的主要界面服装详情界面,关于,如图6.13所示:57 长春工程学院毕业设计(论文)图6.13服装详情的主要界面服装详情界面关于,如图6.14所示:图6.14服装详情的主要界面6.6后台的模块设计用户登录后台后,将显示后台的基本信息,后台的基本信息是一个可根据系统时间变动的日历,它包括阴历、阳历还有一些中国的节日信息(只实现中国的外国的信息未实现),鼠标单击上一年和下一年时显示相应的信息。其界面如图6.15所示:57 长春工程学院毕业设计(论文)图6.15后台管理首页界面本页面可以根据商品编号来搜索产品信息,本查询属于模糊查询。查看商品的详细信息并进行修改和删除,修改和删除是级联更新和删除。其界面如图6.16所示图6.16服装详情界面对注册用户的信息进行显示、搜索(属于模糊查询)和删除的操作。57 长春工程学院毕业设计(论文)其界面如图6.17所示图6.16服装详情界面6.7订单管理的模块设计发货表界面,即当用户购买完商品后进入发货地址页面填写完地址后就会添加到后台数据库中,并在管理页面中显示出来。管理员可查看其信息,也可以执行删除操作。如图6.17所示:图6.17发货管理界面服装订单管理界面,可查看注册用户所购买的服装、价格、用户名、数量、购买时间。也可以查看商品是否发货,如果未发货就可以单击来发货,发货后商品点击率会增加、用户积分会增加、库存数量减一等一些数据的改变。如图6.16所示:57 长春工程学院毕业设计(论文)图6.18服装订单管理界面6.8后台管理模块管理员密码修改界面如图6.18所示:图6.19管理员密码修改界面新闻管理界面,包括新闻的添加(内容不能为空)、新闻的修改(可直接在本页上修改)、对一些过时的新闻进行删除如图6.19所示:57 长春工程学院毕业设计(论文)图6.19新闻管理界面图片修改界面,可以对主图进行修改但不可删除。可添加多个副图,对副图进行增、删、改操作。如图6.20所示:图6.20添加副图界面主图和副图的显示页面,单击浏览来查找图片,查找完后单击确定后,在单击修改按钮后就可以实现图片的上传和页面的修改57 长春工程学院毕业设计(论文)图6.20主图57 长春工程学院毕业设计(论文)图6.21添加和删除相应的副图界面服装详细添加界面,可对已存在的服装进行不同颜色、不同尺寸的来进行添加。如图6.21所示:图6.22插入服装详情界面服装表面修改界面,可对你想修改的服装进行如图所示的修改。如图6.22所示:图6.23修改服装界面57 长春工程学院毕业设计(论文)7.测试及维护本网站实现了用户的登录、注册、商品选购、商品搜索、用户中心、帮助中心等基本应用功能,严格按照软件开发工程的开发方法逐步进行。在摘要中介绍了网站的整体功能,在详细分析中,采用了AJAX技术,框架等关键技术来实现前台和后台的逻辑结构。但对本系统无论是在开发过程中,还是建成后的日常维护过程中,都还需要进行严格的检测。进行系统功能的测试:对本系统所有功能是否能正确执行,有无死机或其他异常情况发生,交互手段是否能满足用户的基本需求。具体有下面几点:页面链接检查:每一个链接是否都有对应的页面。1、相关性检查:删除/增加一项会不会对其他字段产生影响,如果产生影响,这些影响,否都正确检查按钮的功能是否正确如新建、编辑、删除、关闭、返回、保存、导入等功能是否正确。2、字符类型检查:在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型。3、搜索检查:有搜索功能的地方输入系统存在和不存在的内容,看搜索结果是否正确.如果可以输入多个搜索条件,可以同时添加合理和不合理的条件,看系统处理是否正确。这些就需要网站维护者长期跟踪调查,也可能要根据需要加以改进,以便使网站能够长期的顺利运行,另外还要注重网站界面的简洁化,功能模块的灵活变通性,这样可以为网站设计制作维护人员提供一个更自主更新维护的动态空间和发挥余地,去完善办好自己的网站,达到一次投资,长期受益,降低成本的根本目的。这次毕业论文设计的过程中,完成了前台和后台的大部分页面,但是做的越多越觉得自己需要完善的功能还有很多。但是由于时间和技术问题,还有很多待改进之处,未能发挥到尽善尽美。希望通过以后的学习,能够进一步的提高。57 长春工程学院毕业设计(论文)总结本系统采用当前流行的面向对象的开发工具java来完成整个系统的设计,在数据库的设计上利用了SQL的便利性和实用性。本系统具有相当的实用功能。在查询方面,系统实现了多条件任意字段的模糊查询,同时在分类查询上实现了动态生成,系统可以自动识别用户不同的输入。系统在设计过程中不可避免地遇到了各种各样的问题,由于整个系统完全都是由个人设计的,有关java许多细节问题都要靠自己去摸索,加之本人水平有限,并没有完全地理解java的强大功能,而且还存在着许多不足之处。这几个月的实践过程当中,通过自身的不断努力,初步完成了对本网站的一些功能,在这其中,自己不仅在编程能力方面得到了很大的提高,更使自己认识到自己在编程方面及其他方面还存在很大的不足,希望在以后的学习和实践中能够不断的提高自己。最后我想要说的是:这几个月的毕业设计过程,让我获得的不仅仅是知识能力方面的提高,更重要的是自己学会了端正态度和心态——一种对待学业的认真,严谨态度和遇到困难,迎难而上的心态。尤其吉老师对待事情一丝不苟,负责的态度,更是让学生受益匪浅。在此,向您表示深深的感谢——感谢您这几个月对学生的不舍不弃;感谢您对这几个月对学生的悉心指导;感谢您这几个月教会了学生做事的态度和为人之道。57 长春工程学院毕业设计(论文)参考文献:[1]孙卫琴,李洪成.《Tomcat与JavaWeb开发技术详解》.电子工业出版社,2003年6月:1-205[2]BruceEckel.《Java编程思想》.机械工业出版社,2003年10月:1-378[3]FLANAGAN.《Java技术手册》.中国电力出版社,2002年6月:1-465[4]孙一林,彭波.《Java数据库编程实例》.清华大学出版社,2002年8月:30-210[5]LeeAnnePhillips.《巧学活用HTML4》.电子工业出版社,2004年8月:1-319[6]飞思科技产品研发中心.《JSP应用开发详解》.电子工业出版社,2003年9月:32-300[7]耿祥义,张跃平.《JSP实用教程》.清华大学出版社,2003年5月1日:1-354[8]孙涌.《现代软件工程》.北京希望电子出版社,2003年8月:1-246[9]萨师煊,王珊.《数据库系统概论》.高等教育出版社,2002年2月:3-460[10]Brown等.《JSP编程指南(第二版)》.电子工业出版社,2003年3月:1-268[11]清宏计算机工作室.《JSP编程技巧》.机械工业出版社,2004年5月:1-410[12]朱红,司光亚.《JSPWeb编程指南》.电子工业出版社,2001年9月:34-307[13]赛奎春.《JSP工程应用与项目实践》.机械工业出版社,2002年8月:23-294[14]王珊主编.数据库系统概论出版社.高等教育出版社,2006年5月.[15]闪四清.SQLServer2005基础教程.清华大学出版社,2007年4月.[16]杨嵘.计算机专业英语.机械工业出版社,2007年7月.57 长春工程学院毕业设计(论文)附录一:用户所需的主要代码:publicclassUser_Avalidate{PreparedStatementpstmt=null;booleanflag=false;publicStringFindByID(Useruser){try{Connectionconn=DBconn.getConn();Stringsql1="selectUserscorefromUserswhereUsername=?andPwd=?";pstmt=conn.prepareStatement(sql1);pstmt.setString(1,user.getUsername());pstmt.setString(2,user.getPwd());ResultSetrs=pstmt.executeQuery();if(rs.next()){Stringscore=rs.getString("Userscore");returnscore;}conn.close();}catch(Exceptione){e.printStackTrace();}return"aaa";}publicStringFindByID1(Useruser){Stringscore=null;try{57 长春工程学院毕业设计(论文)Connectionconn=DBconn.getConn();Stringsql1="selectUserscorefromUserswhereUsername=?andPwd=?";pstmt=conn.prepareStatement(sql1);pstmt.setString(1,user.getUsername());pstmt.setString(2,user.getPwd());ResultSetrs=pstmt.executeQuery();if(rs.next()){score=rs.getString("Userscore");returnscore;}conn.close();}catch(Exceptione){e.printStackTrace();}returnscore;}publicStringFindByID2(Stringuser){Stringscore=null;try{Connectionconn=DBconn.getConn();Stringsql1="selectUserscorefromUserswhereUsername=?";pstmt=conn.prepareStatement(sql1);pstmt.setString(1,user);ResultSetrs=pstmt.executeQuery();if(rs.next()){score=rs.getString("Userscore");returnscore;57 长春工程学院毕业设计(论文)}conn.close();}catch(Exceptione){e.printStackTrace();}returnscore;}publicListShow(){Listli=newArrayList();Connectionconn=DBconn.getConn();Stringsql="select*fromUsersorderbyUserscore";try{pstmt=conn.prepareStatement(sql);ResultSetrs=pstmt.executeQuery();while(rs.next()){Useru=newUser();u.setUsername(rs.getString("Username"));u.setPwd(rs.getString("Pwd"));u.setRealname(rs.getString("Realname"));u.setSex(rs.getString("Sex"));u.setAddress(rs.getString("Address"));u.setUserscore(rs.getString("Userscore"));li.add(u);}conn.close();}catch(SQLExceptione){57 长春工程学院毕业设计(论文)//TODOAuto-generatedcatchblocke.printStackTrace();}returnli;}publicListShow(Stringid){Listli=newArrayList();Connectionconn=DBconn.getConn();Stringsql="select*fromUserswhereUsernamelike'%"+id+"%'";try{pstmt=conn.prepareStatement(sql);ResultSetrs=pstmt.executeQuery();while(rs.next()){Useru=newUser();u.setUsername(rs.getString("Username"));u.setPwd(rs.getString("Pwd"));u.setRealname(rs.getString("Realname"));u.setSex(rs.getString("Sex"));u.setAddress(rs.getString("Address"));u.setUserscore(rs.getString("Userscore"));li.add(u);}conn.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}57 长春工程学院毕业设计(论文)returnli;}publicbooleanAvalidate_user(Stringname){try{Connectionconn=DBconn.getConn();Stringsql="selectUsernamefromUserswhereUsername=?";pstmt=conn.prepareStatement(sql);pstmt.setString(1,name);ResultSetrs=pstmt.executeQuery();if(rs.next()){flag=true;}conn.close();}catch(Exceptione){e.printStackTrace();}returnflag;}publicbooleanInsert(Useruser){try{Connectionconn=DBconn.getConn();Stringsql="insertUsers(Username,Pwd,Realname,Sex,Address)values(?,?,?,?,?)";57 长春工程学院毕业设计(论文)pstmt=conn.prepareStatement(sql);pstmt.setString(1,user.getUsername());pstmt.setString(2,user.getPwd());pstmt.setString(3,user.getRealname());pstmt.setString(4,user.getSex());pstmt.setString(5,user.getAddress());pstmt.executeUpdate();conn.close();if(sql!=null){flag=true;}}catch(Exceptione){e.printStackTrace();}returnflag;}publicbooleanUpdate(Stringpwd,Stringname){Stringsql="updateUserssetPwd=?whereUsername=?";Connectionconn=DBconn.getConn();try{pstmt=conn.prepareStatement(sql);pstmt.setString(1,pwd);pstmt.setString(2,name);pstmt.executeUpdate();flag=true;}catch(Exceptione){e.printStackTrace();57 长春工程学院毕业设计(论文)}returnflag;}publicbooleanDelete(StringId){Stringsql1="deletefromUserswhereUsername=?";try{Connectionconn=DBconn.getConn();pstmt=conn.prepareStatement(sql1);pstmt.setString(1,Id);pstmt.executeUpdate();pstmt.close();conn.close();flag=true;}catch(Exceptione){e.printStackTrace();}returnflag;}}服装页面的一些方法代码:publicclassCloth_Avalidate{PreparedStatementpstmt=null;ResultSetrs=null;booleanflag=false;publicListShow1(Stringid){57 长春工程学院毕业设计(论文)Listli=newArrayList();Connectionconn=DBconn.getConn();Stringsql="select*fromClothesjoinClothTypeonClothes.Typeid=ClothType.TypeidwhereClothidlike'%"+id+"%'";try{pstmt=conn.prepareStatement(sql);rs=pstmt.executeQuery();while(rs.next()){Clothc=newCloth();c.setClothid(rs.getString("Clothid"));c.setClothname(rs.getString("Clothname"));c.setClothpicture(rs.getString("ClothPicture"));c.setPrice(rs.getFloat("Price"));c.setPurchaseprice(rs.getFloat("Purchaseprice"));c.setTypename(rs.getString("Typename"));c.setTypeid(rs.getInt("Typeid"));c.setSex(rs.getString("Sex"));c.setScore(rs.getInt("Score"));c.setDiscount(rs.getFloat("Discount"));c.setBrand(rs.getString("Brand"));c.setCollar(rs.getString("Collar"));c.setSleeve(rs.getString("Sleeve"));c.setStyle(rs.getString("Style"));c.setMaterial(rs.getString("Material"));c.setPlate(rs.getString("Plate"));li.add(c);}57 长春工程学院毕业设计(论文)conn.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}returnli;}publicListShow2(Stringid){Listli=newArrayList();Connectionconn=DBconn.getConn();Stringsql="select*fromClothesjoinClothTypeonClothes.Typeid=ClothType.TypeidwhereClothid=?";try{pstmt=conn.prepareStatement(sql);pstmt.setString(1,id);rs=pstmt.executeQuery();while(rs.next()){Clothc=newCloth();c.setClothid(rs.getString("Clothid"));c.setClothname(rs.getString("Clothname"));c.setClothpicture(rs.getString("ClothPicture"));c.setPrice(rs.getFloat("Price"));c.setPurchaseprice(rs.getFloat("Purchaseprice"));c.setTypename(rs.getString("Typename"));c.setTypeid(rs.getInt("Typeid"));c.setSex(rs.getString("Sex"));57 长春工程学院毕业设计(论文)c.setScore(rs.getInt("Score"));c.setDiscount(rs.getFloat("Discount"));c.setBrand(rs.getString("Brand"));c.setCollar(rs.getString("Collar"));c.setSleeve(rs.getString("Sleeve"));c.setStyle(rs.getString("Style"));c.setMaterial(rs.getString("Material"));c.setPlate(rs.getString("Plate"));li.add(c);}conn.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}returnli;}publicListShow(){Listli=newArrayList();Connectionconn=DBconn.getConn();Stringsql="select*fromClothesjoinClothTypeonClothes.Typeid=ClothType.Typeid";try{pstmt=conn.prepareStatement(sql);rs=pstmt.executeQuery();while(rs.next()){57 长春工程学院毕业设计(论文)Clothc=newCloth();c.setClothid(rs.getString("Clothid"));c.setClothname(rs.getString("Clothname"));c.setClothpicture(rs.getString("ClothPicture"));c.setPrice(rs.getFloat("Price"));c.setPurchaseprice(rs.getFloat("Purchaseprice"));c.setTypename(rs.getString("Typename"));c.setSex(rs.getString("Sex"));c.setScore(rs.getInt("Score"));c.setDiscount(rs.getFloat("Discount"));c.setBrand(rs.getString("brand"));li.add(c);}conn.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}returnli;}publicListHoter(){Listli=newArrayList();Connectionconn=DBconn.getConn();Stringsql="selecttop10Clothname,ClothidfromClothesorderbyClickcountdesc";try{57 长春工程学院毕业设计(论文)pstmt=conn.prepareStatement(sql);rs=pstmt.executeQuery();while(rs.next()){Clothc=newCloth();c.setClothname(rs.getString("Clothname"));c.setClothid(rs.getString("Clothid"));li.add(c);}conn.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}returnli;}publicListNow(){Listli=newArrayList();//Clothcl=newCloth();Connectionconn=DBconn.getConn();Stringsql="selecttop10Clothname,ClothidfromClothesorderbyPubdatedesc";try{pstmt=conn.prepareStatement(sql);rs=pstmt.executeQuery();while(rs.next()){Clothc=newCloth();c.setClothname(rs.getString("Clothname"));57 长春工程学院毕业设计(论文)c.setClothid(rs.getString("Clothid"));li.add(c);}}catch(Exceptione){e.printStackTrace();}returnli;}publicbooleanInsert(Clothcloth){try{Connectionconn=DBconn.getConn();Stringsql="insertClothes(Clothid,Clothname,Price,Purchaseprice,Typeid,Sex,Score,Discount,brand,material,sleeve,collar,style,plate)values(?,?,?,?,?,?,?,?,?,?,?,?,?,?)";pstmt=conn.prepareStatement(sql);pstmt.setString(1,cloth.getClothid());pstmt.setString(2,cloth.getClothname());pstmt.setFloat(3,cloth.getPrice());pstmt.setFloat(4,cloth.getPurchaseprice());pstmt.setInt(5,cloth.getTypeid());pstmt.setString(6,cloth.getSex());pstmt.setInt(7,cloth.getScore());pstmt.setFloat(8,cloth.getDiscount());pstmt.setString(9,cloth.getBrand());57 长春工程学院毕业设计(论文)pstmt.setString(10,cloth.getMaterial());pstmt.setString(11,cloth.getSleeve());pstmt.setString(12,cloth.getCollar());pstmt.setString(13,cloth.getStyle());pstmt.setString(14,cloth.getPlate());pstmt.executeUpdate();conn.close();if(sql!=null){flag=true;}}catch(Exceptione){e.printStackTrace();}returnflag;}publicbooleanUpdate(Clothcloth,Stringid){try{Connectionconn=DBconn.getConn();Stringsql="updateClothessetClothid=?,Clothname=?,Price=?,Purchaseprice=?,Typeid=?,Sex=?,Score=?,Discount=?,brand=?,material=?,sleeve=?,collar=?,style=?,plate=?whereClothid=?";pstmt=conn.prepareStatement(sql);57 长春工程学院毕业设计(论文)pstmt.setString(1,cloth.getClothid());pstmt.setString(2,cloth.getClothname());pstmt.setFloat(3,cloth.getPrice());pstmt.setFloat(4,cloth.getPurchaseprice());pstmt.setInt(5,cloth.getTypeid());pstmt.setString(6,cloth.getSex());pstmt.setInt(7,cloth.getScore());pstmt.setFloat(8,cloth.getDiscount());pstmt.setString(9,cloth.getBrand());pstmt.setString(10,cloth.getMaterial());pstmt.setString(11,cloth.getSleeve());pstmt.setString(12,cloth.getCollar());pstmt.setString(13,cloth.getStyle());pstmt.setString(14,cloth.getPlate());pstmt.setString(15,id);pstmt.executeUpdate();conn.close();if(sql!=null){flag=true;}}catch(Exceptione){57 长春工程学院毕业设计(论文)e.printStackTrace();}returnflag;}publicbooleanInt_pic(Stringpic,Stringid){try{Connectionconn=DBconn.getConn();Stringsql1="updateClothessetClothPicture=?whereClothid=?";pstmt=conn.prepareStatement(sql1);pstmt.setString(1,pic);pstmt.setString(2,id);pstmt.executeUpdate();pstmt.close();conn.close();flag=true;}catch(Exceptione){e.printStackTrace();}returnflag;}publicbooleanDelete(Stringid){Stringsql1="deletefromClotheswhereClothid=?";try{Connectionconn=DBconn.getConn();pstmt=conn.prepareStatement(sql1);57 长春工程学院毕业设计(论文)pstmt.setString(1,id);pstmt.executeUpdate();pstmt.close();conn.close();flag=true;}catch(Exceptione){e.printStackTrace();}returnflag;}//打折商品publicListDiscount(){Listli=newArrayList();Connectionconn=DBconn.getConn();Stringsql="selecttop8*fromClotheswhereDiscount<1";try{pstmt=conn.prepareStatement(sql);rs=pstmt.executeQuery();while(rs.next()){Clothc=newCloth();c.setClothpicture(rs.getString("Clothpicture"));c.setClothname(rs.getString("Clothname"));c.setPrice(rs.getFloat("Price"));c.setDiscount(rs.getFloat("Discount"));c.setClothid(rs.getString("Clothid"));li.add(c);}57 长春工程学院毕业设计(论文)conn.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}returnli;}//展示商品publicListDiscount_all(){Listli=newArrayList();Connectionconn=DBconn.getConn();Stringsql="select*fromClotheswhereDiscount<1";try{pstmt=conn.prepareStatement(sql);rs=pstmt.executeQuery();while(rs.next()){Clothc=newCloth();c.setClothpicture(rs.getString("Clothpicture"));c.setClothname(rs.getString("Clothname"));c.setPrice(rs.getFloat("Price"));c.setDiscount(rs.getFloat("Discount"));c.setClothid(rs.getString("Clothid"));li.add(c);}conn.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblock57 长春工程学院毕业设计(论文)e.printStackTrace();}returnli;}57

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭