团购平台设计

摘要

艾瑞咨询的研究表明,我国团购会员主要集中在白领和学生中间。以大学生为对象进行校园团购的需求分析,指出大学生基数巨大,将形成了强大、稳定的消费人群,从消费水平、消费对象、交流渠道三方面进行分析,认为针对大学校园市场的团购将倍受欢迎。团购网站应该关注与大学生学习、生活、娱乐相关的商品,并尽可能提供更多的品种。

校园团购网系统是一个B/S结构的信息系统,以MySQL作为后台数据库,Tomcat作为Web服务器,采用myeclipse作为开发环境,使用jsp+struts+hibernate+spring技术开发完成的。实现了商品查询、会员中心、会员资料修改、订单信息、留言板、管理员登录、商品信息管理、会员管理、订单信息管理、查询会员信息等功能。系统完全按照软件工程的生命周期进行开发。首先是项目开发前的准备工作,包括大量的技术研究和需求调研。在此基础上,项目组提出了系统的架构,完成了总体设计、详细设计和编码、测试阶段的工作。

网站建立后的首要任务就是要对网站进行推广,赢得更多客户的访问,从而获得直接或者间接的效益,所以网站的推广尤为重要。本文提供的推广策略主要包括:搜索引擎推广策略、邮件推广策略及广告推广策略等,必须采用合理的推广手段才能实现最佳推广效果。

关键词:校园团购   JSP  后台管理  网站推广

Abstract

IResearch shows that, China's online group buying mainly concentrated in white-collar and user among students. University campus network for objects for a bulk requirement analysis, and points out that college students' base huge, will be a strong, stable consumer groups, from the level of consumption, consumption object, the communication channels to the three aspects, the analysis of the market in university campus network will favorably welcome. Group buying website stand should focus on and college students study, life and entertainment merchandising and, if possible, to provide more variety.

 Campus group buying website system is a B/S structure of information system to MySQL as backend database, Tomcat as a Web server, the myeclipse as development environment, use the JSP + struts + hibernate + spring technology development work. Realize the commodity inquires member center, the user data, modify, order information, message board, administrators login, commodity information management, user management, order information management, inquires the user information etc. Function. The system fully according to the software engineering of the life cycle of development. First is the preparation for the project development work, including a large number of technical research and demand research. On this basis, the project team put forward the system structure, the completion of the overall design, detailed design and coding, test stage of the work.

The primary task of the web site set up is to perform site promotion, win more customers to visit, to get the benefit of the direct or indirect, so website promotion is especially important. This paper provides the promotion strategy include: search engine promotion strategy, E-mail promotion strategy and network advertisement promotion strategy, and so on, must use reasonable promotion means to achieve the best promotion effect.

Keywords: campus group buying   JSP   background management    website promotion

目录

1  前言

1.1  团购背景及现状

1.2  课题的目的、内容及思路

2  相关技术综述

2.1  JSP技术简介

2.2  MySQL数据库简介

2.3  JDBC简介

2.4  B/S模式简介

2.5  SSH体系结构

2.6  Hibernate简介

2.7  JDK的简介

2.8  Tomcat的介绍

2.9  Struts简介

3  系统分析

3.1  系统可行性分析

3.1.1市场可行性

3.1.2技术可行性

3.1.3 运行可行性

3.2  系统服务对象和和提供的服务

3.3  系统的功能性分析

3.3.1用例模型

3.3.2用例场景的描述

3.4  开发环境

4  系统设计

4.1  系统结构设计

4.2  系统功能模块设计

4.3  业务流程设计

4.3.1前台业务流程图

4.3.2后台业务流程图

4.4  业务数据流设计

4.5  数据库设计

5  系统实现

5.1  网站页面

5.1.1网站首页

5.1.2系统预览

5.2  前台功能模块

5.2.1商品展示模块

5.2.2商品查询模块

5.2.3会员登录模块

5.2.4会员资料修改模块

5.2.5购物车信息管理模块

5.2.6订单模块

5.3  后台管理模块

5.4  数据库连接的实现

5.5  数据验证功能实现

5.5.1客户端验证

5.5.2服务器端验证

5.6  JSP中访问JavaBean的方法

6  网站推广

6.1  网站关键词

6.1.1选择网站的关键字方法和注意事项

6.1.2本网站提供的关键词

6.2  网站推广

6.2.1搜索引擎推广

6.2.2许可E—ma iI推广

6.2.3链接类推广

6.2.4 IM(即时通讯工具)推广策略

6.2.5信息发布类推广

6.2.6特色活动推广

6.2.7广告推广

6.2.8病毒式营销推广

结论

致谢

参考文献

1  前言

1.1  团购背景及现状

随着信息技术的飞速发展,方便、快捷、无时间地域限制的校园团购网日益成为更多人采用的购物方式。而近年来才兴起的团购更因其价格低廉备受消费者的青睐。校园团购网已呈现出从分散的个体网购到团购的发展趋势。

2008年11阶段,美国芝加哥出现了一家名为Groupon的新型服务企业,通过每天一团的创新商业模式提供在线团购服务,并依此整合SNS、微博客和LBS等平台,创建了聚合本土商家、会员及广告主的产业链和商业生态圈。在该平台上,每天只提供一次团购,只推出一款折扣产品。这个平台一般从零点开始,参与团购的会员数达到一定规模后,团购即开启。

2011年始,由美国商业模式咨询机构Board of Innovation评选出了2010年十大震撼创业模式,Groupon名列前茅。借助这一独特模式,Groupon成为了有史以来增速最快的企业,并在全球吸引了数以百计的模仿者”。现在,Groupon、Facebook和Twitter是国外三大流行的团购网站。

从团购网站Groupon的盈利模式被大家所认可并引进中国以来,团购市场的发展,俨然超越了以往校园团购网的发展速度。据统计,中国目前已有数以千计的团购网,比较著名的有中国团购在线、拉手团购、美团、大众、聚划算、嘀嗒团、团宝网、饭统-饭团、满座、QQ团购、F团、聚美优品、好特会、YOKA优享团等,其中也不乏专业的团购网站。而作为中国最具权威的团购门户网站,中国团购在线会员已达500多万,并已成功为1 0 0多万家庭提供团购服务。据报道,2010年国内团购市场销售总额将达200亿元,相当于去年的10倍。

2 0 1 1年中国互联信息中心(CNNIC)公布了《第27次中国互联发展状况统计报告》称,网民规模为4.57亿,宽带普及率提升至98.3%。互联网的普及和网民规模的继续壮大为团购网站发展培育了大批潜在消费者。目前常见的团购内容涉及餐饮、房产、汽车、婚庆、教育、票务等领域,还有许多行业和领域有待团购去开发,前景十分广阔。

1.2  课题的目的、内容及思路

本课题的目的是使团购网站管理清晰化,透明化,便于操作,易于管理。通过功能模块的优化组合实现不同的管理细节,使管理过程实现最大程度的自动化与信息化,并能自动对人工操作环节进行复查,使基于JSP技术的校园团购网出错率降至最低。在传统的团购网站管理中,各种管理工作往往是很复杂烦琐的。团购网站管理的特点是信息处理量比较大,所管理的种类比较繁多,而且由于消费、缴费等单据发生量特别大,关联信息多,查询和统计的方式不尽相同。在管理过程中经常会出现信息的重复传递,因此团购网站管理必须实现计算机化处理。我们系统开发的总体任务是实现团购网站管理的系统化、规范化、自动化、信息化与智能化,从而达到提高团购网站管理效率的目的。本课题就是要使用jsp+struts+hibernate+spring技术实现校园团购网的建立。采用JSP动态网页设计语言与MySQL数据库相配合

目前许多信息行业在具体的业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。针对上述问题,本系统采用软件工程的开发原理,依据软件流程过程规范,按照需求分析、概要设计、详细设计、程序编码、测试、软件应用、软件维护等过程开发了一个基于JSP技术的校园团购网。采用eclipse作为开发工具,结合MySQL数据库。数据库设计遵循3范式,主要设计了缴费基本信息表、团购网站销售基本信息表、消费基本信息表、管理系统的会员口令表等数据表。解决了基于JSP技术的校园团购网中存在的数据安全性、数据一致性以及系统运行速度等问题。本系统主要采用下面主要有四个思路:

1)系统应符合团购网站管理的规定,满足信息行业相关人员日常使用的需要,并达到操作过程中的直观,方便,实用,安全等要求;

2)系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充,维护; 

3)系统应具备数据库维护功能,及时根据会员需求进行数据的添加、删除、修改、备份等操作; 

4)尽量采用现有软件环境及先进的管理系统开方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。

2  相关技术综述

2.1  JSP技术简介

JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

2.2  MySQL数据库简介

