简介
在了解jopencart之前首先大概介绍下OpenCart,OpenCart 是世界著名的开源电子商务系统,系统开发语言为 PHP,OpenCart 已成为世界主流的电子商务建站系统。该项目采用 MVCL 架构。
jopencart是一个OpenCart的JAVA部分移植版本,未来将支持OpenCart的全部功能,项目也采用MVCL架构,其中的VL将使用OpenCart原版部分,MC换成JAVA实现。通俗点说就是将OpenCart换上JAVA引擎。主要目的是充分发挥Java在缓存、多线程、数据库连接池等方面的优势提高OpenCart性能。(PS:主要是我是PHP菜鸟,不知道怎么优化PHP性能。)
演示地址
在线演示:http://www.javacart.cn/
演示用户账号:admin@javacart.cn / 123456
为什么做这项目
- 最近两年接了不少OpenCart二次开发单子,深刻体会到OpenCart优秀的MVCL架构。
- OpenCart在数据量较大情况是性能较低,缓存设计的不是很理想、Opencart部分插件SQL注入风险较大。
- OpenCart在搜索方面使用LIKE实现,如果能直接用上Lucene岂不更好。
- JAVA竟然没个完美的开源开源商城? 又无意发现JPHP,发现将用PHP作为JAVA的模板引擎成为可能,顾开始了这个项目。(PS:完美避开自己前端设计上的弱项。)
技术方面
- 项目使用JFINAL作为MVC、ORM基础框架。
- 使用PHP作为模板引擎,使用JPHP项目实现该功能。得益于JPHP项目使得OpenCart只移植MC部分成为可能。
- 多数据库支持,读写分离支持。
- 将页面模块化、碎片化,直接做页面级别缓存大大提高性能。
- 支持分布式部署。
功能方面
- 陆续将移植opencart基本全部功能。
- 加入特色功能微信商城。
- 加入支付宝支付、微信支付。
- 第三方登录,支持微信、QQ、微博等。
性能方面
- 优化Opencart的SQL。
- 使用Druid进行SQL监控。
- 搜索使用Lucene实现,提高搜索性能。
- 大量的缓存设计。
- 分布式设计,可以通过简单的添加机器来支撑更大的并发。
最最重要
- 数据设计完全复用OpenCart-2.2.0.0,原版OpenCart网站迁移几乎0成本。
部分页面截图


