【Log/Java项目】一个自己写的供情侣们记录生活和表达关心与爱意的小网站

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 【Log/Java项目】一个自己写的供情侣们记录生活和表达关心与爱意的小网站

梦开始的地方

Ok,这是我在大三下学期写下的文字。

目前已经找到了杭州和北京的几家还不错的公司的实习,最近也没有说继续学习新技术,都在刷算法,毕竟冲击大厂的第一步可能就是算法啦,现在每天都在经历被LeetCode中等题暴打的痛苦哈哈哈。

之所以说是最后一个项目是因为,这个项目的完成时间确实就是大三这学期结束的时间点,并且也基于已经找到工作,不需要说继续去学习网络上的项目了,只需要等着进公司继续精进自己咯。

所以这个项目到底是什么?

这个项目很简单,就是一个给情侣用来记录恋爱生活的网站,同时这个网站也会每天定时定点的给伴侣发送电子邮件。是一个toC的项目,用户登录之后可以绑定和邀请自己的另一半来访问这个网站。

网站的首页UI如下:

网站可以上传用户与另一半的日志信息

也可以编写电子邮件信息,点击Love Email图标就可以编写恋爱短信咯

数据库大概保存如下信息

然后配合XXL-JOB就可以实现每天定时定点的邮件发送功能了。

当然,项目还有一些其他花里胡哨的功能,比如时间线,代办日志等(toC产品没有UI是真不行哈哈哈哈,一群大男孩实在设计不来,唯一一个女生也是产品经理T T)

现在从0开始介绍!

Hello,Hello,我是张锦标(ZBlossom),这个项目的产品经理(笑称)和Leader。负责这个项目的功能设计,代码架构搭建。

现在正式开始介绍这个项目吧。

结合当时我的技术栈,当时已经学完了比较主流的技术栈了,SpringBoot+SpringCloud,其中SpringCloud下面的SpringCloudAlibaba提供了一个注册中心兼配置中心的Nacos组件,基于Nacos,我可以动态的变更配置内容,所以说干就干,就有了这个基于SpringCloud的微服务项目。

项目最初的版本是只允许我使用Nacos去修改内容的,那么每当我想要给其他人在某个时间点发送某些内容的时候,我就得上去配置中心去修改一下,大概当时的情况如下:

这样子确实是实现了我能随心的修改发送短信的时间和内容,但是总有点说不上来的麻烦吧。并且,我当初买的服务器是新人特惠,特别便宜,这意味着开一个Nacos和跑一下这个项目,Nacos可能动不动就下机了,所以我经历了一天要开好几次Nacos的痛苦,所以就想着,能不能好好的优化一下,使用数据库去存储任务,然后通过网页的方式去修改一下内容呢?

于是我就拉来了我的兄弟们,我们一起开始策划这个项目。

我们都是技术热爱者,所以想着,其实这个项目如果只是给自己用的话,那自然非常简单就能实现我们想要的功能,但是我们希望这个项目也能让更多的人去以特殊的,自己的方式来表达自己对在乎的人的关心与爱,所以,我们不单单只是简单的打算设计一个小demo,而是希望这个项目能做到功能尽可能完善,同时我们会开源出来代码,因此,我们会尽可能的保证项目的开发符合(我们自认为的)规范。

同时项目会尽可能使用到比较主流的技术栈,来帮助一些新人Java朋友学习Java。

如果你也对这个项目有兴趣,可以添加我的联系方式来加入我们:

Github地址:Towelove项目地址

项目简易文档(未更新):项目文档地址

当然,我们的完整文档,技术解决方式,Bug解决方式,都写在语雀里了,不过没开放(因为要米!!哈哈哈)

那么标题为什么说我是不是恋爱脑呢?

因为,我自掏腰包找了个前端帮我写前端代码哈哈哈,我就是想看到我的执念上线的样子。

核心功能

恋爱相册(LoveAlbum)

恋爱相册需要绑定情侣关系的两人才能开启,当当前用户并没有绑定情侣关系的时候,只能查看到我们设定的预览的功能,而不能真的去使用这个功能。只有当前用户邀请或者绑定了另一半之后,才能真的开启恋爱相册这个功能。

同时恋爱相册由于设计的时候绑定了两个人的信息,所以,我们后面的很多业务逻辑都依赖于恋爱相册这个表。

比如,当我们的用户登录之后,我们会从数据库中查询出来其在恋爱相册中对应的伴侣的userId,然后根据这个userId我们会查询出来当前用户对应的伴侣的信息,那么此时就可以完成两个伴侣的头像和数据的展示了。

恋爱日志(LoveLogs)

当当前用户成功的开通恋爱日志之后,就可以在恋爱日志里面放上内容了。

大概情况如下

点击加号就可以发布日志内容了,日志内容中要求填写日志时间,标题,要上传的图片等信息。

爱情邮局(LovePostOffice)

上文讲过,要开通恋爱相册需要绑定另一半,那么此时就需要一个功能来邀请另一半。

我们分为了如下两种情况:

第一种情况:

如果当前用户还没有注册,那么我们要求当前已经注册的用户填写被邀请用户的电子邮箱,我们将会发送一个官方邮件给这位用户来邀请TA注册项目,并且此时TA可以填写邮件中的邀请码来直接在完成注册功能后直接绑定TA的伴侣。