MySQL是一个备受欢迎的高性能、多会员、多线程SQL数据库服务器,它是一个客户机/服务器结构的实现,由一个服务器守护程序MySQL和多种不同的客户程序及库组成。它由MySQLAB开发、发布和支持。MySQLAB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式结合开源价值和方法论的第二代开源公司,MySQLMySQ·L AB的注册商标。

MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass·deployed)的软件中去。MySQL网站(http://wwwmysqlcorn)提供了关于MySQLMySQLAB的最新的消息。

MySQL有如下主要特征:

(1)多线程:MySQL的核心程序采用完全的多线程编程。线程是轻量级的进程,它可以灵活地为会员提供服务,而不过多的消耗系统资源。用多线程和C语言实现的MySQL能很容易充分利用CPU,可以采用多CPU体系结构。

(2)开放源代码:MySQL是自由的开放源代码产品,可以在GPL下畅通使用。

(3)多操作系统支持:MySQL可运行在不同的操作系统下。简单地说,MySQL可以支持w访dows9598T2000UNIXLinuxSUN OS等多种操作系统平台。这意味着在一个操作系统中实现的应用可以很方便地移植到其他的操作系统下。

(4)性能高效稳定:MySQL拥有一个非常快速而且稳定的基于线程的内存分配系统,可以持续使用而不必担心其稳定性。事实上,MySQL的稳定性足以应付一个超大规模的数据库,因此YahooGoogleCiscoHPNASA都采用它作为自己的数据库引擎。

(5)多会员支持:MySQL可有效地满足50---1000个并发会员的访问,并且在超过600个会员限度的情况下,MySQL的性能没有明显的下降。

(6)应用程序支持:有CC++JAVAPerlPHPPython等多种客户工具和API的支持。

(7)支持事务处理、行锁定、子查询、外键和全文检索等功能。

(8)MySQL支持大型的数据库处理,可以方便地支持上万条记录的数据库。作为一个开放源代码的数据库,MySQL可以针对不同的应用进行相应的修改。

(9)MySQL有一个非常灵活而且安全的权限和口令系统。当客户与MySQL服务器连接时,他们之间所有的口令传送被加密,而且MySQL支持主机认证。

MySQL是数据库领域的中间派。它缺乏一个全功能数据库的大多数主要特征,但是又有比类似Xbase记录存储引擎更多的特征。它类似于企业级RDBMS,需要一个积极的服务者守护程序,但又不是非常消耗资源。

MySQL为程序员提供足够的功能。虽然系统缺乏主要数据库功能,但数据库程序员将喜欢其查询功能和广泛的客户库,程序员发觉MySQL对简单数据库的价值。

2.3  JDBC简介

JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名。

有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC ,就不必为访问access数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。

Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如JDBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。

2.4  B/S模式简介 

B/S模式是一种以Web技术为基础的新型的MIS系统平台模式。把传统C/S模式中的服务器部分分解为一个数据服务器与一个或多个应用服务器(Web服务器),从而构成一个三层结构的客户服务器体系。

第一层客户机是会员与整个系统的接口。客户的应用程序精简到一个通用的浏览器软件,如Netscape Navigator,微软公司的IE等。浏览器将HTML代码转化成图文并茂的网页。网页还具备一定的交互功能,允许会员在网页提供的申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的Web服务器。

第二层Web服务器将启动相应的进程来响应这一请求,并动态生成一串HTML代码,其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处理工作。

  第三层数据库服务器的任务类似于C/S模式,负责协调不同的Web服务器发出的SQ请求,管理数据库。

 2.1  B/S结构图

2.5  SSH体系结构

SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。

集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,利用Hibernate框架对持久层提供支持,业务层用Spring支持。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring完成业务逻辑。

系统的基本业务流程是: 在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。

采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。

业务逻辑层

Spring IOC

Trancactions

Business

Service class

Hibernate

回话管理

表示层

 Struts-MVC

ActionServlet

Struts Action

Jsp,XML

数据持久层

Hibernate

连接池

查询语言支持和其他Hibberate服务

 2.2  SSH结构体系图

2.6  Hibernate简介 

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Hibernate的核心接口一共有6个,分别为:Session、SessionFactory、Transaction、Query、Criteria和Configuration。这6个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hibernate中的session。SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。Configuration类负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。 Transaction接口Transaction接口负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码。 Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语句或SQL语句两种表达方式。

2.7  JDK的简介

JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK(Software development kit)。JDK 是整个Java的核心,包括了Java运行环境(Java Runtime Environment),一堆Java工具和Java基础的类库(rt.jar)。如果只是运行java的程序,则只安装JRE就可以了。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握 JDK是学好Java的第一步。最主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK等等。其中IBM的JDK包含的JVM(Java Virtual Machine)运行效率要比Sun JDK包含的JVM高出许多。而专门运行在x86平台的Jrocket在服务端运行效率也要比Sun JDK好很多。但不管怎么说,我们还是需要先把Sun JDK掌握好。

   从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本信息也不再延续以前的1.2,1.3,1.4,而是变成了5.0,6.0了。从6.0开始,其运行效率得到了非常大的提高,尤其是在桌面应用方面。

2.8  Tomcat的介绍

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 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。

2.9  Struts简介

首先,Struts是建立在MVC这种公认的好的模式上的,Struts在M、V和C上都有涉及,但它主要是提供一个好的控制器和一套定制的标签库上,也就是说它的着力点在C和V上,因此,它天生就有MVC所带来的一系列优点,如:结构层次分明,高可重用性,增加了程序的健壮性和可伸缩性,便于开发与设计分工,提供集中统一的权限控制、校验、国际化、日志等等:其次,它是个开源项目得到了包括它的发明者CraigR.McClanahan在内的一些程序大师和高手持续而细心的呵护,并且经受了实战的检验,使其功能越来越强大,体系也日臻完善;最后,是它对其他技术和框架显示出很好的融合性。如,现在,它已经与tiles融为一体,可以展望,它很快就会与JSF等融会在一起。当然,和其他任何技术一样,它也不是十全十美的,如:它对类和一些属性、参数的命名显得有些随意,给使用带来一些不便;还有如Action类execute方法的只能接收一个ActionForm参数等。但瑕不掩瑜,这些没有影响它被广泛使用。

3  系统分析

3.1  系统可行性分析

3.1.1市场可行性

自1999年实施高校扩招政策以来,中国的高等教育实现了跨越式发展。2009年,全国普通高校在校生已经超过2285万人,接近1998年的5.1倍。可见,我国大学生数量基数巨大,未来还将继续增长,可以形成强大、稳定的消费人群,校园团购的市场空间很大。大学校园作为一个知识密集、文化层次高、思想活跃的地方,更容易接受新鲜事物,对团购等新兴消费模式接受较快。

当前,我国许多城市都建立了各具特色的大学城。在大学城内,大学生的生活起居相对集中。正是这种区域化优势,使物流配送程序得到大量简化,从而较好地解决了困扰团购的物流配送问题。同时,大学生在校园里接受的是积极向上、朴素纯洁的政治思想教育,学生的消费信用比较好,一般在商家诚实守信,货真价实的情况下,商家能及时收到货款。这些为开展校园团购奠定了良好的基础。

3.1.2技术可行性

技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。基于J2EE技术的校园团购网用的是JSP开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前BS模式软件相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。

3.1.3 运行可行性

对新系统运行后给现行系统带来的影响(包括组织机构、管理方式、工作环境等)和后果进行估计和评价。同时还应考虑现有管理人员的培训、补充,分析在给定时间里能否完成预定的系统开发任务等。

运行可行性是对组织结构的影响,现有人员和机构和环境对系统的适应性及人员培训补充计划的可行性。当前我国信息化技术已经相当普及,各类操作人员水平都有相当的高度,所以在运行上是可行性的。

本系统的开发,是典型的Mis开发,主要是对数据的处理,包括数据的收集,数据的变换,及数据的各种报表形式的输出。采用流行的JSP+MySQL体系,已无技术上的问题。

3.2  系统服务对象和和提供的服务

服务的对象:前期为在校大学生,后期包括所有对象。这些会员通过此系统,能够方便获取商品的信息,查询到所需要团购商品,并能够安全地交易。

校园团购网提供的服务:

(1)商品信息查询服务:查询各种商品的详细信息,包括商品名称、商品的特性、商品的价格和商品的促销情况等。

(2)业界资讯服务:方可可以通过此功能及时了解业界信息。

(3)留言板服务:在线留言及交流团购经验等信息。

(4)会员个人信息管理服务:管理会员的个人信息,包括会员的个人资料,会员的购买记录,会员的信用度等等。

(5)商品管理:管理员通过后台系统在互联网上发布各种特价商品以及优惠政策等促销活动,也可以方便地发布各种广告等信息。

(6)会员管理:包括管理员、会员、普通访客;

(7)订单管理:管理员能够根据卖家交易情况对订单信息进行修改,增加,删除;

(8)公告管理:管理员可也再次发布各种中公告信息。

整个设计的内容及以上的功能都会对后台数据库内相应涉及到的数据表中的数据进行存储、删除、修改、查询等操作,最终提交的设计报告也包含了从最初的需求分析到网站建设成功的具体说明,以及数据存储更新过程等整个设计的各流程环节详细说明。

基于JSP技术的校园团购网具有标准基于JSP技术的校园团购网所具有的现实中完整的团购网站销售管理步骤,完全的虚拟现实实现。真正实现节约资源、提高效率、业务处理的同时真正实现基于JSP技术的校园团购网的功能作用。

3.3  系统的功能性分析

3.3.1用例模型

首先根据需求分析,得到系统的用例模型,如图3.1所示。

图3.1 用例图

3.3.2用例场景的描述

注册会员:普通会员可以注册成为系统会员(免费注册)。会员需要向系统提供个人的基本信息,申请注册成为会员。

查询商品:普通会员和会员都可以浏览和查询商品。他们可以直观地通过网站页面上提供的商品信息浏览商品,当然也可以根据个人需要按类别、价位、日期等搜索商品。

管理个人信息:会员可以管理自己的信息(会员中心),例如修改密码、送货地址和联系方式等。

商品信息管理:管理员通过后台进行产品管理:新增产品,产品上柜,产品销量浏览,产品

搜索,产品删除,产品修改。

发布公告:管理员通过后台进行发布公告,管理公告等。

商品类别管理:管理员可以通过后台进行商品类别的管理,对商品类别进行浏览、添加、删除、修改。

资讯管理:管理员通过后台进行资讯发布及时向访客传递信息。

订单管理:管理员通过后台进行订单的管理,包括查看订单,修改订单状态及发货等。

留言管理:管理员通过后台进行会员留言进行删除和管理等。

后台会员管理:管理员可以通过后台进行会员管理,例如完成会员浏览、会员历史订单浏览和会员删除等功能。

3.4  开发环境

(1)运行环境:jdk1.7

 (2)页面处理:使用Dreamweaver作为页面的开发工具。

(3)代码处理:使用功能强大的开源软件myeclips9.0作为代码的调试工具。

(4)应用服务器:Tomcat平台作为雅加达(Jakarta)计划的一部分,是Sun公司借助Apache的影响来开发Server端的Java技术的战略平台,同时它又是S1.Lrl公司官方推荐的Servlet和JSP容器,很可能成为下一代Java Web Server的主流。

(5)数据库:采用jdbc连接方式,数据库采用MySQL-5.0.51a-win32.zip。

4  系统设计

4.1  系统结构设计

根据业务流程,需要将网站划分为前台、后台和数据库。前台中,客户在登录网站主页后即可链接查看到商品等信息,还可以做订购商品等活动。为了方便客户搜索感兴趣的商品信息,将商品搜索嵌入到主页面中。数据库将要作为网站后台重要的组成部分,管理员的主要操作几乎全部围绕数据库,最后将更新的数据要显示给前台。

前台是一个比较大的功能群,它所包含的信息不仅数量多,而且种类不同。将它设计成比较优化的结构形式能组织好网站的信息内容并将其归类,方便会员获得所需要的信息。其中每一部分都以尽量少的内容显示,以免浏览者看的眼花缭乱而失去耐心。除了这些作用外,设计好前台的结构形式,也是为后面程序的编写做出了框架。在为系统划分功能模块,并以模块为单位来实现设计时也是以这个结构为根基的。

系统的后台要对整个网站的信息和数据进行维护。网站前台所显示的信息在后台都应该有对应的维护。这样,除了设计后台的各个管理界面外,为了方便管理员的工作,可以将各个管理的界面结合到一个页面中。因此,各个管理的界面会作为主管理界面的分支。

在设计好网站前台与后台的结构以后,就将数据库加入到结构中。后台将更新的数据写入到数据库中,前台再将数据库中的信息取出来并显示。

4.2  系统功能模块设计

层次模块结构是将系统划分为若干子系统,子系统下再划分为若干的模块。而模块是指具备有输入输出、逻辑功能、运行程序和内部数据四种属性的一组程序。在结构化系统设计中,模块一般都是按功能划分的,通常称为功能模块。合理的功能模块的划分能够极大限度地减少重复劳动、提高开发工作的效率并增大系统的可维护性。以前面的系统分析为基础,将系统分为两大模块,即前台模块和后台模块。

图4.1  校园团购网中心的功能结构

4.3  业务流程设计

将上面的需求分析进行归纳。得出网站的两个业务主角,即会员与管理员。然后制定他们的相关活动。对应网站的功能可以确定,会员活动对应网站前台业务流程;管理员活动对应网站的后台业务流程。在对业务流程分析中,尽量把业务主角的活动考虑全面,使系统的功能尽量完整。

4.3.1前台业务流程

前台业务主要面向客户。会员可以浏览网站主页、商品的介绍和一些服务信息。

图4.2  前台业务流程

4.3.2后台业务流程

在网站设计中,管理员完成对网站的维护与管理的工作。使用数据库中权限的功能对管理员设置权限,管理员可以对商品及商品分类的信息进行新增,修改及删除,也可以对订单信息进行查看、撤销、发货、完成等处理,同时管理员也可以对会员信息进行管理。流程图如下所示:

图4.3  后台业务流程图

4.4  业务数据流设计

在分析了系统的业务流程之后,就要分析系统的数据流,为后面设计网站的数据库做好基础。这里主要利用数据流程图来说明数据流程。数据流程图是一个图示工具,容易理解,容易在开发和会员方之间进行交流,以及在开发组织内部交流。因此数据流程图作为一种模型工具已经广泛使用在软件工程的实践中。

根据前台业务流程,可以将会员的活动分为两类。会员浏览所使用到的数据归纳为站内信息,如商品信息等。而会员提交的订单则作为网站的订单数据。相应的,根据后台业务流程,管理员对网站内容的添加、更新和删除等所操作的数据定义为网站信息。网站数据流的总体图如图4.4所示。

图4.4  网站数据流图

上面得到的图并不是整个网站数据的详细流程图。它只是将网站的数据流进行了一下分类。例如将网站信息分为了商品信息、分类信息和会员信息。在零级图的基础上还可以将每一个处理的细节描述出来,从而画出细节图。

4.5  数据库设计

E-R图是一种概念模型。概念模型实际上是现实世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是显示世界到信息世界的第一层抽象,使数据库设计人员进行数据库设计的有利工具,也是数据库设计人员和会员之间进行交流的语言,因此概念模型一方面应该具有较强的语义表达能力,能够方便、直接的表达应该用众的各种语义知识,另一方面他还应该简单、清晰并且易于会员理解。

(1)管理员信息表admin的实体图,如下所示:

(2) 会员信息表member的实体图,如下所示:

(3)发货订单商品表post的实体图,如下所示:

(4)会员订单prep表实体图,如下所示:

(5)商品信息表sale的实体图,如下所示:

(6)总体E-R图,如下所示:

主要数据库表结构

(1)管理员信息表“admin”:管理员信息表,主要用于记录管理员的信息,如下所示。

列名

数据类型

长度

允许空

描述

Id

Int

4

管理员ID

Username

Varchar

50

管理员名

Password

Varchar

50

管理员密码

(2)会员信息表“member” 用来保存会员信息,如下所示。

列名

数据类型

长度

允许空

描述

Id

Int

4

会员ID

Username

nvarchar

50

会员名

Password

Nvarchar

100

会员密码

E-mail

Datetime

8

邮箱

tel

Int

4

联系电话

Logintimes

Int

4

注册时间

address

Datetime

8

地址

Name

Nvarchar

50

姓名

(3)发货订单商品表“post”

列名

数据类型

长度

允许空

描述

Id

Int

4

ID

Dnum

Nvarchar

50

编号

Addtime

Nvarchar

50

添加时间

Flag

Nvarchar

50

是否发货

Member

Nvarchar

50

会员名

(4) 订单表“prep”

列名

数据类型

长度

允许空

描述

Id

Int

4

ID

sid

Int

4

订单号

Address

Nvarchar

100

地址

Addtime

Nvarchar

50

添加时间

Flag

Nvarchar

50

是否提交订单

Member

Nvarchar

50

会员名

(5) 商品信息表“sale”

列名

数据类型

长度

允许空

描述

Id

Int

4

ID

Title

Nvarchar

50

名字

Type

Nvarchar

200

商品类型

url

Nvarchar

200

图片路径

Co

Nvarchar

50

产地

Price

Nvarchar

50

商品价格

Addtime

Nvarchar

50

发布时间

Flag

Nvarchar

50

商品分类

5  系统实现

5.1  网站页面

在无数个相互竞争的网站中,特别是对网站网站来说,首页极为重要,它必颁展现网站的特色。并积极地加以表现,首页设计的好坏将直接影响顾客的购买欲望和情绪。在网上网站的首页设计中,首先必须把网站推出的物价商品、最新商品、最新公告等网站的特色和动态信息展现给顾客,然后再提供查看销售排行、查看订单、购物车、商品分类查询等业务。

5.1.1网站首页

在整个网页的制作过程中,都是结合使用HTML语言来实现设计的。系统的页面设计决定了网站的风格, 制作好的网站不仅提供给营销商,更多的要供浏览者浏览。所以整个网站系统应注重的是:易导航性、易操作性和友好的交互界面。因此,网站的设计最好要简洁、明了、格调清新、实用、易于使用和维护。在页面的风格上应保持统一,这里采用CSS样式表将所有页面的字体、字号、颜色以及超链接的样式做统一定义。产品信息放在网站首页。

图5.1  网站首页 

5.1.2系统预览

网站由多个程序页面组成,下面仅列出几个典型的预览。会员中心该页面用于实现修改密码、修改详细信息、购物车信息管理、未发货订单管理、已发货订单管理。

图5.2  会员中心

台管理展示页面,后台系统管理员登陆系统后,就会看到后台管理页面,后台管理页面我们也采用了首页的色彩风格,页面框架包括左侧功能列表与右侧具体功能展示,功能包括:滚动公告管理、业界资讯管理、商品类别管理、商品信息管理和注册会员管理等管理。后台管理页面如图5.3所示。

图5.3  后台管理

5.2  前台功能模块

网上电子商城前台主要有商品查询、商品浏览、会员中心等功能,其中的会员中心主要包括会员注册、会员登录和会员资料修改等功能。

5.2.1商品展示

下面以畅销商品为例

图5-4  畅销商品

此页的原理是每次访问此页面时,都会调用bean中getAllHotTrave的方法, 然后从数据库中查找畅销商品,并按照javascript中设定的处理大分类一行两个小分类方法,以ID降序排列出来。

部分核心代码如下:

public List getAllHotTrave(){

String sql = "select * from sale where flag='畅销商品' order by id desc";

DBO dbo = new DBO();

list = new ArrayList();

dbo.open();

try{

rs = dbo.executeQuery(sql);

while(rs.next()){

List list2=new ArrayList();

list2.add(rs.getString(1));

list2.add(rs.getString(2));

list2.add(rs.getString(3));

list2.add(rs.getString(4));

list2.add(rs.getString(5));

list2.add(rs.getString(6));

list2.add(rs.getString(7));

list2.add(rs.getString(8));

list2.add(rs.getString(9));

list2.add(rs.getString(10));

list2.add(rs.getString(11));

list2.add(rs.getString(12));

list2.add(rs.getString(13));

list.add(list2);

}

return list;

}catch(Exception e){

e.printStackTrace();

return list;

}finally{

dbo.close();

}

}

5.2.2商品查询模块

会员可以根据自身的需求,在商品界面键入商品的关键字进行查询。

图5.5  商品查询

此模块主要实现商品的查询,可以按照商品类别的查询,也可以按商品名称查询,但是按商品名称查询要优先于按生产厂家与按商品类别查询。本页面Search.jsp提交数据到searchInfo.jsp在searchInfo.jsp中处理查询并在本页面内进行展示。

部分核心代码如下:

String title=Common.toChineseAndTrim(request.getParameter("title"));

String type=Common.toChineseAndTrim(request.getParameter("type"));

String time=Common.toChineseAndTrim(request.getParameter("time"));

String sql = "select * from sale where type like '%"+type+"%' order by id desc";

if(!title.trim().equals("")){

sql = "select * from sale where title like '%"+title+"%' order by id desc";

}

else if(!time.trim().equals("")){

sql = "select * from sale where co like '%"+time+"%' order by id desc";

}

5.2.3会员登录模块

图5.6  会员登录

会员需要购买商品时,需先注册成为会员,再进行登录和购买;会员登录功能是系统识别不同会员的一种手段,系统必须能够清晰地辨认不同的会员,才能提供对该会员的折扣和其他优惠信息,最主要的是系统需要记录会员的购物信息,并为会员的购物行为生成订单。

部分核心代码如下:

if(method.equals("PAGEUSERLOGIN")){//登陆页面会员登陆

String username = Filter.escapeHTMLTags(request.getParameter("username").trim());

String password = Filter.escapeHTMLTags(request.getParameter("password").trim());

String reg_type = Filter.escapeHTMLTags(request.getParameter("reg_type").trim());

String lastip = request.getRemoteAddr();

int flag = memberBean.memberLogin(username, password, reg_type);

if(flag == Constant.SUCCESS){//登陆成功

String info = memberBean.getLastTimeIP(username);

int flag2 = memberBean.upmemberLogin(username, lastip);

if(flag2 == Constant.SUCCESS){

session.setAttribute("member", username);

session.setAttribute("type", reg_type);

session.setAttribute("info", info);

request.getRequestDispatcher("member/index.jsp").forward(request, response);

}

5.2.4会员资料修改模块

图5.7  会员资料修改

会员资料修改时为会员更改个人信息所提供的窗口,会员只有登录网页后才有权限修改个人资料信息。会员资料修改模块在前台主页的导航条上,单击“修改资料”链接,进入会员资料修改页面,该页面主要会员修改会员信息。会员资料修改页面如图5.7所示。

部分核心代码如下:

if(method.equals("UPREGINFO")){//个人会员修改资料

String member=(String)session.getAttribute("member");

String type=(String)session.getAttribute("type");

if(member==null||type==null){

response.sendRedirect("error.jsp");

}

else{

String realname = Filter.escapeHTMLTags(request.getParameter("realname").trim());

String sex = Filter.escapeHTMLTags(request.getParameter("sex").trim());

String sheng = Filter.escapeHTMLTags(request.getParameter("sheng").trim());

String city = Filter.escapeHTMLTags(request.getParameter("city").trim());

String bir = Filter.escapeHTMLTags(request.getParameter("bir").trim());

String telphone = Filter.escapeHTMLTags(request.getParameter("telphone").trim());

String email = Filter.escapeHTMLTags(request.getParameter("email").trim());

String question = Filter.escapeHTMLTags(request.getParameter("question").trim());

String answer = Filter.escapeHTMLTags(request.getParameter("answer").trim());

String address = Filter.escapeHTMLTags(request.getParameter("address").trim());

int flag = memberBean.uppersonReg(member, realname, sex, bir, sheng, city, telphone, email, question, answer,address);

if(flag == Constant.SUCCESS){

request.setAttribute("message", "操作成功!");

request.getRequestDispatcher("member/info/info.jsp").forward(request, response);

}

else{

request.setAttribute("message", "系统维护中,请稍后再试!");

request.getRequestDispatcher("member/info/info.jsp").forward(request, response);

}

}

}

5.2.5购物车信息管理模块

当会员点击某个商品后的“我要购买"的购物车时,就进入了该会员的购物车。在购物车里,列出了该会员所购买的全部商品,每个商品都由一条购物项来描述,其中包括商品的ID,价格和购买数量等,在订单下方会显示购买的所有商品的总价格。会员可以修改购买的数量,也可以删除已购买的商品。会员如果最终确认所购买的全部商品,就可以点击“确认订单"按钮进入订单页面。操作界面如图所示。

图5.8  购物车

购物车模块的设计,在本系统的中将会员加入购物车的商品存储到数据库中,在HzpAction类中接收前端页面传过来的数据,然后调用HzpBean类中的add方法,将数据存储到数据库,在此需要注意生成订单时需要清空购物车中的数据。

部分核心代码代码如下:

if(method.equals("addprep")){

String sid=request.getParameter("sid").trim();

String num=request.getParameter("num").trim();

String member=(String)session.getAttribute("member");

int flag = tb.addPrep(sid, Integer.parseInt(num), member);

if(flag == Constant.SUCCESS){

request.setAttribute("message", "操作成功!");

request.getRequestDispatcher("index.jsp").forward(request, response);

}

else{

request.setAttribute("message", "系统维护中,请稍后再试!");

request.getRequestDispatcher("index.jsp").forward(request, response);

}

}

5.2.6订单模块

图5.9  订单图

当用会员在购物车在线支付后,订单会自动生成在未发货订单中同时清空购物车。等待卖家发货,卖家发货之后,会员可以在已发货订单中查看订单信息。根据会员购物车中的信息,以及会员所选择的送货方式和付款方式,连同会员对应的个人信息生成订单,以便于后续工作的处理。在该模块中,会员也可以随时查询自己的订单,并对订单进行取消等处理操作。

部分核心代码如下:

public List getPost(String member,String flag){

String sql = "select * from post where member='"+member+"' and flag='"+flag+"' order by id desc";

DBO dbo = new DBO();

list = new ArrayList();

dbo.open();

try{

rs = dbo.executeQuery(sql);

while(rs.next()){

List list2=new ArrayList();

list2.add(rs.getString(1));

list2.add(rs.getString(2));

list2.add(rs.getString(3));

list2.add(rs.getString(4));

list2.add(rs.getString(5));

list2.add(rs.getString(6));

list.add(list2);

}

return list;

}catch(Exception e){

e.printStackTrace();

return list;

}finally{

dbo.close();

}

}

5.3  后台管理模块

后台管理功能模块,下面以商品信息管理中的添加商品信息为例

图5.10  后台管理

商品添加功能主要用于添加新商品到数据库,添加到数据库的商品信息将被现实到电子商城的前台页面中。新添加的商品信息需要填写所属分类、商品名称、图片文件、定价等商品信息。另外如果在添加商品时,指定该商品是新品和特价商品,那么这个新添加的商品将现实到特价商品页面和新品上架页面中。

部分核心代码如下:

if(method.equals("addlvyou")){//添加商品信息

Stringtitle=Filter.escapeHTMLTags(mySmartUpload.getRequest().getParameter("title").trim());

Stringtype=Filter.escapeHTMLTags(mySmartUpload.getRequest().getParameter("type").trim());

Stringco=Filter.escapeHTMLTags(mySmartUpload.getRequest().getParameter("co").trim());

Stringtime=Filter.escapeHTMLTags(mySmartUpload.getRequest().getParameter("time").trim());

Stringvipprice=Filter.escapeHTMLTags(mySmartUpload.getRequest().getParameter("vipprice").trim());

Stringprice=Filter.escapeHTMLTags(mySmartUpload.getRequest().getParameter("price").trim());

String content = mySmartUpload.getRequest().getParameter("infoContent");

String num = mySmartUpload.getRequest().getParameter("num");

String sl = mySmartUpload.getRequest().getParameter("sl");

String flag11 = mySmartUpload.getRequest().getParameter("flag");

if(content.length()>8000){

request.setAttribute("message", "对不起,内容不能超过8000个字符!");

request.setAttribute("method", method);

request.getRequestDispatcher(sysdir+"/hzp/add.jsp").forward(request, response);

}

else{

SmartFile file = mySmartUpload.getFiles().getFile(0);

String fileExt=file.getFileExt();             

String path="/upload_file/news";

count = mySmartUpload.save(path);

if(file.getFilePathName().trim().equals("")){//如果无缩略图

int flag = newsBean.addNews(title, "无",content, username2, ifhide);

if(flag == Constant.SUCCESS){

request.setAttribute("message", "增加新闻成功!");

request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response);

}

else{

request.setAttribute("message", "系统维护中,请稍后再试!");

request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response);

}

}

5.4  数据库连接的实现

系统凡是需要使用连接数据库的方法时,均调用位于com.util包下的DBO.java这个类。设计封装与数据库的连接的管理类的好处在于其他类如果要使用数据库,直接使用封装与数据库的连接的管理类,由封装与数据库的连接的管理类调用其中的相关方法即可,非常方便;大大降低了开发的复杂性,增强了系统的灵活性,不但减少了重复代码的劳动而且降低了系统的维护的成本及复杂性,例如如果以后需要修改数据库的会员名及密码只需修改封装与数据库的连接的管理类即可,其他类无需做任何改动,充分体现了松耦合的设计特点,该特点也是本系统设计的一大特色,贯穿了整个系统的设计过程,在本论文的其他部分还会提及该特点。实现代码如下所示:

public void open()

{

try

{

Class.forName("com.mysql.jdbc.Driver");

conn=DriverManager.getConnection("jdbc:mysql://localhost/tgwz","root","root");

stmt=conn.createStatement();

System.out.println("打开数据库连接");

}

catch (Exception ex)

{

System.err.println("打开数据库时出错: " + ex.getMessage());

}

}

以下省略。

5.5  数据验证功能实现

几乎所有和会员交互的应用都需要数据验证,基于系统的页面刷新速度考虑,本系统采用了两种页面验证方式,分别是客户端脚本验证和服务器端验证。选择他们的理由是客户端验证方式方便、快捷,而服务器端验证可以很好的和系统进行交互。

5.5.1客户端验证

客户端验证主要使用JavaScript技术,包括对会员输入的数据格式、长度、ASCI I码范围等方面进行的验证。此脚本可以检查会员在点击“注册”按钮前是否在文本框内输入了符合系统要求的数据,如果不符合要求,则在提交表单时将会弹出警告提示,从而保证了输入数据的正确性。在本系统中还有很多环节都用到了这种验证机制,它们的原理大都相同。检查会员注册过程中输入是否符合要求并给出相应的提示的部分

JavaScript代码如下:

function checkREG() {

if (document.regbb.username.value.replace(/\s+$|^\s+/g,"").length<=0) {

alert("\请输入您的会员名!");

document.regbb.username.focus();

return false;

}

if(document.regbb.username.value.replace(/\s+$|^\s+/g,"").length<4||document.regbb.username.value.replace(/\s+$|^\s+/g,"").length>10) {

alert("\会员名长度在4-10位之间!");

document.regbb.username.focus();

return false;

}

if (document.regbb.password.value.replace(/\s+$|^\s+/g,"").length<=0) {

alert("\请输入您的密码!");

document.regbb.password.focus();

return false;

}

if(document.regbb.password.value.replace(/\s+$|^\s+/g,"").length<6||document.regbb.password.value.replace(/\s+$|^\s+/g,"").length>16) {

alert("\密码长度在6-16位之间!");

document.regbb.password.focus();

return false;

}

if (document.regbb.reg_pwd2.value == "") {

alert("\请再次输入您的密码!");

document.regbb.reg_pwd2.focus();

return false;

}

if (document.regbb.password.value != document.regbb.reg_pwd2.value) {

alert("\您两次输入的密码不同!");

document.regbb.reg_pwd2.focus();

return false;

}

regbb.method.value="reg2";

    regbb.submit();

}

5.5.2服务器端验证

服务器端验证运用在了两个方面,一是在会员登录时用在与系统数据库进行交互。首先login.jsp通过request的getAttribute("message")方法取得会员输入的会员名与密码信息,在通过数据库连接查看数据库中是否存在与会员输入信息一致的会员信息,如果有的话则转到登陆成功的网站首页页面。如果没有的话,说明会员输入的信息有误,提示会员输入的相关信息错误,请重新输入。二是用在系统中对管理员登录状态的检查或者会员身份的验证(是否为会员),此时使用session做为验证的基准,在网站内利用JSP的内置对象“session”来实现。Session对象是JSP中的一个重要对象,也是使用JSP开发的一大特色,所以理解并掌握Session技术是非常重要的。从一个客户打开浏览器连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话(session)。当一个客户访问一个服务器时,可能会在几个页面之间反复链接、刷新、提交等,服务器应当通过某种方法知道这是同一个客户,这就需要session对象。当一个客户首次访问服务器上的一个jsp页面时,jsp引擎产生一个session对象。

 (1)管理员登录的检查

如果管理员没有注册,则不能进入后台进行相关的管理,如进入会员管理、产品管理、类别管理和订单管理等后台页面。在具体实现时,首先需要实现user.jsp,代码如下:

String username=(String)session.getAttribute("user");

if(username==null){

response.sendRedirect(path+"/error.jsp");

}

else{

List list=(List)session.getAttribute("list");

List list2=lb.getAllManager();

 (2)会员身份的验证有些功能只有会员才可以使用购物车,在实现相关权限的操作时加入下面的代码:

String member=(String)session.getAttribute("member");

if(member==null){response.sendRedirect("login.jsp");}

5.6  JSP中访问JavaBean的方法

JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。会员可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。会员可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。在JSP中访问JavaBean有两种形式:

(1)直接通过page指令导入。

(2)在JSP中对JavaBean的使用也有支持:

<jsp:useBean                 //表示在JSP页面中使用JavaBean

id="sn"                     //对象的名字

class="com.bean.SystemBean"  //对象所属的包.类名称, 调用的javabean的路径

scope="page"               //四种作用范围,具有生命时间的变量,指其存在范围

在使用<jsp:useBean>的时候,实际上默认调用的是其内部的无参构造方法。

6  网站推广

6.1  网站关键词

网站关键词就是一个网站给首页设定的以便会员通过搜索引擎能搜到本网站的词汇,网站关键词代表了网站的市场定位。网站的关键词至关重要,如果选择的关键词不当,对网站来说就是灾难性的后果。

6.1.1选择网站的关键字方法和注意事项 

关键词的研究和选择是搜索引擎营销活动中至关重要的一步。众所周知,大多数人在网上寻找信息都是从搜索引擎开始。我们都是通过输入关键字段来寻找想要的信息。目前,大多数人搜索时使用平均2-5个关键词。因此,选择恰当的关键词对于优化网页内容变得越来越重要。因为搜索引擎主要提供与关键词有关的内容,比起那些没有用适当的关键词来描述其产品或服务的网站,网页上如果有相关的关键词,该网站的排名会更靠前。

(1)在客户的角度考虑

潜在客户在搜索你的产品时将使用什么关键词?这可以从众多资源中获得反馈,包括从你的客户、供应商、品牌经理和销售人员那里获知其想法;当然最好的办法是从搜索引擎中获得。

(2)将关键词扩展成一系列短语

选择好一系列短语之后,对这些关键词组进行检测,该软件的功能是查看你的关键词在其它网页中的使用频率,以及在过去24小时内各大搜索引擎上有多少人在搜索时使用过这些关键词。最好的关键词是那些没有被滥用而又很流行的词。注意只使用能够描述你的产品的关键词。

(3)进行多重排列组合

改变短语中的词序以创建不同的词语组合。使用不常用的组合。组合成一个问句。包含同义词、替换词、比喻词和常见错拼词。包含所卖产品的商标名和品名。使用其它限定词来创建更多的两字组合,三字、四字组合。例如,如果你的关键词是“关键词”,你可能遇到象什么是关键词、热门关键词、如何选择关键词,什么叫关键词、关键词分析、关键词定义,关键词自动分析软件等等词组。如果关键词是软件解决方案,不妨试一试流量分析软件解决方案,关键词流量分析报告,关键词流量报告工具,B2B软件解决方案,网站软件解决方案等等。需要注意的是,关键词组不一定要有意义,虽然在你进行组合时,它们必须具备相关含义。

(4)使用专业概念词汇以限定来访者

明确你的关键词组的概念,如网站软件。要做到够明确专业以使词组不至于太宽泛,如网站软件解决方案,网站安全解决方案, B2B网站软件等等。

(5)如果是品牌企业,则用你的公司名

如果你是知名品牌,就在关键词中使用你的公司名。像RadioShack这样的网站应该有这样的关键词组:RadioShack电脑、RadioShack元件、RadioShack电话,等等。如果RadioShack要招募员工,可使用这些关键词:为RadioShack工作、RadioShack全国工作,RadioShack管理职位,以招聘具有专业水准的雇员。但如果你的名字是杰克.琼斯地产,没什么人会在搜索框中输入那个名字,除非人家知道你。因此,如果你并非品牌,关键词中包含公司名就不值一试。

(6)使用地理位置

如果你的位置很关键,则把它加入你的关键词组。例如,北大+团购;北大+情侣,这里,北大+个团购+情侣就是一个很有用的关键词。

(7)回顾竞争者使用的关键词

查寻竞争者的关键词可让你想到一些你可能漏掉的词组。但不要照抄任何人的关键词,因为你并不清楚他们如何要使用这些关键词——你得自己想关键词。寻找别人的关键词只是对你已经选好的关键词进行补充。

(8)毋用意义太泛的词或短语

要用修饰词将普通词汇和短语意义变得更为精确。如提供保险服务的站点可以使用健康保险报价、自动保险报价、人寿保险报价等关键词组。为了预先限定来访者,关键词和短语应明确你的利基。如果你是从事娱乐业,则用娱乐新闻、影片追踪、名星故事、娱乐中心等等。明确利基可吸引你需要的访问者。不管你销售什么,这一点都相当重要。一群小小的目标受众比一大群以为你在卖其它什么东西的来访者更有可能转化成真正的客户。

(9)毋用单一词汇

多词短语比单一词汇更有用。搜索引擎很难就单一词汇搜索相关结果,因为这样的搜索条件会产生太多结果,而搜索者是不会去浏览数百个结果页面的。一个搜索拍卖网站网站软件解决方案的会员不会只搜索软件。

(10)使用自己的名字而不是他人的商标名

在你的关键词中避免使用竞争者的商标,否则可能被起诉。一些公司会给予使用许可。一个想使用“Tide”的网站网站要联系Procter和 Gamble以征得许可。许可的授予建立在一种潜在的从属联系上——一个制造商很可能把名称使用权许可给一家搞销售的网站。但是,利用另一家公司的商标或产品名称以从中牟利是不允许的。

6.1.2本网站提供的关键词

校园团购网,情侣团购,领先校园团购市场,零风险团购、高品质超低折扣。校园团购网计划覆盖全国各大院校及城市,推出多款超低折扣生活商品网站酒店等商品,以及当地特色餐厅、电影院等精品商家!iPhone4S、伦敦奥运会门票抽奖活动等你来! 

6.2  网站推广

随着团购行业的飞速发展,如何能让自己的网站脱颖而出,让更多的客户知道其网址,了解其服务,从而提高网站知名度,获得更高的网站访问量,并能更好地获得新客户,留住老客户,赢得更多的商业机会,这就需要制定并应用适当的网站推广策略。推广方式很多,比较常用的包括搜索引擎推广、邮件推广、广告推广、信息发布类推广、IM(即时通讯工具)推广、病毒式营销推广、链接类推广等。

6.2.1搜索引擎推广

据最新统计报告显示,国内会员最主要得知新网站的途径中,搜索引擎占到70%以上,高居其他途径之首。因此,加注搜索引擎已成为校园团购网推广的重要方式。通过在搜索引擎上进行有效的推广,网站的网站就有更多的机会被广大的潜在会员访问。搜索引擎的推广主要包括搜索引擎的登入、搜索引擎的优化、竞价排名。

(1)搜索引擎的登入

大部分的搜索引擎都提供了免费的登入方式,如百度、搜狐等。只要我们找到免费的登录入口,并对网站信息进行登录就能使其免费收录该网站。互联网中有一些网站收录了免费搜索引擎的登录入口,并通过列表一次性提供给会员使用。

(2)搜索引擎优化

搜索引擎优化(Search Enging Optimizating,简称SEO),是指循序搜索引擎的搜索原理,对网站结构、网页文字语言和站点间互动外交策略等进行合理规划部署,以改善网在搜索引擎的搜索表现,进而增加客户发现并访问网的可能性。也就是说,SEO是一种让网在百度、谷歌、雅虎等所搜引擎中获得较好的自然排名,从而赢得更多潜在客户。怎样进行所搜引擎优化:

①对网站的目录和URL优化。目录结构越简单越容易被搜索引擎访问,所以在设置网目录的时候最好不要超过3层。对中小型网来说从首页出发,4次点击之内就能够达到一个网页。所以对于一些大型的网,如果超过了4层页面的时候,一定要做到网站的首页或者其他网站的页面能够直达该页面,同时该页面也一定要有众多的关键字,质量高,最好拥有大量的外部链接。

②对网站的框架页面优化。所谓的框架是指网页中不可移动的部分,具体表现在有一部分不动其他部分可以上下左右移动,即帧结构,利用<FRAME>将一个网页分为若干个窗口,这样可以在一个页面上展示几个不同内容的网页。优化的措施是最好不要使用框架机构(帧结构)的网页设计,最好采用表格定位的网页设计。

③最好不要使用大图片,更不要采用纯图像制作的网页。要对图片增加搜索引擎可见的文本描述,即给图像增))HALT标签;同时在确保图片精确的情况下尽量压缩图片。每个图像<IMG>标签中都有ALT属性,搜索引擎会读取该属性以了解图像的信息。因此,最好在所有插图的ALT属性中都有文字描述,并带上该页的关键词;同时也可以在图片上方或下方加上包含关键词的描述文本;在图片的下方或旁边增加如“更多"链接,包含关键词;通过文本链接连接该图片页面;在代码中增加一个包含关键词段的Heading标题标签,然后在图片下方增加文字描述。

④如果所用的排版方式是表格的方式,页面显示的时候往往是先加载表格,然后才显示表格中的内容。如果表格中的内容特别多的时候显示速度往往会非常慢,优化的方法是在需要分行下载处加上<tbody>和<tbody>,减少表格的嵌套次数。

⑤对包含过多的特殊效果、图片和动画的处理。如果网过多的包含了特殊效果、图片和动画等,会导致网页打开速度减慢,这时最好把Flash、JavaScript提取出来放到Js文件里面,然后用调用的方式引入,最好用DIV+CSS重构页面。

⑥为了对站内的链接进行优化。最好建立站点地图,同时把网站地图的链接放在首页上。而且尽量使用文字导航,网的导航系统最好使用文字链接,不要用图片或者JS下拉菜单等。

⑦搜索引擎对于静态页面的搜索效果比较好。网站的链接地址中带有“?”、“&”以及其他类似符号,都不利于搜索引擎的“蜘蛛"程序抓取。如果确实要使用动态网页的话,相应参数应控制在3个以下。“静动结合”,既发挥动态网页网维护的方便,又利用静态网页容易被搜索引擎检索的特点。一方面,对于一些重要的、而且内容相对固定的网页制作为静态网页,如包含有丰富关键词的网介绍、会员帮助、网地图等;另一方面,可以将动态实现的网页通过一定的技术,在发布出来之后转化为静态网页,这种方式尤其适合于发布内容无需不断更新的网页。

⑧Flash网页内嵌的信息大部分不能被搜索引擎访问,所以关键的按钮链接不要设计在Flash文件中,而是以文本的形式呈现。也可以做一个辅助的HTML版本,保留原有Flash版本的同时,设计一个HTML格式的版本,或者不要将网页设计成Flash页面,而是将Flash内嵌在HTML网页中。

⑨不要在图片中设置网页地址链接,也不要在网页导航中使用特效链接,这些特效链接通常fl了JavaScript实现,不利于搜索引擎的搜索。

⑩网页标题中的关键词在搜索引擎排名时具有更高的权重。我们最好把网站的产品放在标题中。因为,当会员用某种商品名称检索时,他所关心的并不是厂商的名字,而是产品本身,因此在设计网首页标题时,不一定要急着告诉访问者你的公司叫什么名字,而要首先告诉会员,你提供什么产品和服务。除了网页标题中应含有有效的关键词之外,网页内容、图片的alt属性、META标签等均可设置关键词,但重要程序有所不同。网页标题中的关键词权重最高,其次是网页主体内容,alt属性、META标签的重要程序则视具体搜索引擎而定。

(3)竞价排名

搜索引擎通过它独有的技术优势帮助人们用最方便的手段在海量的信息中迅速找到他最需要的结果。竞价排名发展至今已成为搜索行业商业模式的核心模块,对搜索行业的发展可谓有意义重大。根据国外专家会员网页浏览行为研究的网页浏览注意力“F现象”,也描述为“金三角’’现象,会员更倾向于在网页顶部阅读长句,搜索结果中排名靠前的内容更容易受到会员的关注和点击。搜索引擎关键词排名优化,是需要时间的,不是客户简单付费就可以提升的,不少客户看重短期效益,即短期是否能提高排名,提高到要求的排名范围。

选择适当的关键词是竞价排名推广的第一项工作,要从不同角度、选用多个与自身业务相关的关键词,关键词要包含网站的所有业务范围,又必须突出核心业务和核心竞争力;针对有实际需求的客户,关键词越专业、越具体、越精准越好;针对一般性了解信息、知识、无实际需求的公众,选词越宽泛、越概括,覆盖效果越好;选择关键词的数量要根据选定的细分市场确定。通常情况下,匹配程度越高、选择被搜索次数越多,竞争越小的关键词效果越好。选择关键词还要充分考虑目标客户的需要和行为动机。在买方市场的背景下,产品发展同趋同质化,消费者首先想到的是产品的性价比和偏好,而非品牌,客户更关心的是自己的需要。太偏、太专业、太强调自身品牌的关键词严重影响客户查询。

6.2.2许可E—ma iI推广

许可E-mail是会员在事先许可的前提下,通过邮件的方式向目标会员传递有价值信息。根据客户的业务情况,进行目标受众数据的筛选,设计策划有针对性的E-mail方案,达到推广品牌、产品或服务目的。在邮件推广策略中,如何获得e-mail地址是关键,因此在免费策略研究中以利用内部列表为主。

常用的免费获得e-mail的方法有以下几种:

(1)注册信息

利用会员服务、竞赛、优惠、促销等方式,想方设法让客户注册会员,加入网站内部列表;或者在BBS等的一些公众场所发布信息,吸引客户来注册等。

(2)利用现有的内部会员发展

通过各种优惠,使现有的注册会员为网站提供其身边朋友的e.mail。如:若会员能提供10个朋友的e-mail能获得礼品或优惠券的抽奖机会。

(3)公共场合获取e-mail资料

到一些可以查看个人资料的网上公众场合查看目标消费群的e.mail资料,记录,加入邮件列表。例女Ichinaren等一些同学录网就可以看到个人的e.mail。

(4)利用软件或工具获取资料

利用一些可以搜索到个人资料的软件或工具搜索,如利用QQ,可在QQ查找功能中搜索“广州年龄20~25性别不限"(目标群信息)等,逐个查找目标消费

群的个人资料中的e-mail地址,加入邮件列表。这方法的优点是不用花钱,而且查找特定地区和年龄段的目标消费群时较为准确,但消耗时间较多,查找工作重复繁琐。

(5)传统方式获取

利用一些传统方式获取潜在顾客的e-mail,例如问卷调查中,提到若他们希望获得某种服务就请填写e-mail。以上第2、3、4种获取e-mail的方式都不属于许可营销,但若只是发送一次邮件,并说明若会员希望继续收到这类邮件就请注册,正式加入,否则请按退出列表的按钮。当会员退出列表后,网将不再向其发出邮件。这样即使第一次发邮件是没有经过会员许可,但若仅发一次,相信也不会引起会员的不满,所以也不妨一试。获取e-mail后,接下来的工作就是向他们发送有价值的邮件了,如新闻信息、产品信息、网站行业动态、优惠信息等,当然,要在邮件里附上网网址、标志等,以达到宣传网的目的。

6.2.3链接类推广

(1)交换链接推广

网站交换链接,也称为友情链接、互惠链接、互换链接等,是具有一定资源互补优势的网站之间的简单合作形式,即分别在自己的网站上放置对方网站的LOGO或网站名称,并设置对方网站的超级链接,使得会员可以从合作网站中发现自己的网站,达到互相推广的目的。

(2)导航网站推广

导航网站是集合较多网址,并按照一定条件进行分类的一种网站。网址导航方便网友们快速找到自己需要的网站,如果网站能被这类网站所收录,无疑将在很大程度上增加其访问量。这种推广方式的优点是省时省力,目标消费群准确,但这种推广策略是被动的推广,其效果主要依赖于消费群的主动性。

(3)行业网站推广

这种推广策略就是登录行业的网站,提供网站链接和公司信息,供消费者有目的地查找及登录。它的优缺点与登录网址导航类似,优点是目标客户群突出,针对性强,缺点是属于被动式推广。

6.2.4 IM(即时通讯工具)推广策略

IM即时通讯软件几乎相当于网民的身份证,中国是世界最大的IM软件市场,具有数量庞大的IM会员。目前中国活跃的IM软件账号超过7亿个。即时通讯软件推广时,应用其群功能的推广效果最佳。如应用腾讯QQ群进行推广时,首先要查找目标客户人群,自建或选择加入一些目标会员聚集的群,例如经营母婴用品的网站,可以加入婴儿妈妈的交流群,使推广更有针对性;其次,应当选择人数多活跃度高的群进行推广;另外要与群友建立良好的关系,加强沟通与交流,只有在此基础上进行网站的推广才可以收到较好的效果。

6.2.5信息发布类推广

信息发布推广策略就是将有关的网推广信息发布在其他潜在会员可能访问的网上,利用会员在这些网获取信息的机会实现网推广的目的。适用于这些信息发布的网包括在线黄页、微博、供求信息、生活门户网等。不过,需要及时更新自己网的信息,以充分发挥网的功能。

(1)应用BBS推广。应用BBS进行推广时,首先要选择潜在客户访问量大或者人气超高的BBS。由于论坛中不可以发布广告,在论坛中进行网站推广需要具有一定的“软文营销”观念,就是不能机械地介绍网站的产品,服务信息等,如果这样管理员会毫不留情的删掉你的帖子,情节严重甚至会封杀你的账号。BBS推广中可以采用自问自答的方式,多注册几个账号,问答过程中要讲求策略,要让人感觉自然,不生硬;也可以应用团队的力量,反复对当前的帖子进行评论及回复,提高帖子的点击率,把当前的帖子顶成热帖,甚至置顶,这样会进一步提高网站推广的效果。我们还可以把在论坛的签名签上网站的网址及名称,这也是一种变相宣传网站的方式。论坛推广时,要注重每一个细节,充分把握每一个机会达到推广的目的。

(2)应用博客推广。博客推广的通常做法是在博客中撰写相关专业的文章、介绍相关产品及服务的信息等,在文章中非常自然地为自己的网站及产品进行宣传。这种推广方式很容易被人接受,宣传的效果也非常不错。在博客应用的过程中,我们通常可以看到来访者的网名,这时我们可以回访来访者,认真的对待来访者的每一个留言,在虚拟的空间中建立起良好的人际关系,同时我们还可以广泛地去访问其他在线的网友。通过这样的交互过程,博客的访问量会大大增加,从而提高网站推广的效果。

(3)贴吧推广。贴吧是一种基于关键字的网上主题交流社区。它与搜索引擎紧密集合,能够准确的把握会员的需求。贴吧的推广技巧与在BBS中推广类似。

(4)问答类推广。问答类的推广是基于百度的“知道”及腾讯的“问问”等提问的推广策略。问答过程应根据网站的产品及服务的内容设计,提问者可直接将网站地址附在提问中,或采用自问自答的方式。为了吸引客户来完成问题,可以应用相应的奖励,比如百度中的财富值。当客户正确回答你所提出的问题时,客户就可以获得一定的奖励。

(5)百度百科推广。百度的百科是一个创造性的,充分调动互联网所有会员的力量,汇聚其头脑智慧,积极进行交流和分享,同时实现与搜索引擎的完美结合,从不同的层次上满足会员对信息的需求。将网站的名称注入百度百科,并编辑网站的基本信息,其中包含网站的网站地址,不但可以提高网站的知名度,还可以提升网站网站的访问量。

6.2.6特色活动推广

新站推广一定要有活动支持,一定要有话题支持。好的网站活动才能引起人们的关注,好的话题才能引起人们的关注。目的不仅是要让人们知道校园团购,更重要的是让人们去传递这一信息,让人们对校园团购产生兴趣,能够粘住网友。而想要让网友关注,网友支持,产生兴趣,就要有好的活动支持。网站同步上线的时候,一定要出台精彩活动。例如:注册有奖、购物有奖、推荐有奖、天天有奖、伦敦奥运会门票每天送、购物献爱心。

大学生网购商品时,价格因素占据着非常重要的地位,很大程度上影响其购买决策。但作为文化素质较高的群体,在校园团购网上表现得更加理智,趋向于购买性价比高的商品。而团购以“限时折扣促销”为卖点,且走的是“精品路线”,正好符合了该消费群体的要求。我们从“喜欢商家的哪种促销方式”指标上看,学生选择“打折促销”的比例高达88%。我们可以得出结论:作为一种典型的打折促销形式,针对校园市场的团购将倍受欢迎。

6.2.7广告推广

广告是一种收费的推广策略,它的市场发展速度惊人。成为传统四大媒体(电视、广播、报纸、杂志)之后的第五大媒体。广告推广时需要应用以下策略:

(1)选择合适的网站

根据自己的需要选择合适的网站进行推广,如果想提高网站的知名度、提升网站形象,就需要花费大笔广告费在知名的媒体网站上进行推广。如果单单想获得更多的访问流量,建议选择网站知名度一般,但是访问流量很大的网站进行推广,这类网站收费相对较低,无疑是一种低投入高回报的推广。

(2)广告的投放需要具有针对性

校园团购网不仅应保有相对较高的网站访问量,更需要有高质量的访问客户。所以在进行广告投放前要对目标客户进行分析,分析其上网习惯,选择目标客户经常访问的网站进行广告投入,做到有的放矢。

6.2.8病毒式营销推广

病毒式营销推广并非是靠传播病毒来推广网站,而是利用会员与会员之间的联系进行信息的主动传播,让信息像病毒一样迅速扩散,从而达到网站推广的目的。病毒性营销推广是一种营销思想和策略,在应用上没有固定模式。病毒性营销推广可以采用免费的方式。例如为会员提供免费的资源或服务的同时附加上一定的推广信息,常用免费内容包括书、软件、FLASH作品、视频、贺卡、邮箱、即时聊天工具等。在会员应用服务获得资源的同时了解网站信息。病毒性营销推广还可以采用推荐返利的形式,让推荐者真正得到实惠。目前这种形式非常流行,很多B2C网站及团购网站都采用返利、回馈这种形式,返利的推广形式较免费的推广形式更具吸引力。病毒性营销推广方式往往可以以较低的代价取得比较显著的效果,适合大中型网站来使用。

随着技术及信息技术的不断发展,网站的推广策略还会层出不穷。但无论是何种推广策略都是要从网站的自身出发,充分分析网站的能力及经营要素,合理运用推广手段,只有这样才能使网站校园团购网的推广发挥到极致,达到最佳的推广效果。

结论

经过近半年的不断学习和设计开发,加上老师同学的帮助,终于完成了我的毕业设计题目“团购网站的建设”的开发,在此期间,我根据题目要求,查阅了大量关于网上销售的相关资料,切实地按照软件工程的步骤,从需求分析,概要设计,详细设计,数据库设计,再到编码,调试运行,测试等步骤。现已顺利完成各个步骤的开发工作,基本达到预期设计的要求。

通过本次毕业设计,使我无论在理论上还是在实践上都有一个较大幅度的提高,尤其是对具体业务的抽象能力和对各种技术及框架的综合运用能力,同时也培养了自己独立分析问题、解决问题以及与他人沟通交流的能力。

在整个设计过程中,我逐步地对SSH框架有了更加深刻的认识,也对其中的JAVA语言有了深刻的理解。JAVA语言是完全面向对象的语言。而且使用起来极为方便,界面友好,编译简单,只要编译一次以后在运行时就不需要再次编译了,节省了运行的时间,提高了响应速度。其次对软件开发流程有了进一步的了解。本次设计运用了大量软件工程的思想和相关的数据库知识,对大学所学的知识得以巩固和运用。本次项目虽小,我却悟出了个简单的道理:学习东西就像软件开发一样,拿到一本书之后看看,提出自己未知的问题,进而分析该问题,读懂书学会去解决。

致谢

四年的艰苦跋涉,近半年的精心准备,毕业论文终于到了划句号的时候,心头照例该如释重负,但编写过程中常常出现的辗转反侧和力不从心之感却挥之不去。论文写作的过程并不轻松,工作的压力时时袭扰,知识的积累尚欠火候,于是,我只能一次次埋头于图书馆中,一次次在深夜奋笔疾书。第一次花费如此长的时间和如此多的精力,完成一篇具有一定学术价值的论文,其中的艰辛与困难难以诉说,但曲终幕落后留下的滋味,值得我一生慢慢品尝。

我要感谢我的指导教师王小明老师。王老师虽身负教学、科研重任,仍抽出时间,不时召集我和同门以督责课业,耳提面命,殷殷之情尽在谆谆教诲中。从初稿到定稿,王老师不厌其烦,一审再审,大到篇章布局的偏颇,小到语句格式的瑕疵,都一一予以指出。同时,我要感谢所有给我上过课老师,是他们传授给我方方面面的知识,拓宽了我的知识面,培养了我的功底,对论文的完成不无裨益。我还要感谢学院的各位工作人员,他们细致的工作使我和同学们的学习和生活井然有序。

谨向我的父母和家人表示诚挚的谢意。他们是我生命中永远的依靠和支持,他们无微不至的关怀,是我前进的动力;他们的殷殷希望,激发我不断前行。没有他们就没有我,我的点滴成就都来自他们。

本论文的完成远非终点,文中的不足和浅显之处则是我新的征程上一个个新的起点。最后感谢我的母校对我的教育,这四年学到的东西很多。谢谢!

参考文献

[1]  郭克华. 《Java Web程序设计》[M] 北京:清华大学出版社,2011年.

[2]  唐友国,湛洪波. 《JSP网站开发详解》[M]. 北京:工业出版社,2008年.

[3]  李钟尉,周小彤,陈丹丹. 《Java从入门到精通》[M]. 北京:清华大学出版社,2010年.

[4]  石志国. 《JSP开发详解》[M]. 北京: 工业出版社,2007.

[5]  唐汉明. 《深入浅出MySQL数据库开发》[M]. 北京:人民邮电出版社,2008年.

[6]  张洪伟. 《Tomcat Web开发及整合应用》[M]. 北京: 清华大学出版社,2006年.

[7] (美)沙赫(Schach.S.R.)著,陈宗斌 译.《面向对象分析与设计导论——使用UML和统一过程(翻译版)》[M]. 北京:高等教育出版社,2006年.

[8]  薛华成. 《管理信息系统(第五版)》[M]. 北京:清华大学出版社,2007年.

[9]  赵文涛. 《数据库系统原理》[M]. 徐州:中国矿业大学出版社, 2006年.

[10]  张永宝. 《Dreamweaver 8中文版入门与提高》[M]. 北京:清华大学出版社,2007年.    

[11]  杨贵, 杨兴. 《21天学通JavaScript》[M]. 北京: 工业出版社,2009年.  

[12]  王明辉,王超. 《Struts+Hibernate开发Web应用》[M]. 北京: 人民邮电出版社,2007年.     

[13]  王国辉,王春斌. 《Java Web编程宝典》[M]. 北京: 人民邮电出版社,2011年.

[14]  宋林林. 网站网站的推广策略解析[J]. 辽宁经济职业技术学院学报,2011,(02):32-33.

[15]  王乐鹏,谭峥嵘,孙波. 校园团购市场的需求分析[J]. 网站,2011,(03):86-87.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

等天晴i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值