本文给大家推荐博主自己开源的电商项目newbee-mall-pro。在newbee-mall项目的基础上搭建而来, 使用 mybatis-plus 作为 orm 层框架,并添加了一系列高级功能以及代码优化,特性如下:
RediSearch 是一个源码可用的 Redis 模块,可以对 Redis 进行查询、二级索引和全文搜索。这些功能支持在文本查询之上进行多字段查询、聚合、精确短语匹配、数字过滤、地理过滤和矢量相似性语义搜索。
newbee-mall-pro 项目地址:
# 1. 克隆项目
git clone git@github.com:wayn111/newbee-mall-pro.git
# 2. 导入项目依赖
将newbee-mall-pro目录用idea打开,导入maven依赖
# 3. 安装Mysql8.0+、Redis3.0+(RediSearch2.0+)、Jdk8+、Maven3.5+
docker安装RediSearch
docker run -d --name redis-stack-server -p 6379:6379 redis/redis-stack-server:lates
# 4. 导入sql文件
在项目根目录下sql文件夹下,找到`newbee_mall_db_包含秒杀and优惠卷.sql`文件,新建mysql数据库newbee_mall_db,导入其中
# 5. 解压项目图片
将项目根目录下upload.zip文件加压缩到D盘upload文件夹中,eg:D:\\upload
# 6. 修改Mysql、Redis连接配置
修改`application-dev.yml`文件中数据连接配置相关信息
# 7. 启动项目
找到NewBeeMallApplication文件,右键`run AdminApplication`,启动项目
# 8. 访问
打开浏览器输入:http://localhost:84/newbeemall
newbee-mall-pro V2.4.2发布
更新内容:
ltd.newbee.mall.recommend.core.UserCF 中。ltd.newbee.mall.recommend.core.ItemCF 中。newbee-mall-pro V2.4.1发布
更新内容:
newbee-mall-pro V2.4.0发布
更新内容:
newbee-mall-pro V2.3.0发布
更新内容:
bug修复:
newbee-mall-pro V2.2.0发布
更新内容:
select2,支持商品标签不存在即创建tianai-captcha滑块验证码bug修复:
商城RediSearch支持商品上下架搜索
商城登录页面添加滑块验证码登录,优化登录体验
tianai-captcha滑块验证码,支持后端验证码校验
使用Spring事件监听机制,解耦下单流程,集成Pace美化商城进度条
商城添加RedisSearch搜索,支持中文分词搜索,推荐、新品、价格排序搜索
升级版本号至2.1.3,是一个功能完善版本
升级版本号至2.1.2,是一个代码优化版本
秒杀专区购物车数量显示错误bug修复
支付宝沙箱支付bug修复,显示沙箱账号
将默认编辑器替换为froala editor

添加站点演示模式,通过拦截器对不允许操作的后台路径进行错误提示处理

