从零用java实现 小红书 springboot vue uniapp (1)

前言

偶尔会用小红书发一些笔记 闲来无事 想自己实现一个小红书

正好可以学习一下 帖子 留言 im 好友 推送 等功能

下面我们就从零 开发一个小红书

后台依旧用我们的会员系统的脚手架
演示 http://120.26.95.195:8889/

客户端我们使用uniapp

我们首先对主页进行一个分解

顶部我们使用 gui-switch-navigation 进行菜单的选择

主体部分 我们使用瀑布流

参考了框架瀑布流的实现方式 我大概了解到

他把页面分成左右部分 左右各一个列表

所以获取到数据时我们需要转换成一个二维数组 再进行遍历操作

bash 复制代码
uni.app.get('/notes', null, '', (res => {
				if (res.code == 200) {
					let notes = res.data.records;

					var lArr = this.noteList[0];
					var rArr = this.noteList[1];
					//填充数组[此处的 notes 数据应该来自与api接口数据]
					//数据格式见 "/data/data.js"
					for (var i = 0; i < notes.length; i++) {
						if (i % 2 == 0) {
							lArr.push(notes[i]);
						} else {
							rArr.push(notes[i]);
						}
					}
					this.noteList = [lArr, rArr];
					......

后台的话我们创建notes表 进行生成

bash 复制代码
CREATE TABLE `business_note` (
  `NOTE_ID` varchar(32) NOT NULL COMMENT '笔记id',
  `NOTE_TITLE` varchar(255) DEFAULT NULL COMMENT '笔记标题',
  `NOTE_CONTENT` varchar(255) DEFAULT NULL COMMENT '笔记内容',
  `NOTE_CATEGORY` varchar(32) DEFAULT NULL COMMENT '类型id',
  `NOTE_CATEGORY_NAME` varchar(255) DEFAULT NULL COMMENT '笔记类型名',
  `NOTE_TYPE` tinyint(2) DEFAULT '1' COMMENT '1 图文 2视频  3文字',
  `AUTHOR_ID` varchar(32) DEFAULT NULL COMMENT '作者ID',
  `AUTHOR_AVATAR` varchar(255) DEFAULT NULL COMMENT '作者头像',
  `AUTHOR_NAME` varchar(255) DEFAULT NULL COMMENT '作者名字',
  `FIRST_PICTURE` varchar(255) DEFAULT NULL COMMENT '首图URL',
  `VERSION` bigint(10) DEFAULT '0' COMMENT '乐观锁字段',
  `DELETED` tinyint(2) DEFAULT '0' COMMENT '0正常 1删除',
  `CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间',
  `UPDATE_TIME` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  `IP_ADDRESS` varchar(255) DEFAULT NULL COMMENT 'ip地址',
  `IP_REAL_ADDRESS` varchar(255) DEFAULT NULL COMMENT '真实ip地址',
  `UP_COUNT` bigint(10) DEFAULT '0' COMMENT '点赞数',
  `STAR_COUNT` bigint(10) DEFAULT '0' COMMENT '收藏数',
  `NOTE_STATUS` tinyint(2) DEFAULT '0' COMMENT '0正常 1审核不通过 2限流',
  PRIMARY KEY (`NOTE_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='笔记表';

除了基础信息外 我们还添加了点赞数 收藏数 帖子状态用于后期对帖子的管理

由于用户管理还未开发 我们首页的数据先保持一致 后续根据用户推送相应内容

主页还需完善 滑动到底部刷新 等 后面进行完善

代码地址
https://gitee.com/ddeatrr/springboot_vue_xhs

相关推荐
Highcharts.js12 分钟前
Highcharts 集成到 React 或 Vue 项目中时,如何高效地使用 TypeScript技巧?
vue.js·人工智能·react.js·typescript·前端框架·highcharts
ScilogyHunter14 分钟前
Hercules系列安全MCU功能安全原理详解
java·单片机·安全·hercules
余槐i28 分钟前
PostgreSQL 加索引后查询反而更慢:优化器弃用索引的 3 种情形
spring boot·redis·mysql·postgresql·事务
博风33 分钟前
eclipse中配置maven,以及在本地使用maven。
java·eclipse·maven
云-缩影34 分钟前
实际项目中怎么选排序算法:从面试题到工程落地
java·算法·排序算法
追星星の人36 分钟前
java web项目(eclipse软件)全流程备份
java·servlet
文丑颜不良啊2 小时前
LeetCode1461~1480题目解析
java·leetcode
2301_780789669 小时前
跨平台适配!SDK 游戏盾兼容全终端游戏场景
java·网络·ddos
Java后端的Ai之路9 小时前
CAS并发控制-从CPU指令到企业级乐观锁
vue.js·人工智能·python·cas·乐观锁
学长毕设10 小时前
基于springboot的食品仓库管理系统
java·spring boot·后端