基于JavaWeb的微博系统设计与实现

发布于:2022-12-13 ⋅ 阅读:(568) ⋅ 点赞:(0)

资源下载地址:https://download.csdn.net/download/sheziqiong/86783538
资源下载地址:https://download.csdn.net/download/sheziqiong/86783538
微博系统
目录
一、设计要求: 1
Homepage 1
三、文件结构: 2
四、各部分具体实现: 3
1.登陆注册模块: 实现功能: 3
2.动态模块与账号的注销退出: 6
//单个动态处理函数 7
else 9
3.搜索好友模块: 9
用 9
用户 户 9
的 9
好友 9
好 9
友的好 9
友 将此中不是用 9
五、数据库的设计: 10
六、结果截图: 11
1.登陆注册界面: 11
2.动态加载界面: 12
3.查看更多功能及评论/回复: 12
4.按账号搜索好友: 12
5.好友推荐: 13
七、总结: 13
四、各部分具体实现:
1.登陆注册模块: 实现功能:
用户注册,注册的过程中加入了表单验证,验证规则为:
(1).手机号必须为 11 位数字且必须是以 13/14/15/17/18/19 开头,因为 16 为服务号。 (2).学号为 11 位数字。
(3).密码长度必须大于 6.
用户登录时通过 Cookie 记录用户的登陆信息,下次登陆时无需再次输入。
Canvas 画出西电眺望塔。
主要代码:
a.注册账号时的表单验证:
$(function () {
$(‘#logform’).bootstrapValidator({
message: “This value is not valid”,
feedbackIcons: {//定义了检验通过与未通过时采用的图标
valid: ‘glyphicon glyphicon-ok’,
invalid: ‘glyphicon glyphicon-remove’,
validating: ‘glyphicon glyphicon-refresh’
},

        fields: 
            { 
                tel:{ 
                    message:"The tel is not valid", 
                    validators:{ 
                        notEmpty:{ 
                          message:"手机号不能为空" 
                        }, 
                        stringLength:{ 
                            min:11, 
                            max:11, 
                            message:"手机号必须为 11 位" 
                        }, 
                        regexp:{ 
                            regexp:/^1[34578]\d{9}$/, 
                            message:"手机号错误" 
                        } 
                        //手机号已经注册过未写 
                    } 
                }, 
                StuId:{ 
                    message:"The StuId is not valid", 
                    validators:{ 
                            notEmpty:{ 
                                message:"学号不能为空" 
                            }, 
        stringLength:{ 
                            min:11, 
                            max:11, 
                            message:"学号必须为 11 位" 
                            }, 
        regexp:{ 
           regexp:/\d{11}/, 
           message:"学号不正确" 
           } 
               } 
                }, 
                password1:{ 
                    message:"The value is not valid", 
                    validators: { 
                        notEmpty: { 
                            message: "密码不能为空" 
                        }, 
                        stringLength: { 

                            min: 6, 
                            max: 20, 
                            message: "密码长度必须在 6~20 之间" 
                        } 
                    } 
                }, 
                password2:{ 
                    message:"The value is not valid", 
                    validators:{ 
                                notEmpty:{ 
                                    message:"密码不能为空" 
                                }, 
                                identical:{ 
                                    field:'password1', 
                                    message:"两次密码输入不一致" 
                                } 
                    } 
                } 
            } 
}); 

b.Cookie 记录用户登录信息函数:
Cookie 的生存周期为 7 天,路径为网站根目录 path = “/”.
函数功能为,当用户进入 index 界面后,本文转载自http://www.biyezuopin.vip/onews.asp?id=15032程序先判断上次登录时候是否设置 Cookie,并判断是否到期,若有 Cookie 并没到期,则将上次设置到
Cookie 中的用户名和密码回填到表单中,用户选择是否记住密码,若选择记住,则此次登陆后,Cookie 中的内容被延至 7 天后到期,若未选中则 Cookie 被清空。
$(function () {
//Cookie 模块

if(KaTeX parse error: Expected 'EOF', got '&' at position 29: …nname')!='null'&̲&.cookie(‘logincode’)!=‘null’&&KaTeX parse error: Expected 'EOF', got '&' at position 21: …ie('loginname')&̲&.cookie(‘l
ogincode’))//判断 Cookie 是否有效 若有效则显示出来
{
KaTeX parse error: Expected 'EOF', got '#' at position 3: ('#̲loginname').val….cookie(‘loginname’));
KaTeX parse error: Expected 'EOF', got '#' at position 3: ('#̲logincode').val….cookie(‘logincode’));
}

