使用SSH框架和Tomcat开发在线服装商店.docx
- 文档编号:11084906
- 上传时间:2023-02-25
- 格式:DOCX
- 页数:45
- 大小:1,013.84KB
使用SSH框架和Tomcat开发在线服装商店.docx
《使用SSH框架和Tomcat开发在线服装商店.docx》由会员分享,可在线阅读,更多相关《使用SSH框架和Tomcat开发在线服装商店.docx(45页珍藏版)》请在冰豆网上搜索。
使用SSH框架和Tomcat开发在线服装商店
网络教育学院
本科生毕业论文(设计)
题目:
使用SSH框架和Tomcat开发在线服装商店
学习中心:
层次:
专科起点本科
专业:
盗墓倒斗
年级:
年春/秋季
学号:
二
学生:
高坤二货
指导教师:
完成日期:
年月日
内容摘要
互联网生活服务给我们的生活带来了翻天覆地的变化,传统的购物方式也越来越不能满足人们快节奏的生活需求。
网上服装商店同传统的店面服装店相比,网上服装商城的经营方式和销售渠道是全新的,它全天候和全方位服务是传统服装店所不能比及的,成本低廉更是开设网上服装商店的主要原因。
我使用javaweb-jsp作为网站开发语言,免费的mysql数据库和开源的tomcat服务器使得我完全免费的投入开发工作,Hibernate+Spring+Struts2组成的SSH框架的使用也使得面向对象开发更加简单快速。
本次设计,我实现了一个基本的电子商务的简易动态商务网站——网上服装商店。
我主要负责开发数据库构造,实现用户的注册、登录、商品的查询、订购等功能。
直观的功能和完备的流程使得本系统易于操作,十分友好。
关键词:
Tomcat;SSH框架;面向对象;
目录
内容摘要I
引言1
1概述2
1.1背景2
1.2本文的主要内容及组织结构3
2SSH框架简介与搭建4
2.1Spring框架简介4
2.2Hibernate框架简介5
2.3Struts2框架简介7
2.4SSH框架的搭建9
3Tomcat和Mysql的简介与配置15
3.1Tomcat与Mysql简介15
3.2Tomcat与Mysql的安装测试16
4数据库创建和表结构规划24
4.1数据库和表结构创建24
5JSP页面功能开发和数据库的增删改查27
5.1JSP页面功能开发27
5.2数据库的增删改查实现35
6项目部署和测试38
6.1JSP项目部署38
6.2程序测试38
7结论40
参考文献41
引言
基于Internet的信息服务,商务服务已经成为现代企业一项不可缺少的内容。
很多企业都已不满足于建立一个简单的仅仅能够发布信息的静态网站。
现代企业需要的是一个功能强大的,能提供完善的电子商务服务的动态商务网站。
同时人们的生活方式也在随着发生改变,在线缴费、在线支付已经成为常态。
开发工具包括Tomcat、Dreamweaver、Mysql、Eclipse;首先对系统进行需求分析,得出了服装购买系统的结构图,然后接着详细的描述实现了一个网上服装商店全程购物系统解决方案。
本系统是一个小型的电子商务系统----在线服装店,可以为各类用户提供方便的在线购买服装环境,符合目前国内流行的电子商务模式。
用户可以在系统中实现注册、浏览商品、搜索查询商品、下定单等功能;管理员可以通过用户管理、定单管理、商品管理等管理功能来对系统进行维护更新。
本次研究旨在对SSH框架和Tomcat服务器的生产环境和开发环境进行场景再现式的尝试,而尝试的内容,就是当下时髦且越来越被国家重视的互联网电商。
所以,此次论文研究巧妙的将计算机网络技术与实际应用结合在了一起,避免了以往学术研究脱离实际,无法产生社会效益和经济价值的弊端,相辅相成,相互论证,以电商网站的实际访问和使用检验技术的可行性以及优缺点,用技术的实际运用来检验电商网站的技术出路和未来发展方向。
这就是此次研究最大的突破和特色。
1概述
1.1背景
动态网页技术的急速发展使得原来的CGI到ASP都从某种程度上满足了网页开发人员对动态网页开发技术的需求。
但是不管是CGI还是ASP都存在一定的局限性,CGI对服务器资源的耗费太大,ASP只能同MicrosoftIIS一起使用等,这些都限制了这些技术的使用范围,极大地阻碍了它们的推广。
开发人员都希望找到一种统一的页面开发技术,该技术应该具有的特点:
1.与操作平台无关,能够在任何Web或应用程序服务器上运行;2.将应用程序逻辑和页面显示分离;3.提供代码重用,简化开发基于Web的交互式应用程序的过程。
JSP技术就是被设计用来满足这样的要求的。
所以,本文的研究方向就是研究当前使用非常广泛的JSP技术。
由于SSH三大框架的系统使用和科学的开发模型,JSP技术也在不停的往前发展,我国很多著名的电商网站都利用这一技术建立了先进、安全和跨平台的动态网站。
Java是未来的主流开发技术,具有很多优势。
JSP则是Java在Internet/IntranetWeb上的重要应用技术,得到了广泛的支持和承认,它可以和各种Java技术完好地结合在一起,从而实现非常复杂的应用。
在现有的基础上发掘JSP技术的潜力是非常有不要的,JSP应用开发的前景十分可观。
首先,JSP将内容的生成和显示进行分离。
使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终的页面。
使用JSP标识或者小脚本来生成页面上的动态内容。
Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。
其次,强调可重用的组件。
得益于Java的操作平台无关性,开发人员能够很方便共享和交流执行普通操作的组件,或者使得这些组件为更多的使用者所使用。
基于组件的方法加速了总体的开发过程,极大地提高了项目整体开发的效率。
让只懂得一般页面开发技术(HTML)的开发人员也能够使用JSP的强大功能。
所以,国内为数众多的互联网公司率先选用JSP技术作为网站后台的主要技术,比如京东商城,XX搜索,阿里巴巴,淘宝网等国内知名大型互联网公司都将复杂且需要高可用性的程序交给了基于java的JSP技术来实现,从而提高了网站的安全性和稳定性。
1.2本文的主要内容及组织结构
本文研究的内容为使用SSH框架集和Tomcat服务器开发在线服装商店的可行性和网站的稳定性。
本文的组织结构:
全文共分7章。
第一章,主要是介绍该项目研究的背景和意义。
第二章,介绍SSH框架集的特性和工作原理。
第三章,Tomcat服务器和Mysql数据库的特性和配置。
第四章,项目的数据结构分析和具体的表的创建。
第五章,Jsp页面和Java代码的开发。
第六章,在线商店在Tomcat服务器上的部署和测试。
第七章,对此次开发研究成果做出总结。
2SSH框架简介与搭建
2.1Spring框架简介
Spring是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。
框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
轻量——从大小与开销两方面而言Spring都是轻量的。
完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。
并且Spring所需的处理开销也是微不足道的。
此外,Spring是非侵入式的,Spring应用中的对象不依赖于Spring的特定类。
控制反转——Spring通过一种称作控制反转(IoC)的技术促进了低耦合。
当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。
你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。
面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。
应用对象只实现它们应该做的——完成业务逻辑——仅此而已。
它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。
容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联的。
然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。
框架——Spring可以将简单的组件配置、组合成为复杂的应用。
在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。
Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。
图2.1Spring的MVC结构图
2.2Hibernate框架简介
Hibernate是一种Java语言下的对象关系映射解决方案。
它是一种自由、开源的软件。
它用来把对象模型表示的对象映射到基于SQL的关系模型结构中去,为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的框架。
Hibernate不仅管理Java类到数据库表的映射(包括从Java数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和JDBC处理数据的时间。
它的设计目标是将软件开发人员从大量相同的数据持久层相关编程工作中解放出来。
无论是从设计草案还是从一个遗留数据库开始,开发人员都可以采用Hibernate。
Hibernate对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,它既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用。
最具革命意义的是,Hibernate可以在应用EJB(EnterpriseJavaBeans是Java应用于企业计算的框架)的J2EE架构中取代CMP,完成数据持久化的重任。
HibernateAPI中的接口可以分为以下几类:
(1)提供访问数据库的操作的接口,包括session、Transaction、Query接口;
(2)用于配置Hibernate的接口,Configuration;
(3)间接接口,使应用程序接受Hibernate内部发生的事件,并作出相关的回应,包括:
Interceptor、Lifecycle、Validatable;
(4)用于扩展Hibernate功能的接口,如UserType、CompositeUserType、IdentifierGenerator接口。
Hibernate内部还封装了JDBC、JTA(JavaTransactionAPI)和JNDI(JavaNamingAndDirectoryInterface)。
其中,JDBC提供底层的数据访问操作,只要用户提供了相应的JDBC驱动程序,Hibernate可以访问任何一个数据库系统。
JTA和JNDI使Hibernate能够和J2EE应用服务器集成。
图2.2Hibernate数据库层图例
图2.3Hibernate持久化层图例
2.3Struts2框架简介
Struts2以WebWork优秀的设计思想为核心,吸收了Struts框架的部分优点,提供了一个更加整洁的MVC设计模式实现的Web应用程序框架。
从逻辑中分离出横切关注点的拦截器、减少或者消除配置文件、贯穿整个框架的强大表达式语言、支持可变更和可重用的基于MVC模式的标签API,Struts2充分利用了从其它MVC框架学到的经验和教训,使得Struts2框架更加清晰灵活。
Struts2框架本身大致可以分为3个部分:
核心控制器FilterDispatcher、业务控制器Action和用户实现的企业业务逻辑组件。
核心控制器FilterDispatcher是Struts2框架的基础,包含了框架内部的控制流程和处理机制。
业务控制器Action和业务逻辑组件是需要用户来自己实现的。
用户在开发Action和业务逻辑组件的同时,还需要编写相关的配置文件,供核心控制器FilterDispatcher来使用。
基本简要流程如下:
(1)客户端浏览器发出HTTP请求。
(2)根据web.xml配置,该请求被FilterDispatcher接收。
(3)根据struts.xml配置,找到需要调用的Action类和方法,并通过IoC方式,将值注入给Aciton。
(4)Action调用业务逻辑组件处理业务逻辑,这一步包含表单验证。
(5)Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,并跳转到相应页面。
(6)返回HTTP响应到客户端浏览器。
在Struts2框架中的处理大概分为以下几个步骤:
(1)客户端初始化一个指向Servlet容器(例如Tomcat)的请求。
(2)这个请求经过一系列的过滤器(Filter)。
(3)接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action。
(4)如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy。
(5)ActionProxy通过ConfigurationManager询问框架的配置文件,找到需要调用的Action类。
(6)ActionProxy创建一个ActionInvocation的实例。
(7)ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。
(8)一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。
返回结果通常是(但不总是,也可能是另外的一个Action链)一个需要被表示的JSP或者FreeMarker的模版。
在表示的过程中可以使用Struts2框架中继承的标签。
在这个过程中需要涉及到ActionMapper。
工作流程:
(1)客户端浏览器发出HTTP请求。
(2)根据web.xml配置,该请求被FilterDispatcher接收。
(3)根据struts.xml配置,找到需要调用的Action类和方法,并通过IoC方式,将值注入给Aciton。
(4)Action调用业务逻辑组件处理业务逻辑,这一步包含表单验证。
(5)Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,并跳转到相应页面。
(6)返回HTTP响应到客户端浏览器。
图2.4Struts2框架原理图例
2.4SSH框架的搭建
(1)Struts2搭建
表1.1搭建所需jar包
序号
名称
描述
1
commons-fileupload-1.2.2.jar
文件上传组件
2
commons-io-2.0.1.jar
io包
3
commons-lang3-3.1.jar
基础工具包,封装一些常用的基础操作
4
commons-loggin-1.1.1.jar
日志组件
5
freemarker-2.3.19.jar
一个基于模板生成文本输出的通用工具
6
ognl-3.0.6.jar
对象图导航语言(jar包库)
7
strut2-core-2.3.12.jar
Struts2核心jar包
8
xwork-core-2.3.12.jar
xwork核心包
9
javassist-3.15.0-GA.jar
扩展java类和实现
(2)整合Spring
表1.2整合所需jar包
序号
名称
描述
1
struts2-spring-plugin-2.3.12.jar
Struts2+Spring整合包
2
spring-core-3.2.2.jar
Spring核心工具包
3
spring-context-3.2.2.jar
为Spqing提供核心扩展
4
spring-context-support-3.2.2.jar
为Spqing提供核心扩展
5
spring-beans-3.2.2.jar
管理beans的工具
6
spring-expression-3.2.2.jar
表达式语言
7
spring-web-3.2.2.jar
Web应用开发包
8
spring-aspects-3.2.2.jar
提供对AspectJ的支持,以便可以方便的将面向方面的功能集成进IDE中
(3)整合Hibernate
表1.3整合所需jar包
序号
名称
描述
1
spring-aop-3.2.2.jar
事务管理
2
spring-jdbc-3.2.2.jar
对JDBC封装
3
spring-orm-3.2.2.jar
ORM映射支持
4
spring-tx-3.2.2.jar
Spring配置事务管理
5
hibernate-core-4.2.0.CR2.jar
Hibernate的核心模块
6
hibernate-jpa-2.0-api-1.0.1.Final.jar
用来定义java持久性
7
hibernate-commons-annotations-4.0.1.Final.jar
注解
8
aopalliance-1.0.jar
AOP提供了最普通和通用的接口
9
jta-1.1.jar
事务管理
10
antlr-2.7.7.jar
执行sql查询
11
dom4j-1.6.1.jar
Xml配置和映射解释器
12
proxool-0.9.1.jar
配置连接池的工具类
13
proxool-cglib.jar
数据库代理
14
jboss-logging-3.1.0.GA.jar
日志
15
jboss-transaction-api_1.1_spec-1.0.0.Final.jar
事务处理
16
mysql-connector-java-5.1.8-bin.jar
Mysql连接驱动
(5)最后导入一个jar(aspectjweaver.jar)
(4)加入配置文件:
加入web.xml
xmlversion="1.0"encoding="UTF-8"?
>
applicationContext.xml
publicclassUserDaoImpl
publicvoidaddUser(Tt){
//TODOAuto-generatedmethodstub
getSession().save(t);
}
@SuppressWarnings("unchecked")
publicArrayList
Stringhql="fromUser";
Queryquery=getSession().createQuery(hql);
return(ArrayList
}
@SuppressWarnings("unchecked")
publicArrayList
Queryquery=getSession().createQuery("fromUseruorderbyu.nameasc");
query.setFirstResult((offset-1)*length);
query.setMaxResults(length);
return(ArrayList
}
publicvoiddelete(List
try{
for(Tt:
list)
{
this.getSession().delete(t);
}
}catch(Exceptione)
{
thrownewOperationException("批量删除失败");
}
}
}
增加applicationContext-config.xml
xmlversion="1.0"encoding="UTF-8"?
>
component-scanbase-package="cn.cdi.test"> exclude-filtertype="annotation"expression="org.springframework.stereotype.Controller"/> component-scan> class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> transactionManager--> adviceid="txAdvice"transaction-manager="t
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 使用 SSH 框架 Tomcat 开发 在线 服装 商店