# Collection of cloud **Repository Path**: chenjimo/Collection-of-cloud ## Basic Information - **Project Name**: Collection of cloud - **Description**: 这是一个云收藏项目的完整代码,非常适合spring boot新手参考使用 。本仓库资源借鉴于gitee上大佬的云收藏项目,做了自己的改动,修了一些BUG,解决了一些问题。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: http://jimoword.xyz:8080/ - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 1 - **Created**: 2022-03-24 - **Last Updated**: 2024-04-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: SpringBoot, MyBatis, MySQL, Shiro ## README # Sonrisa云收藏 star  fork
**这里是JIMO整合的云收藏项目** 与热门的云收藏不同,简化了好友、评论等功能,使用几个 jquery 插件,完善 bug ,能够更准确地进行网址收藏。 这也是自己的第一个Java项目,用时近两周,所以本项目会更适合于 springboot 的初学者们。 项目地址  码云链接 JIMOWORLD链接 ## 所涉及技术 ### 后端: - Springboot ​ 框架 - Mybatis 框架 - Mysql 数据库 - Shiro 安全框架 ### 前端: - Thymeleaf 模板引擎 - jQuery 框架 - 使用 BootStrap 、layui 框架进行页面渲染 - 部分图标使用于 Fontawesome 图标库 - 弹窗使用于 SweetAlert 、模态框使用于 Bootstrap - 头像截取使用于 cropper 图片剪裁插件 ## 功能概述 - 通过检索网址来获取文章,提供收藏、分类功能 - 可浏览他人的部分收藏 - 可以点赞收藏 - 供注册、登录,个人创建收藏夹,头像等 ##### 小模块: - 使用 Shiro 框架,同个账号不可同时在线 - 直接存储 url 网址,解决了以 ? 或 & 符号导致的存储网址不精确问题 - 开启了邮箱验证功能 - 开启了 druid 后台监控 ##### 不足之处: - i18n未全部完成 - 未涉及消息通知模块 - 验证码及点赞功能未采用缓存机制 ## 项目截图 ![](https://images.gitee.com/uploads/images/2021/0605/085807_dc137bad_7438481.png) ![](https://images.gitee.com/uploads/images/2021/0605/085842_2e6f1b54_7438481.png) ![](https://images.gitee.com/uploads/images/2021/0605/085910_2a215e45_7438481.png) ![](https://images.gitee.com/uploads/images/2021/0605/090004_f8eb4237_7438481.png) ![](https://images.gitee.com/uploads/images/2021/0605/090432_7c141984_7438481.png) ![](https://images.gitee.com/uploads/images/2021/0605/090501_2b83031f_7438481.png) ![](https://images.gitee.com/uploads/images/2021/0605/090730_4f838baf_7438481.png) ## 快速使用 - 克隆并使用 IDEA 或 eclipse 打开 maven 项目。 - 先将 application.yml 配置文件中的模式改为 dev 模式。 - 修改其 application-dev.yml 配置文件的数据库用户名密码等配置。 - 在数据库中创建一个名为 collection 的数据库。 - 执行以下 sql 语句,创建数据库表(该 sql 文件在仓库中存有)。 ```sql SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; DROP TABLE IF EXISTS `article`; CREATE TABLE `article` ( `id` bigint(50) NOT NULL, `title` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, `url` varchar(9000) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, `description` varchar(300) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `like_total` int(11) NULL DEFAULT NULL, `collection_total` int(11) NULL DEFAULT NULL, `is_private` bit(1) NULL DEFAULT NULL, `create_time` datetime(6) NULL DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; DROP TABLE IF EXISTS `folder`; CREATE TABLE `folder` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` bigint(50) NOT NULL, `name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, PRIMARY KEY (`id`) USING BTREE, INDEX `folder`(`user_id`) USING BTREE, CONSTRAINT `folder_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT ) ENGINE = InnoDB AUTO_INCREMENT = 117 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; DROP TABLE IF EXISTS `profile`; CREATE TABLE `profile` ( `user_id` bigint(50) NOT NULL, `article_id` bigint(50) NOT NULL, `folder_id` int(20) NULL DEFAULT NULL, INDEX `user_profile`(`user_id`) USING BTREE, INDEX `folder_profile`(`folder_id`) USING BTREE, INDEX `article_profile`(`article_id`) USING BTREE, CONSTRAINT `article_profile` FOREIGN KEY (`article_id`) REFERENCES `article` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT, CONSTRAINT `folder_profile` FOREIGN KEY (`folder_id`) REFERENCES `folder` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT, CONSTRAINT `user_profile` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; DROP TABLE IF EXISTS `star`; CREATE TABLE `star` ( `user_id` bigint(20) NULL DEFAULT NULL, `article_id` bigint(20) NULL DEFAULT NULL, INDEX `user_star`(`user_id`) USING BTREE, INDEX `article_star`(`article_id`) USING BTREE, CONSTRAINT `article_star` FOREIGN KEY (`article_id`) REFERENCES `article` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT, CONSTRAINT `user_star` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; DROP TABLE IF EXISTS `user`; CREATE TABLE `user` ( `id` bigint(50) NOT NULL, `username` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, `password` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, `nickname` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `portrait_path` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; SET FOREIGN_KEY_CHECKS = 1; ``` ### 您可能需要做以下更改: 1、头像的默认路径为:电脑 F 盘的 pictures 文件夹下(见 WebMvcConfig.java的资源处理器)。
2、默认头像为 F:\pictures\1\user.png (见 application-dev.yml 路径配置)。
3、对于邮件协议,需在配置文件中修改邮件名、smtp密码等配置。
4、druid后台账号密码需在 DruidConfig类 中更改。