> # ♻️ 资源
> **大小:** 10.1MB
> **文档链接:**[**https://www.yuque.com/sxbn/ks/100010128**](https://www.yuque.com/sxbn/ks/100010128)
> **➡️ 资源下载:**[**https://download.csdn.net/download/s1t16/87293541**](https://download.csdn.net/download/s1t16/87293541)
> **注:更多内容可关注微信公众号【神仙别闹】,如当前文章或代码侵犯了您的权益,请私信作者删除!**
> ![qrcode_for_gh_d52056803b9a_344.jpg](https://cdn.nlark.com/yuque/0/2023/jpeg/2469055/1692147256036-49ec7e0c-5434-4963-b805-47e7295c9cbc.jpeg#averageHue=%23a3a3a3&clientId=u8fb96484-770e-4&from=paste&height=140&id=u237e511a&originHeight=344&originWidth=344&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=8270&status=done&style=none&taskId=ud96bf5f7-fe85-4848-b9c2-82251181297&title=&width=140.1999969482422)
# 心灵小阁——Javaweb 项目
## 项目背景
时下流行着许许多多的社交软件,微信、QQ、微博等,这些软件的初衷都是大家相互之间通过交流沟通,诉说自己的想法和分享自己的经历等,以缩短彼此之间的距离,给大家带来了很多的便利,但随着它们的蓬勃发展,同样的也给我们的生活带来了困扰。当我们的家人亲戚乃至上司开始使用微信、QQ 的时候,我们变得不爱在朋友圈或 QQ 空间里面发表动态了;由于工作或者学习需要,我们的微信、QQ 里面出现了越来越多的不太熟悉的人,我们开始心存顾虑,不再敢在朋友圈或 QQ 空间发表动态了;当微信、QQ 平台出现商业化的推销,我们开始变得厌倦…当微信和 QQ 变得不再私密,变得与工作学习相关,变得商业化,我们开始将自己隐藏,不再表达自己。并不是人们不再需要表达,而是对于不再私密的朋友圈、QQ 空间,开始厌倦,心存顾虑了。
## 项目介绍
我们小组的想法是,让人们不心存顾虑的表达自我,我们设置用户发表动态时有三种情况可选:公开、公开匿名、不公开。三种情况解释如下:
① 动态“公开”代表自己发表的动态会显示在“心灵小阁”主页面,并且其他用户知道是对应的人发表的。
② 动态“公开匿名”代表自己发表的动态会显示在“心灵小阁”主页面,但是其他用户无法得知是哪位用户发表的。
③ 动态“不公开”代表自己发表的动态不会显示在“心灵小阁”主页面,只会显示在用户的个人页面中,只有用户本人才能查看。
用户登录或注册成功之后可以直接进入“心灵小阁”主页面,主页面汇聚了所有人的公开发表的个人动态的页面,但限制了消息的数目。一旦刷新,之前的消息可能很难找到,因为我们只提供上页和下页的浏览,也不提供搜索,当在短时刻内有多人发动态时很容易丢失之前的浏览,这也就说明你和那条动态的缘分可能断了。如果你对某位用户发表的动态深有同感,或者觉得不错,可以在该条动态下点赞,当然,评论和回复评论都是可以的。
常言道,“失去了才懂得珍惜”,看看陌生人的动态,感受下陌生人的心境,是一种缘,赞同别人的动态或者对别人发表的动态产生共鸣,这更是一种难得的机缘。我们要珍惜这种缘,相互之间兴趣相投,话题投机,何其难得。若这种缘,能觅得一知己,何其幸运,人生得一知己足矣。
## 项目功能点
1.整个项目主要使用 SublimeText 编写前端代码,eclipse 编写后端 JSP 代码,以及使用 Tomcat 搭建 Web 服务器。
2.前端网页是基于 HTML5 架构和纯 JS 编写的,由于不能使用其他前端库,为了减少代码量,我们自行封装了一些常用的方法(主要在 myJquery.js 文件中),比如参照 jQuery 实现的 $(flag)方法获取特定元素,参照 jQuery 实现的 ajax()和 ajaxFileUpload()这两个分别用于常用消息和文件上传的异步交互方法,对异步交互返回的 XML 文档进一步封装的 Xmler(xmlDoc)对象,采用正则表达式实现的字符串的 tartWith,endWith 和 trim 原型方法,参照 Android 的 Toast 实现的 Toast(msg,time)方法以及判断是否是邮箱的 isEmail 方法。
3.为了方便合作,我们主要是采用模块化的设计思想,前端绝大部分的数据交互都是通过 AJAX 技术进行异步交互的,这个结构主要分为 4 大部分,如下图所示:
![13e5a28d13ac14fac0d6f5a2a1aa0deb.PNG](https://cdn.nlark.com/yuque/0/2023/png/2469055/1703642194266-b3253ac5-9e38-4988-bf0e-b33031938863.png#averageHue=%23fefdfb&clientId=u96f60bc3-b9a8-4&from=paste&height=405&id=ud09c9daa&originHeight=506&originWidth=762&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=1545369&status=done&style=none&taskId=u9eb9b35a-7a88-4dee-bf0e-2601493dae5&title=&width=609.6)
4.后端使用 JSP 语言配合 MySQL 数据库实现。
1)MySQL 数据库中密码使用 MD5 传输和存储,图片和音乐都是只存唯一的文件名,其具体的数据库设计可参考 ER 图和附录文件下的数据库目录下的 create.sql,里面有详细的注释说明。值得一提的是对于数据库连接我们采用了连接池技术和实现了面向对象的数据库接口 DAO,分别实现在源码目录 13354218srccomwebLmj 下的 MySQLPool.java 和 DAO.java 文件下;此外由于 JSP 的 session 只有 30 分钟的有效期,以及客户端的 cookie 容易遭到恶意篡改,我们特地设计了一个 session 表来辅助验证客户端的自动登陆,默认可选 7 天内免登陆。
2)我们还实现了 4 个实体类,分别为用户类 User.java,动态类 Show.java,评论类 Comment.java 和消息类 Message.java,以及其他的记录日志类 Log.java,格式化相对日期类 RelativeDateFormat.java,通过 session 来统计在线人数类 SessionCounter.java 和一个常用方法的工具类 Utils.java。
5.对于后台的实现,同样是模块化的,主要是 AJAX 的接口,同样主要分为 4 个部分,如下图所示:
![04b75f830430258281d1e80e29f938cd.PNG](https://cdn.nlark.com/yuque/0/2023/png/2469055/1703642216856-4064fd40-95ee-4304-9c10-0996517adc7d.png#averageHue=%23fefefe&clientId=u96f60bc3-b9a8-4&from=paste&height=365&id=ubb19e9dc&originHeight=456&originWidth=666&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=1217285&status=done&style=none&taskId=u65004ad9-de5d-4e90-895f-7b0475c1b01&title=&width=532.8)
## 工作流程图:
![f8a86484d69a7f247cef4af08a0029fc.PNG](https://cdn.nlark.com/yuque/0/2023/png/2469055/1703642366111-af3e2902-5a14-4aca-886b-104581be49a2.png#averageHue=%23fdfefb&clientId=u96f60bc3-b9a8-4&from=paste&height=551&id=u756f0ff1&originHeight=689&originWidth=301&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=831666&status=done&style=none&taskId=u82e7e17c-4b5c-4fbb-b1a8-d6781ff1d4c&title=&width=240.8)
## 实验环境
Tomcat,JDK 和 MySQL。
## 系统分析:
采用快速迭代的方法,先做一个小型完整的系统,有时间再不断增加功能或改进设计。可以参考一些典型网站。确定需求后,画出用例图(顶层)、类图、E-R 图,然后再编码。二、主要任务:系统设计、系统安装测试、文档编写、前台设计和编码、后台编码。三、整个完成后要在教学服务器上安装。如果需要用户登陆,用户至少要有两个用户,即管理员 admin 和普通用户 user,密码都是 123。管理员一般有特别的后台功能,比如:可以删除任何用户的博客或者屏蔽一个博客用户(让其他用户看不到该用户的博客文章)。
## 顶层用例图
![285dff960ca6206ee9679089dfc1561c.PNG](https://cdn.nlark.com/yuque/0/2023/png/2469055/1703642389814-5f61321d-84df-4eaa-9840-73f2d469a01e.png#averageHue=%23fdfefb&clientId=u96f60bc3-b9a8-4&from=paste&he
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
详情介绍:https://www.yuque.com/sxbn/ks/100010128 整个项目主要使用 SublimeText 编写前端代码,配合 MySQL ,eclipse 编写后端 JSP 代码,以及使用 Tomcat 搭建 Web 服务器。 前端网页是基于 HTML5 架构和纯 JS 编写的。 后端使用 JSP 语言配合 MySQL 数据库实现。
资源推荐
资源详情
资源评论
收起资源包目录
基于 Jsp+MySQL 实现(Web)个人动态分享心灵小阁网站 【100010128】 (104个子文件)
DAO.class 38KB
User.class 5KB
MySQLPool.class 4KB
Comment.class 3KB
Message.class 3KB
Show.class 2KB
Utils.class 2KB
RelativeDateFormat.class 2KB
Log.class 2KB
SessionCounter.class 833B
.classpath 824B
org.eclipse.wst.common.component 468B
org.eclipse.wst.jsdt.ui.superType.container 49B
index.css 14KB
personal.css 9KB
public.css 9KB
me.css 6KB
head_user.gif 6KB
head_user.gif 6KB
index.html 27KB
DAO.java 43KB
MySQLPool.java 4KB
User.java 3KB
RelativeDateFormat.java 2KB
Comment.java 2KB
Message.java 2KB
Show.java 2KB
Log.java 1KB
Utils.java 1KB
SessionCounter.java 567B
pic.jpg 355KB
bg_user.jpg 114KB
bg_admin.jpg 100KB
head_benbaobao10.jpg 54KB
head_benbaobao9.jpg 54KB
head_benbaobao2.jpg 50KB
head_benbaobao7.jpg 23KB
head_benbaobao1.jpg 18KB
head_benbaobao8.jpg 17KB
head_benbaobao6.jpg 16KB
head_benbaobao4.jpg 16KB
head_benbaobao3.jpg 15KB
head_benbaobao5.jpg 14KB
head_admin.jpg 2KB
head_cat.jpg 2KB
index.js 20KB
personal.js 16KB
public.js 15KB
me.js 13KB
myJquery.js 11KB
md5.js 7KB
.jsdtscope 491B
index.jsp 28KB
getShow.jsp 13KB
getShowComment.jsp 11KB
updateUserInfo.jsp 6KB
login.jsp 4KB
getMsgDetail.jsp 3KB
getUserMsg.jsp 3KB
pushReplyComment.jsp 2KB
getUserInfo.jsp 2KB
register.jsp 1KB
resetPassword.jsp 1KB
pushShowComment.jsp 1KB
deleteShow.jsp 1KB
submitBug.jsp 1KB
shieldUser.jsp 1KB
deleteComment.jsp 1KB
pushCommentLike.jsp 1010B
pushShow.jsp 971B
pushShowLike.jsp 958B
changeShowMode.jsp 908B
deleteMsg.jsp 801B
error.jsp 771B
setMsgHasRead.jsp 716B
getUnreadMsgNum.jsp 711B
start.jsp 461B
logout.jsp 397B
test.jsp 384B
LICENSE 1KB
README.md 29KB
MANIFEST.MF 36B
往日时光.mp3 4.09MB
InThere.mp3 2.69MB
org.eclipse.wst.jsdt.ui.superType.name 6B
report.pdf 2.75MB
ER.png 116KB
qq.png 16KB
like_right.png 8KB
like_left.png 7KB
email.png 3KB
phone.png 2KB
org.eclipse.jdt.core.prefs 357B
.project 1005B
upload.py 3KB
create.sql 5KB
insert.sql 423B
list.txt 505B
各种图.vsdx 283KB
web.xml 584B
共 104 条
- 1
- 2
资源评论
- m0_647011222023-09-18资源很实用,内容详细,值得借鉴的内容很多,感谢分享。
神仙别闹
- 粉丝: 2674
- 资源: 7640
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功