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

相关推荐
小明的IT世界几秒前
编程智能体为何能让LLM在实际工作中表现更好
java·开发语言·人工智能·ai编程
下地种菜小叶3 分钟前
接口幂等怎么设计?一次讲清重复提交、支付回调、幂等键与防重落地方案
java·spring boot·spring·kafka·maven
YDS8293 分钟前
大营销平台 —— 模板方法串联前中置抽奖规则
java·spring boot·ddd
.柒宇.4 分钟前
Java八股之== 与 equals 区别
java·开发语言
时间静止不是简史5 分钟前
当MyBatis-Plus的like遇上SQL通配符:下划线翻车记
java·sql·mybatis
喜欢流萤吖~7 分钟前
SpringBoot 性能优化实战
spring boot·后端·性能优化
两年半的个人练习生^_^8 分钟前
每日一学:设计模式之建造者模式
java·开发语言·设计模式
我登哥MVP9 分钟前
【SpringMVC笔记】 - 6 - RESTFul编程风格
java·spring boot·spring·servlet·tomcat·maven·restful
yhole14 分钟前
spring security 超详细使用教程(接入springboot、前后端分离)
java·spring boot·spring
zjjsctcdl14 分钟前
SpringBoot3.3.0集成Knife4j4.5.0实战
java