标题：LegendShop
概述
LegendShop 多用户多商家多语言多风格的大型Java商城系统
LegendShop同时支持单用户的B2C模式和多用户的C2C模式，他能带给用户的不只是一个网店而已，是一个独立配置，风格清爽，完全控制的商城，例如可以自定义产品分类，产品属性，系统广告，友情链接等，可以参考淘宝商城模式，目前是功能最完善的JAVA商城。LegendShop独创性引入加盟店模式，使得商家与商家不再是一个独立的个体，用户在浏览完一个商城之后可以方便的导航到另外一个加盟商城，谓之类似围脖风格的微商系统。LegendShop是基于JAVA编程语言开发的开源电子商务软件，采用Struts、Hibernate、Spring/Spring MVC等开源技术和自主框架技术开发。
1、LegendShop采用HTML伪静态生成技术和多级缓存技术，使得系统的响应速度和负载能力得到极大的提升。
2、LegendShop是采用MVC架构开发的电子商务平台，使得用户在系统风格修改方面也能得心应手。
3、采用AJAX、Jquery等技术，在系统的易用性和实用性方面都得到了空前的突破，真正达到了只要会打字就能够建设专业水准的电子商务平台。
4、支持多操作系统（如： Windows、Linux、Solaris等），有利于网店系统的部署与迁移。
5、支持SEO优化，帮助您顺利进行搜索引擎营销，以达到提升产品销量和品牌形象的目的。
6、LegendShop通过与支付宝等多家网银支付公司合作为用户实现最佳无接缝支付功能。
7、支持产品的动态属性动态参数，适合各种商品销售。
8、支持动态属性，能在运行是改变商城的运行模式。
9、支持国际化功能，支持多国语言，适合做外贸性生意。
10、支持全文搜索，用户可以查询所有的商城的商品信息。
11、支持多个地域协同销售，是个类似淘宝商城的微型商城系统。
产品功能
1.网站前台功能：
产品二级分类展示：一级分类－－二级分类－－产品列表－－详细介绍（名称，图片，市场价，会员价，是否推荐，功能介绍等）
产品搜索：关键字模糊搜索
定购产品：选择商品－－确认定购－－填写收货人信息－－选择付款方式－－订单号自动生成（限登录用户）
用户管理：修改资料 订单查看查看购物车（限登录用户）
网站新闻：按时间先后顺序排列
网站公告：首页左侧显示
友情链接：文字链接列表显示
2.网站后台功能：
商品管理：添加 删除 修改图片上传
订单管理：查看，删除，确认订单查看，删除已确认订单 查看，删除订单投诉
用户管理：查看修改用户资料，删除用户，设置用户等级(普通，VIP) 管理员添加删除
分类管理：添加，修改，删除一级分类，二级分类
信息管理：添加，修改，删除网站新闻添加，删除网站公告
常规设置：网站信息设置网站广告设置友情链接管理
核心技术
安全性，可靠性，稳定性
LegendShop采用了123done.Team长期项目实践中积累下来的一个轻量级开发平台JCF（Java Commond Framework，见另外一个PPT《JCF1.2-基于构件的开发》，包括一套完善的代码生成工具）和一套完整的基于单点登录的权限管理系统，JCF 兼顾复杂的EJB开发和灵活的轻量级POJO开发，JCF有完善的异常处理机制，适合做复杂的流程设计，对简单的逻辑更是游刃有余。LegendShop所有业务逻辑都搭建在其上，使平台质量非常有保证。
LegendShop 是典型的SSH（Struts/Spring/Hibernate）框架，对Spring和Hibernate的使用已经形成了一套规范，并形成了自己的代码生成规范。Struts是用Struts1.3版本，由于在使用过程中发现Struts并不是很简洁，因此Legend. Team在对比了Spring MVC和Struts 2.0的各自优劣势，将Struts1.3升级为采用Annotation的Spring 3.0 MVC，因此SSH框架化简为SH框架，Spring MVC无缝的融合到Spring中，使得系统更加简练和高效。
集中式图片管理和自动图片缩略图
在网购平台中，图片是最重要的资源，因此需要特 定保护起来。随着用户的增多和用户不断上传产品和广告图片，系统的图片会越来越多。一般的网上商城会将图片放在网站内部跟代码混在一起，这样系统每次升级的时候就需要对这些图片特殊处理一下。采用集中式的图片管理，带来了管理上的方便，也更容易为图片加入权限管理功能。
系统另外集成并扩展了Fckeditor，将Fckeditor的图片集中到图片服务器上统一管理，另外也可以通过Fckeditor进行增加和删除图片，不会在系统中留下多余的无用图片。
由于每个产品图片的大小都在几百K或者上M的，为了提高性能，LegendShop对产品图片进行缩小展示，直到点击产品详细页面的图片连接才会展示最终的完整的图片。
二级缓存机制，提高系统性能
一个系统的性能瓶颈一般在数据库上，如何提高系统的性能？就要减少跟数据库交互的次数。当系统有大量访问时，会对数据库产生大量的查询请求。由于对系统实 时性要求比较高，LegendShop采用Hibernate的二级缓存来减少对数据库的操作，采用Hibernate的默认实现Ehcache，可以配置每个实体缓存的个数和时间，这些值由所部署的机器的性能决定。在第一次访问的时候发现缓存中没有数据就会向数据库发起请求，拿到数据之后放在缓存中，在没有超时前都会直接从该缓存中返回数据，在并发量大的时候可以有效减少数据库系统的压力。根据不同业务实体的特性，一般设置不同的超时时间，一般是3-5分钟，在后台进行操作之后需要 等缓存时间过后才会生效。这样既保证了系统的实时性，也提高了系统的并发能力。
优秀的SEO能力
一般来讲，静态的资源更容易被baidu和google这些搜索引擎收录。搜索引擎无疑是当今最低成本而又非常有效的网站推广方式。LegendShop使用URLRewrite将动态连接静态化，使到我们的用户网站一经上线，就迅速被各大搜索引擎收录，并直接带来大量访问，大大提高了下单量。
多国语言多种风格支持
整个系统基于UTF8编码，采用Struts的国际化方法，目前LegendShop前端已经实现对中文和英文的支持。如果有扩展需要，只要增加对应的语言包即可实现该语言的支持。适合外贸等将生意做到国外去的行业。
由于LegendShop的用户是面向不同的行业，因此对风格上会提出不同的要求。系统采用css和js来控制这个LegendShop前端的页面展示，目前已经支持红，青，蓝三种风格，用户可以在店铺管理中定制某种风格或者轮流使用所有的风格，以给客户带来新鲜感。
系统构架
运行环境：（操作系统：Linux/FreeBSD、WEB服务器：Tomcat 6.0、JDK 1.6 、数据库：MySQL 5.0）
系统类型：B/S系统
操作系统：支持Linux、Unix、FreeBSD、Windows 2000/2003/XP等操作系统
数据库：支持MySQL、Oracle、SqlServer、Access等常见数据库
系统架构：MVC构架
主体框架：Spring、Struts、Hibernate
安全框架：SpringSecurity
缓存框架：Ehcache
模板框架：Freemarker
全文检索：lucene
中文分词：IKAnalyzer
页面框架：Jquery
LegendShop优势
LegendShop支持整套支付流程，有完善的产品管理，订单管理，支持支付宝等支付方式。化简了购物流程，使得支付更简单。 
LegendShop有完善的权限管理系统，其首要任务是要做地区性购物门户，可以设置不同的角色，来实现不同的运营需要。 
LegendShop支持多种风格，适合不同风格的公司使用，同时支持多种语言，默认支持中文和英文，是一个国际化的项目。 
LegendShop独创的产品动态属性和动态参数，使得LegendShop可以支持销售不同的产品类型。 
LegendShop独创的全文检索系统，采用Lucene的全文检索，支持类似Google和Baidu风格的搜索功能，适合大型商城使用。 
LegendShop集成了Jforum作为其论坛系统，实现单点登录功能，已经实现无缝结合。登录系统即登录论坛。 
LegendShop支持不同的产品评论级别，在后台配置之后就可以设置是否购买了才能评论，登录就可以评论，无需登录也可以评论，不能评论等级别，配置即时生效。 
LegendShop在继续完善单个网店功能的同时，也会继续强化多个商城的协同销售功能，可以支持网上连锁店，网上超市，网上步行街功能。到处，大家已经发现，LegendShop跟Ecshop,Shopex等成熟商城的发展方向是不一样的，LegendShop目标是要做SNS化的地区性商城门户，例如赶集网，百姓网等，对用户而言，只要发布简单信息就能满足条件。 [1]