博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java网站开发的一些问题以及解决(cookie消失,上传头像,js等)
阅读量:5823 次
发布时间:2019-06-18

本文共 2175 字,大约阅读时间需要 7 分钟。

1.首先是cookie的问题,很多人都是遇到了将数据存储到cookie中并且add到response之中,但是还有返回其他页面或者刷新页面cookie消失的情况,除了设置cookie的存活时间外,

还要讲你需要保存的cookie(一般都是用户名和密码,而一般登录页面都是在开始),所以最好将cookie的保存路径设置到项目根路径,这样下级路径才能访问到。具体代码如下

Cookie cookie=new Cookie("loginusername",username);                    Cookie cookie1=new Cookie("loginpassword",password);                    cookie.setMaxAge(24*60*60*30);//默认记住一个月                    cookie.setPath("/CanteenEvaluteSystems");                    cookie1.setPath("/CanteenEvaluteSystems");                    cookie1.setMaxAge(24*60*60*30);                    resp.addCookie(cookie);                    resp.addCookie(cookie1);
//根据cookie的name获取对应的值的方法var cookieUtil={    get:function(name){        var cookieName=encodeURIComponent(name)+"=",        cookieStart=document.cookie.indexOf(cookieName),        cookieValue=null;        if(cookieStart>-1){            var cookieEnd=document.cookie.indexOf(";",cookieStart);            if(cookieEnd==-1){                cookieEnd=document.cookie.length;            }            cookieValue=decodeURIComponent(document.cookie.substring(cookieStart+cookieName.length,cookieEnd));        }        return cookieValue;    },};

 

2.上传网页头像的三种方法,

1.base64编码传到后台,解码,通过流存储到一个文件夹,将图片路径保存到数据库,适合小型项目,图片量较少的开发,具体操作之前的博客已有

2.base64编码传到后台,去掉base开头固定格式,之后解码将byte数组存储到数据库,之后读取数据库的二进制,通过response.outputstream.write将二进制显示到页面,自然而然变成图片

3.base64编码传到后台,去掉base开头固定格式,之后解码将byte数组存储到数据库,再将base编码完好无损传到前台,前台显示为<img src="你所传来的base64编码【固有开头格式不能落下】"/>即为你的图片

需要代码的话评论这里就不发了,有点乱

3.判断鼠标是否在某一个控件上的js

var div = document.getElementById("infodiv");    var e = event || window.event;      var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft;      var scrollY = document.documentElement.scrollTop || document.body.scrollTop;      var x = e.pageX || e.clientX + scrollX;      var y = e.pageY || e.clientY + scrollY;      var divx1 = div.offsetLeft;    var divy1 = div.offsetTop;    var divx2 = div.offsetLeft + div.offsetWidth;    var divy2 = div.offsetTop + div.offsetHeight; //如果不在的话    if( x < divx1 || x > divx2 || y < divy1 -10|| y > divy2){        $("#infodiv").css("display","none");    };

 

转载于:https://www.cnblogs.com/qwqwQAQ/p/8534663.html

你可能感兴趣的文章
第四章 mybatis批量insert
查看>>
Java并发框架——什么是AQS框架
查看>>
【数据库】
查看>>
Win配置Apache+mod_wsgi+django环境+域名
查看>>
linux清除文件内容
查看>>
WindowManager.LayoutParams 详解
查看>>
find的命令的使用和文件名的后缀
查看>>
Android的Aidl安装方法
查看>>
Linux中rc的含义
查看>>
曾鸣:区块链的春天还没有到来| 阿里内部干货
查看>>
如何通过Dataworks禁止MaxCompute 子账号跨Project访问
查看>>
js之无缝滚动
查看>>
Django 多表联合查询
查看>>
logging模块学习:basicConfig配置文件
查看>>
Golang 使用 Beego 与 Mgo 开发的示例程序
查看>>
+++++++子域授权与编译安装(一)
查看>>
asp.net怎样在URL中使用中文、空格、特殊字符
查看>>
路由器发布服务器
查看>>
实现跨交换机VLAN间的通信
查看>>
jquery中的data-icon和data-role
查看>>