$('#loginbut').click(function () { //登陆模块 发送 AJAX 请求到 loginroute 处理路由  (界面始终不跳转) 
  var loginname=$('#loginname').val(); 
  var logincode =$('#logincode').val(); 
  var data={"loginname":loginname,"logincode":logincode}; 
    $.ajax({ 

        url:"http://localhost:3000/loginroute", 
        data:data, 
        success:function (data,stau) { 
            if(stau == 'success') 
            { 
                if($("#remember").is(":checked")==true)//若选中设置 cookie 
                { 
                    $.cookie('loginname',loginname,{path:"/",expires:7}); 
                    $.cookie('logincode',logincode,{path:"/",expires:7}); 
                } 
                else//若没选中 清除 cookie 
                { 
                    $.cookie('loginname',null); 
                    $.cookie('logincode',null); 
                } 
                if(data.search('false')!=-1) 
                { 
                    alert("用户名或密码错误^_^false"); 
                    return; 
                } 
                if(data.search('StuId')) 
                { 

window.location.href=“http://localhost:3000/Homepage?”+“loginname=”+loginname+“&logincode=”+loginco de;
return;
}
}
else
{
alert(stau);
}
},
error:function () {
alert(“用户名或密码错误_”);
},
})
});

2.动态模块与账号的注销退出:
实现功能:
个人信息编辑及头像上传。发布文字动态。

发布图片和文字动态。评论及回复模块。
加载用户及其关注的好友当天发布过的动态及评论。 点击查看更多,可查看用户之前发布过的动态及评论。
主要代码解释:
a.加载用户发布的动态,用户登录进入后,通过 ajax 请求服务器返回当天的动态,并通过动态创建表单展示到页面。
//加载当天动态
function load_dongtai(data)
{
$.ajax({
url:“/dongtai”,
data:data,
success:function (dat,name)
{
if(name=“success”)
{
var dat = JSON.parse(dat);
//console.log(dat);
var len = dat.length;
//console.log(len);
for(var i = len-1;i>=0;i–)
{
dealOneDongtai(dat[i]);
}
}else
{
console.log(name);
}
}
});
}
//通过动态创建表单,处理一条动态函数。
//单个动态处理函数
function dealOneDongtai(data)
{
//console.log(data);
var showDT = $(‘#showDT’);
var h2 = $(‘

’+data[‘xuehao’]+‘:


’);
showDT.append(h2);
if(data[‘imageinfo’])
{

    var img = $('<img src="'+ data['imageinfo']+'"100px" />'); 
    showDT.append(img); 
} 
if(data['dongtai']) 
{ 
    var dongtai = $('<p style="font-size: 18px">'+data['dongtai']+'</p>'); 
    showDT.append(dongtai); 
} 
   var date = new Date(data['shijian']); 
   var shijian = $('<p style="font- size:15pt">'+date.getUTCFullYear()+"/"+(date.getMonth()+1)+"/"+date.getDate()+'</p>'); 
   showDT.append(shijian); 
    var Pbtn = $('<button class="ping_lunclass" onclick="pinlun_show(this)" id='+data['flag']+'>评论

‘); //评论按钮
showDT.append(Pbtn);
var pin_input = KaTeX parse error: Expected '}', got 'EOF' at end of input: … showDT.append((’


‘));
var tpinglun = pinglun.split(’#‘);
var pinglen = tpinglun.length;
for(var i = 1;i<pinglen;i++)
{
showDT.append( KaTeX parse error: Expected 'EOF', got '#' at position 73: …lass" id="'+i+"#̲"+data['flag']+…(’
'));
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
资源下载地址:https://download.csdn.net/download/sheziqiong/86783538
资源下载地址:https://download.csdn.net/download/sheziqiong/86783538


网站公告

今日签到

点亮在社区的每一天
去签到