当前位置: 首页 > news >正文

泉州seo-泉州网站建设公司租房网站开发报告

泉州seo-泉州网站建设公司,租房网站开发报告,网站开发公司源码,站酷网电脑版Apache Maven是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档。 Maven模型有: 项目对象模型、依赖管理模型、插件 会话技术: 会话&#xff1a…

Apache Maven是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档。

Maven模型有:

项目对象模型、依赖管理模型、插件


会话技术:

会话:浏览器和服务端进行请求发送和响应的过程

会话跟踪:一种维护浏览器状态的方法,服务器需要识别多次请求是否来自于同一服务器,以便在同一次会话的多次请求之间共享数据。

服务器用来识别浏览器的过程就是会话跟踪。

现在的浏览器和服务器不支持数据共享是因为

浏览器和服务器之间使用的是HTTP请求来进行数据传输

HTTP协议是无状态的,每次浏览器向服务器请求时,服务器都会视为新的请求

HTTP协议设计成无状态的目的是让每次请求之间相互独立,互不影响

请求与请求之间独立后,就无法实现多次请求之间的数据共享

小结:HTTP协议是无状态的,靠HTTP协议无法实现会话跟踪;

           想要实现会话跟踪,需要用到Cookie和Session

Cookie、Session这两个技术都可以实现会话跟踪,最大的区别是:Cookie存储在浏览器端,而Session存储在服务器端。

客户端会话跟踪技术:Cookie

Cookie的操作分为两类——发送Cookie、获取Cookie

发送Cookie:

1.创建Cookie对象,并设置数据
Cookie cookie = new Cookie("key","value");

2.发送Cookie到客户端:使用response对象
response.addCookie(cookie);

@WebServlet("/cookie")
public class CookieServlet extends HttpServlet{@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {// 发送Cookie// 1. 创建Cookie对象Cookie cookie = new Cookie("name", "tzp");// 2. 使用response对象发送Cookieresp.addCookie(cookie);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {doGet(req, resp);}
}
//访问查看Cookie的值为:name=tzp

获取Cookie:

1.获取客户端携带的Cookie,使用request对象

Cookie[ ] cookies = request.getCookies();

2.使用Cookie对象方法获取数据

cookie.getName();

cookie.getValue();

@WebServlet("/getCookie")
public class GetCookieServlet extends HttpServlet{@Overrideprotected void doGet(HttpServletRequest req,HttpServletResponse resp)
throws ServletException,IOException{//获取CookieCookie[] cookies = req.getCookie;//遍历Cookieif(cookies!=null){for(Cookie cookie:cookies){//获取Cookie的名称和值String name = cookie.getName();String value = cookie.getValue();System.out.println(name + ":" + value);}} }@Overrideprotected void doPost(HttpServletRequest req,HttpServletResponse resp)
throws ServletException,IOException{doGet(req,resp);}
}

在访问CookieServlet和GetCookieServlet的中间把浏览器关闭,GetCookieServlet无法再获取到Cookie的数据;默认情况下Cookie存储在浏览器内存中,当浏览器关闭,内存释放Cookie被销毁

所以遇到的问题是如何将Cookie持久化存储:

setMaxAge(int seconds)这个API可以来完成

参数值为:

1.正数:将Cookie写入浏览器所在电脑的硬盘持久化存储,到时间自动删除

2.负数:默认值,Cookie在当前浏览器内存中,当浏览器关闭,Cookie被销毁

3.零:删除对应Cookie

设置Cookie时间:

Cookie cookie=new Cookie("name","tzp");
cookie.setMaxAge(60*60*24*7); //7天存活时间
resp.addCookie(cookie);

Cookie存储中文:

//发送Cookie 创建Cookie对象
String value="彭于晏";
Cookie cookie=new Cookie("name",URLEncoder.encode(value,StandardCharsets.UTF-8));
resp.addCookie(cookie);
----------------------------------------------------------------------------------@WebServlet("/getCookie")
Cookie[] cookies=req.getCookies();
if(cookies!=null){for(Cookie cookie:cookies){String name=cookie.getName();String value= URLDecoder.decode(cookie.getValue(),StandardCharsets.UTF_8);System.out.println(name+":"+value);}
}

服务端会话跟踪技术:Session

存储在客户端的数据容易被窃取和截获,存在很多不安全因素,存储在服务端的数据相比于客户端来说更安全

Session的基本使用:

获取Session对象,使用的是request对象:

HttpSession session = request.getSession();

Session对象提供的功能:

1.存储数据到session域中:

void  setAttribute(String name,Object o)

2.根据key,获取值

Object getAttribute(String name)

3.根据key,删除该键值对

void  removeAttribute(String name)

@WebServlet("/session")
public class SessionServlet extends HttpServlet{@Overrideprotected void doGet(HttpServletRequest req,HttpServletResponse resp)
throws ServletException,IOException{//存储到Session中//1.获取Session对象HttpSession session = req.getSession();//2.存储数据session.setAttribute("username","tzp");}@Overrideprotected void doPost(HttpServletRequest req,HttpServletResponse resp)
throws ServletException,IOException{doGet(req,resp);}
}
@WebServlet("/getSession")
public class GetSessionServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {// 获取数据,从session中// 1. 获取Session对象HttpSession session = req.getSession();// 2. 获取数据Object username = session.getAttribute("username");System.out.println(username);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {doGet(req, resp);}
}

先访问/session,将数据存入Session;再访问/getSession,从Session中获取数据

