从零用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

相关推荐
启山智软几秒前
【智能商城系统技术架构优势】
java·spring·开源·商城开发
迷藏4942 分钟前
# 发散创新:基于Solidity的NFT智能合约设计与部署实战在区块链技术飞速发展
java·区块链·智能合约
tq10863 分钟前
从对象互操作性角度分析 `from` 与 `to` 方法的选择
java
pacong17 分钟前
vscode使用
javascript·vue.js·vscode
IT 行者18 分钟前
实战LangChain4j集成MCP Server:让Java AI应用具备工具调用能力
java·开发语言·人工智能
ok_hahaha21 分钟前
java从头开始-黑马点评-商户查询缓存
java·spring·缓存
LINgZone234 分钟前
Java Mock 测试框架 Mockito
java·windows·microsoft
SWAGGY..1 小时前
【C++初阶】:(5)内存管理
java·c++·算法
2501_916008891 小时前
2026 iOS 证书管理,告别钥匙串依赖,构建可复制的签名环境
android·ios·小程序·https·uni-app·iphone·webview
XiYang-DING1 小时前
【Java SE】包装类(Wrapper Class)
java·开发语言