成都平台网站建设公司排名,北京的制作网站的公司,seo教程技术资源,自适应网站建设优化建站在servlet基础中#xff0c;我们#xff1a;
用以下几种方式实现数据存储和共享#xff1a; 1#xff09;在客户端页面和服务器端程序之间#xff0c;用request中的getParameter()方法共享数据 2#xff09;在请求和请求之间#xff0c;可以用get/setAttribute方法来共…在servlet基础中我们
用以下几种方式实现数据存储和共享 1在客户端页面和服务器端程序之间用request中的getParameter()方法共享数据 2在请求和请求之间可以用get/setAttribute方法来共享数据转发的时候 3同一个servlet对象可以用servletConfigxml来共享数据主要是获取配置信息 getServletName();获取servlet的名称也就是我们在web.xml中配置的servlet-name
getServletContext(); 获取ServletContext对象
getInitParameter(String); 获取在servlet中初始化参数的值。这里注意与全局初始化参数的区分。这个获取的只是在该servlet下的初始化参数
getInitParameterNames(); //获取在Servlet中所有初始化参数的名字也就是key值 4在整个web应用范围内通过ServletContext的set/getAttribute方法共享数据 ServletContext: 代表的是整个应用。一个应用只有一个ServletContext对象。是单实例。
在一定范围内当前应用使多个Servlet共享数据。 现在我们说一个新的话题会话管理
session/cookie
什么是会话 会话可简单理解为用户开一个浏览器点击多个超链接访问服务器多个web资源然后关闭浏览器整个过程称之为一个会话。
•会话过程中要解决的一些问题
–每个用户不可避免各自会产生一些数据程序要想办法为每个用户保存这些数据。
–例如用户点击超链接通过一个servlet购买了一个商品程序应该想办法保存用户购买的商品以便于用户点结帐servlet时结帐servlet可以得到用户购买的商品为用户结帐。
•Cookie
–Cookie是客户端技术程序把每个用户的数据以cookie的形式写给用户各自的浏览器。当用户使用浏览器再去访问服务器中的web资源时就会带着各自的数据去。这样web资源处理的就是用户各自的数据了。
•HttpSession
–Session是服务器端技术利用这个技术服务器在运行时可以为每一个用户的浏览器创建一个其独享的HttpSession对象由于session为用户浏览器独享所以用户在访问服务器的web资源时可以把各自的数据放在各自的session中当用户再去访问服务器中的其它web资源时其它web资源再从用户各自的session中取出数据为用户服务。
总结cookie存在客户端session存在服务器端
cookie API:
public Cookie(String name,String value)
setValue与getValue方法
setMaxAge与getMaxAge方法 (秒)
setPath与getPath方法
setDomain与getDomain方法
getName方法
使用cookie的大概步骤
1创建并向客户端发送Cookie
•创建Cookie对象
–调用Cookie的构造方法给出Cookie的名称和Cookie的值二者都是字符串
•Cookie c new Cookie(“userName”,”a1234”)
•设置最大时效
–如果要告诉浏览器将Cookie存储到磁盘上而非仅保存在内存中使用setMaxAge方法(参数为秒数)
–c.setMaxAge(60*60*24*7)//一周(正数)
•将Cookie放入到HTTP响应中
–使用response.addCookie(c)
–如没有这一步将不会有任何Cookie被发送到浏览器
2从客户端读取Cookie
Cookie[] cookies request.getCookies();
if(cookies ! null){for(Cookie cookie : cookies){if(userId.equals(cookie.getName())){//doSomethingWith(cookie.getValue()); }}
}session
同一颜色为一次逻辑顺序为1234 session 主要API
•getAttribute()
–从会话对象中提取出一个之前存储的属性值
•如果没有找到与名称相关联的值则返回null
•setAttribute()
–设置会话对象的属性名称和属性值
•removeAttribute()
–移除与名称关联的值
•getAttributeNames()
–返回会话中所有属性的名称
•getId()
–返回唯一的标识符
使用session的大概步骤
//获取HttpSession对象设置相关属性
HttpSession session req.getSession();
session.setAttribute(userName, userName);
//获取HttpSession对象取出相关属性
HttpSession session req.getSession();
session.getAttribute(userName, userName); 分享一张尚学堂的我觉得很好的图