 通过案例的效果,能看到Session能够在一次会话中两次请求之间共享数据。

注意 : Session 中可以存储的是一个 Object 类型的数据,也就是说 Session 中可以存储任意数据类型
Session是基于Cookie来实现的

Cookie和Session的区别:

存储位置: Cookie 是将数据存储在客户端, Session 将数据存储在服务端
安全性: Cookie 不安全, Session 安全
数据大小: Cookie 最大 3KB Session 无大小限制
存储时间: Cookie 可以通过 setMaxAge() 长期存储, Session 默认 30 分钟
服务器性能: Cookie 不占服务器资源, Session 占用服务器资源
应用场景 :
购物车 : 使用 Cookie 来存储
以登录用户的名称展示 : 使用 Session 来存储
记住我功能 : 使用 Cookie 来存储
验证码 : 使用 session 来存储
结论
Cookie 是用来保证用户在未登录情况下的身份识别
Session 是用来保存用户登录后的数据
http://www.yayakq.cn/news/939197/

相关文章:

  • 做seo要明白网站内天眼通查公司查询入口
  • 嘉兴哪里可以做淘宝网站特定网站开发
  • 做网站成功案例注册地址
  • 凡科建站怎么用阿雷网站建设
  • 韩国化妆品网站金色flash片头电子商务网站设计策划书
  • django企业级问答网站开发网站后期维护很难吗
  • 网站开发售后服务比wordpress轻量的
  • 自己给网站做支付接口广州h5页面设计
  • 建设什么网站比较好网站空间知识
  • 广州微网站开发iis网站伪静态
  • 灵璧做网站html5网站上线模版
  • 怎么在阿里做网站三里屯网站建设
  • 手机端网站建设的费用清单在中国建的网站google可收录吗
  • 做搜狗网站排名淘宝客怎么做网站
  • 怎么更改网站里的tdk广州建设工程交易网
  • 做网站加手机app需要多少钱前端网站开发流程入门
  • 潮州东莞网站建设河南省建筑信息平台
  • 青海医院网站建设公司公众号开通
  • 孝感网站开发选优搏网站导航栏垂直
  • 北京海岸设计公司网站站长之家端口扫描
  • 工作总结加强部门网站建设应用开发框架
  • 天津手机模板建站做网站商城开发什么语言最快
  • 免费网站大全app门户网站建设和检务公开情况自查报告
  • 长沙口碑好网站建设企业看板娘wordpress怎么带声音
  • 《网站建设 补充合同做网页大概需要多少钱
  • 如果网站没有做icp备案吗十大网文平台
  • 兰州网站建设lzwlxc网站开发软件排名
  • wordpress播放器mu38win优化大师怎么样
  • 房产中介网站建设模板电商网站设计公司排行榜
  • html网站建设实录网页广告关不掉怎么办