• 基于springboot+vue的网络海鲜商城


    博主主页猫头鹰源码

    博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战

    主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询

    文末联系获取

    项目介绍: 

    本系统适合选题:论坛、信息交流、论坛交流等。系统采用springboot+vue整合开发,前端框架主要使用了element-ui、layui框架、数据层采用mybatis,功能齐全,界面美观。

    当人们发现随着生产规模的不断扩大,人为计算方面才是一个巨大的短板,所以发明了各种计算设备,从结绳记事,到算筹,以及算盘,到如今的计算机,都是在无法满足生产的前提下出现的。随着计算机的发展,又出现了互联网技术。到现在为止,互联网已经发展了几十年了,在几十年的时间里就已经风靡世界。各行各业都发现了计算机的好处,计算机刚开始是军用的,后来在民用行业开始使用,到互联网时代,各种行业信息如井喷一般充斥着互联网,信息产生和传播的速度不断的提高。针对互联网的优点,结合互联网,对传统行业信息处理技术进行升级是非常有必要的。本课题对于海鲜商品销售信息的管理方面,开发一个网络海鲜市场系统,在信息管理方面不至于混乱,也能降低数据的出错率,数据安全方面也有了保证,该系统还有其他的优点,比如优化信息处理流程,降低信息泄露风险,减少资金投入,产出更高,让管理人员的工作更有效率等。所以说,网络海鲜市场系统是目前不可缺的,对使用者相当的重要。

    功能介绍:

    对管理员具体功能的设计结果将以图4.1所示的管理员功能结构图来进行体现。管理员对于网络海鲜市场系统操作的功能包括对商品资讯,用户信息,商品信息等进行增删改查,同时可以回复用户对商品的评价,以及管理商品订单和论坛帖子。

    对用户具体功能的设计结果将以图4.2所示的用户功能结构图来进行体现。用户对于网络海鲜市场系统操作的功能包括在前台购买商品,管理收货地址,管理购买的商品信息,查看商品资讯,管理购物车等。

    系统包含技术:

    后端:springboot,mybatis
    前端:element-ui、layui、js、css等
    开发工具:idea/vscode
    数据库:mysql 5.7
    JDK版本:jdk1.8

    部分截图说明:

    下面是首页

    论坛

    帖子详情

    商品管理

    商品详情

    商品资讯

    登录

    商品类型管理

    商品管理

    商品订单管理

    论坛管理

    部分代码:

    1. @RequestMapping("/location")
    2. public R location(String lng,String lat) {
    3. if(BAIDU_DITU_AK==null) {
    4. BAIDU_DITU_AK = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "baidu_ditu_ak")).getValue();
    5. if(BAIDU_DITU_AK==null) {
    6. return R.error("请在配置管理中正确配置baidu_ditu_ak");
    7. }
    8. }
    9. Map<String, String> map = BaiduUtil.getCityByLonLat(BAIDU_DITU_AK, lng, lat);
    10. return R.ok().put("data", map);
    11. }
    12. /**
    13. * 人脸比对
    14. *
    15. * @param face1 人脸1
    16. * @param face2 人脸2
    17. * @return
    18. */
    19. @RequestMapping("/matchFace")
    20. public R matchFace(String face1, String face2, HttpServletRequest request) {
    21. if(client==null) {
    22. /*String AppID = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "AppID")).getValue();*/
    23. String APIKey = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "APIKey")).getValue();
    24. String SecretKey = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "SecretKey")).getValue();
    25. String token = BaiduUtil.getAuth(APIKey, SecretKey);
    26. if(token==null) {
    27. return R.error("请在配置管理中正确配置APIKey和SecretKey");
    28. }
    29. client = new AipFace(null, APIKey, SecretKey);
    30. client.setConnectionTimeoutInMillis(2000);
    31. client.setSocketTimeoutInMillis(60000);
    32. }
    33. JSONObject res = null;
    34. try {
    35. File file1 = new File(request.getSession().getServletContext().getRealPath("/upload")+"/"+face1);
    36. File file2 = new File(request.getSession().getServletContext().getRealPath("/upload")+"/"+face2);
    37. String img1 = Base64Util.encode(FileUtil.FileToByte(file1));
    38. String img2 = Base64Util.encode(FileUtil.FileToByte(file2));
    39. MatchRequest req1 = new MatchRequest(img1, "BASE64");
    40. MatchRequest req2 = new MatchRequest(img2, "BASE64");
    41. ArrayList<MatchRequest> requests = new ArrayList<MatchRequest>();
    42. requests.add(req1);
    43. requests.add(req2);
    44. res = client.match(requests);
    45. System.out.println(res.get("result"));
    46. } catch (FileNotFoundException e) {
    47. e.printStackTrace();
    48. return R.error("文件不存在");
    49. } catch (IOException e) {
    50. e.printStackTrace();
    51. }
    52. return R.ok().put("data", com.alibaba.fastjson.JSONObject.parse(res.get("result").toString()));
    53. }
    54. /**
    55. * 获取table表中的column列表(联动接口)
    56. * @return
    57. */
    58. @RequestMapping("/option/{tableName}/{columnName}")
    59. @IgnoreAuth
    60. public R getOption(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName,String level,String parent) {
    61. Map<String, Object> params = new HashMap<String, Object>();
    62. params.put("table", tableName);
    63. params.put("column", columnName);
    64. if(StringUtils.isNotBlank(level)) {
    65. params.put("level", level);
    66. }
    67. if(StringUtils.isNotBlank(parent)) {
    68. params.put("parent", parent);
    69. }
    70. List<String> data = commonService.getOption(params);
    71. return R.ok().put("data", data);
    72. }
    73. /**
    74. * 根据table中的column获取单条记录
    75. * @return
    76. */
    77. @RequestMapping("/follow/{tableName}/{columnName}")
    78. @IgnoreAuth
    79. public R getFollowByOption(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName, @RequestParam String columnValue) {
    80. Map<String, Object> params = new HashMap<String, Object>();
    81. params.put("table", tableName);
    82. params.put("column", columnName);
    83. params.put("columnValue", columnValue);
    84. Map<String, Object> result = commonService.getFollowByOption(params);
    85. return R.ok().put("data", result);
    86. }

    以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。

    好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~

  • 相关阅读:
    STM32F4_HAL_LWIP_RAM接口UDP实验
    虚拟机(VM)监控工具
    持续集成和上传源码
    笔记,人工智能,梯度下降法
    常见的限流算法与实现
    pandas将多个Series对象当成数据行进行垂直合并形成dataframe、pandas将多个Series对象当做数据列垂直合并形成dataframe
    Insanity:1靶机
    vue组件之间传参方式
    Web3.0带来天翻地覆的变化?全面科普!所谓的Web3.0到底是什么?
    ZooKeeper之Java API的基本使用以及应用场景的实现
  • 原文地址:https://blog.csdn.net/mtyedu/article/details/132866448