升级pom文件部分依赖
本次升级主要在原有秒杀功能的基础上进行了完善,秒杀优化如下:
秒杀专区为用户展示了后台设置的秒杀商品,在秒杀有效期内可以进行商品秒杀操作. 秒杀接口使用了接口限流、Redis以及储存过程提高秒杀操作的tps
优惠劵页面为用户展示了后台设置的可用优惠劵,在下单时可以使用优惠卷减少下单金额
商城首页 ![]() |
商品搜索 ![]() |
|---|---|
购物车 ![]() |
订单结算 ![]() |
订单列表 ![]() |
支付页面 ![]() |
| 分类管理 |
会员管理 |
| 优惠劵管理 |
商品管理 |
| 秒杀管理 |
订单管理 |
欢迎大家参与使用newbee-mall-pro项目,使用中遇到问题欢迎大家提出。我都会一一查看并回复。再附newbee-mall-pro项目地址:
最后再说一句,感兴趣的朋友可以点赞加关注,你的支持将是我更新动力?。
如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby
我在我的Rails项目中使用Pow和powifygem。现在我尝试升级我的ruby版本(从1.9.3到2.0.0,我使用RVM)当我切换ruby版本、安装所有gem依赖项时,我通过运行railss并访问localhost:3000确保该应用程序正常运行以前,我通过使用pow访问http://my_app.dev来浏览我的应用程序。升级后,由于错误Bundler::RubyVersionMismatch:YourRubyversionis1.9.3,butyourGemfilespecified2.0.0,此url不起作用我尝试过的:重新创建pow应用程序重启pow服务器更新战俘
我已经像这样安装了一个新的Rails项目:$railsnewsite它执行并到达:bundleinstall但是当它似乎尝试安装依赖项时我得到了这个错误Gem::Ext::BuildError:ERROR:Failedtobuildgemnativeextension./System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/rubyextconf.rbcheckingforlibkern/OSAtomic.h...yescreatingMakefilemake"DESTDIR="cleanmake"DESTDIR="
假设我有这个范围:("aaaaa".."zzzzz")如何在不事先/每次生成整个项目的情况下从范围中获取第N个项目? 最佳答案 一种快速简便的方法:("aaaaa".."zzzzz").first(42).last#==>"aaabp"如果出于某种原因你不得不一遍又一遍地这样做,或者如果你需要避免为前N个元素构建中间数组,你可以这样写:moduleEnumerabledefskip(n)returnto_enum:skip,nunlessblock_given?each_with_indexdo|item,index|yieldit
我想为我的Rails网络应用程序提供推荐功能。特别是,我想向新注册的用户推荐他可能想要关注的其他用户。Rails中是否有用于此目的的引擎/gem?如果没有,我应该从哪里开始构建它?谢谢。 最佳答案 有Coletivogemhttps://github.com/diogenes/coletivo我试了一下。在MySQL上运行。Neo4jhttp://neo4j.org真的很容易实现一个“跟随谁”。事实上,大多数展示其能力的样本都涉及“跟随谁”。快速提示-只有在JRuby上运行时,Neo4j.rb才会很酷。如果不是-使用Neograph
您将如何构建一个简单的Sinatra应用程序?我正在制作,我希望该应用具有以下功能:“应用程序”更像是一个包含所有信息的管理仪表板。然后另一个应用程序将通过REST访问信息。我还没有创建仪表板,只是从数据库中获取东西session和身份验证(尚未实现)您可以上传图片,其他应用可以显示这些图片我已经使用RSpec创建了一个测试文件通过Prawn生成报告目前的设置是这样的:app.rbtest_app.rb因为我实际上只有应用程序和测试文件。到目前为止,我已经将Datamapper用于ORM,将SQLite用于数据库。这是我的第一个Ruby/Sinatra项目,所以欢迎任何和所有建议-我应
我正在尝试创建一个带有项目符号字符的Ruby1.9.3字符串。str="•"+"helloworld"但是,当我输入它时,我收到有关非ASCII字符的语法错误。我该怎么做? 最佳答案 你可以把Unicode字符放在那里。str="\u2022"+"helloworld" 关于ruby-如何在Ruby字符串中插入项目符号字符?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1195
我的Rails站点使用了一个确实不是很好的gem。每次我需要做一些新的事情时,我最终不得不花费与向实际Rails项目添加代码一样多的时间来为gem添加功能。但我不介意,我将我的Gemfile设置为指向我的gem的GitHub分支(我尝试提交PR,但维护者似乎已经下台)。问题是我真的没有找到一种合理的方法来测试我添加到gem的新东西。在railsc中测试它会特别好,但我能想到的唯一方法是a)更改~/.rvm/gems/.../foo。rb,这看起来不对或者b)升级版本,推送到Github,然后运行bundleup,这除了耗时之外显然是一场灾难,因为我不确定我所做的promise是否正
我一直在尝试使用nanoc用于生成静态网站。我需要组织一个复杂的排列页面,我想让我的内容保持干燥。包含或合并的概念在nanoc系统中如何运作?我已阅读文档,但似乎找不到我想要的内容。例如:我如何获取两个部分内容项并将它们合并到一个新的内容项中。在staticmatic您可以在您的页面中执行以下操作。=partial('partials/shared/navigation')类似的约定在nanoc中如何运作? 最佳答案 这里是nanoc的作者。在nanoc中,部分是布局。因此,您可以拥有layouts/partials/shared/
我安装了ruby、yeoman,当我运行我的项目时,出现了这个错误:Warning:Running"compass:dist"(compass)taskWarning:YouneedtohaveRubyandCompassinstalledthistasktowork.Moreinfo:https://github.com/gruUse--forcetocontinue.Use--forcetocontinue.我有进入可变session目标的路径,但它不起作用。谁能帮帮我? 最佳答案 我必须运行这个:geminstallcom