第二种情况:

当前被邀请的用户已经注册了,那么此时我们就需要要求发送邀请的用户发送一个项目内的邮件到另一半的邮箱里,然后只需要被邀请的另一半同意这个请求即可。

此时我们提供了二选一的方案,如果知道被邀请用户的邮箱,那么输入邮箱后我们会发送电子邮件给受邀用户,而如果输入的是用户的用户名,那么我们会根据用户名来找到指定用户并且进行发送。

这里如果使用的是用户名查询,那么我们会在用户输入完毕用户名之后,然后在输入框下面展示用户头像,来确保你没有邀请错误人。

为了确保不出现不良情况,我们确保了只要这一次的邀请没有被同意或者拒绝,这名用户都不能再一次的邀请另一名情侣(多渣呀)。

同时当另一半解除关系时,我们也会通过这个邮局来发送消息。

系统的各种消息都会发送到这个邮局里,请注意查收哦。

时间线(TimeLine)

这个功能记录的是两个人在恋爱过程中发生的比较重大的时间,大概样式如下,用于记录某一天发生了什么事情。

待办列表(LoveList)

待办列表就是用于记录两个人在一起希望能一起做的事情。

当完成了待办列表的时候,就可以上传图片了。

到此为止就是这个项目和情侣有关的部分的功能啦。

登录注册等各种基本流程全都完成了,这个项目是可以直接运行并且使用的哦。

技术栈

SpringBoot 2.7.7

SpringCloud 2021.0.5

SpringCloudAlibaba 2021.0.4

RocketMQ 4.9.4(代码保留,但是废弃)

Nacos 2.0.4

MySQL 8.0.32

Redis 6.0.16

XXL-JOB 2.2.0

使用这个项目需要配置的东西可能算多也不多,Nacos,XXL-JOB,Redis,MySQL都是需要的。

如果你真的打算使用这个项目,或者希望能在你自己的电脑跑起来,那么可以找我要一份配置文件。(当然,不如直接join me 哈哈哈)


相关实践学习
通过日志服务实现云资源OSS的安全审计
本实验介绍如何通过日志服务实现云资源OSS的安全审计。
相关文章
|
22天前
|
安全 Java API
Java Web 在线商城项目最新技术实操指南帮助开发者高效完成商城项目开发
本项目基于Spring Boot 3.2与Vue 3构建现代化在线商城,涵盖技术选型、核心功能实现、安全控制与容器化部署,助开发者掌握最新Java Web全栈开发实践。
210 1
|
2月前
|
前端开发 Java API
2025 年 Java 全栈从环境搭建到项目上线实操全流程指南:Java 全栈最新实操指南(2025 版)
本指南涵盖2025年Java全栈开发核心技术,从JDK 21环境搭建、Spring Boot 3.3实战、React前端集成到Docker容器化部署,结合最新特性与实操流程,助力构建高效企业级应用。
548 1
|
2月前
|
JavaScript Java 微服务
现代化 Java Web 在线商城项目技术方案与实战开发流程及核心功能实现详解
本项目基于Spring Boot 3与Vue 3构建现代化在线商城系统,采用微服务架构,整合Spring Cloud、Redis、MySQL等技术,涵盖用户认证、商品管理、购物车功能,并支持Docker容器化部署与Kubernetes编排。提供完整CI/CD流程,助力高效开发与扩展。
339 63
|
20天前
|
IDE 安全 Java
Lombok 在企业级 Java 项目中的隐性成本:便利背后的取舍之道
Lombok虽能简化Java代码,但其“魔法”特性易破坏封装、影响可维护性,隐藏调试难题,且与JPA等框架存在兼容风险。企业级项目应优先考虑IDE生成、Java Records或MapStruct等更透明、稳健的替代方案,平衡开发效率与系统长期稳定性。
113 1
|
22天前
|
存储 小程序 Java
热门小程序源码合集:微信抖音小程序源码支持PHP/Java/uni-app完整项目实践指南
小程序已成为企业获客与开发者创业的重要载体。本文详解PHP、Java、uni-app三大技术栈在电商、工具、服务类小程序中的源码应用,提供从开发到部署的全流程指南,并分享选型避坑与商业化落地策略,助力开发者高效构建稳定可扩展项目。
|
3月前
|
安全 JavaScript Java
java Web 项目完整案例实操指南包含从搭建到部署的详细步骤及热门长尾关键词解析的实操指南
本项目为一个完整的JavaWeb应用案例,采用Spring Boot 3、Vue 3、MySQL、Redis等最新技术栈,涵盖前后端分离架构设计、RESTful API开发、JWT安全认证、Docker容器化部署等内容,适合掌握企业级Web项目全流程开发与部署。
163 0
|
3月前
|
人工智能 安全 Java
掌握Java反射:在项目中高效应用反射机制
Java反射是一种强大功能,允许程序在运行时动态获取类信息、创建对象、调用方法和访问字段,提升程序灵活性。它在框架开发、动态代理、注解处理等场景中广泛应用,如Spring和Hibernate。但反射也存在性能开销、安全风险和代码复杂性,应谨慎使用。
|
5月前
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
632 54
|
10月前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
264 9

热门文章

最新文章