web服务器有哪些(web服务器程序主要有哪些)( 二 )



web服务器有哪些(web服务器程序主要有哪些)

文章插图
4.2 JavaBean的作用如果将HTML与Java代码区分开来,那么Java代码将被单独封装到一个处理一些业务逻辑的类中 。那么在JSP页面中调用这个类可以减少HTML和Java代码之间的耦合,简化JSP页面,提高Java程序代码的可重用性和灵巧性 。这与HTML代码不同,Java代码封装的类是一个JavaBean组件 。在Java Web开发中,可以应用这个组件完成业务逻辑的处置,使用JavaBean和JSP结合的开发模式如图所示 。
web服务器有哪些(web服务器程序主要有哪些)

文章插图
4.3 JavaBean的运用JavaBean是用Java语言编写的可重用组件,广泛应用于系统的很多层,如PO、VO、DTO和POJO 。
五、Servlet用户通过点击链接或直接在阅读器的地址栏输入网址来访问Servlet 。Web服务器吸收请求后,不会直接将请求交给Servlet容器 。Servlet容器实例化Servlet,调用Servlet的特定方法(service()),然后发生响应 。响应由Servlet容器返回给网络服务器,网络服务器包装响应并将其作为HTTP响应发送给网络阅读器 。整个过程如图所示:
web服务器有哪些(web服务器程序主要有哪些)

文章插图
六、如何让服务器知道你来过?6.1 Cookie技巧Cookie的作用:通俗地说,用户通过HTTP协议访问服务器时,服务器会向客户端阅读器返回一些Key/Value键值对,并对数据增加一些限制 。当条件满足时,下次用户访问服务器时,数据将被完全带回服务器 。这个功能就像你第一次去超市购物的时候给你买购物卡一样 。您的一些个人信息存储在这张购物卡中 。下次来这个连锁超市,超市会识别你的购物卡,下次直接去购物就好了 。当初W3C设计Cookie的时候,其实考虑的是记录用户在一定时间内访问Web应用的动作路径 。因为HTTP协议是无条件协议,当用户的访问被停止时,后端服务器无法知道下一次访问是否是最后一次访问 。在设计和应用程序时,很容易认为两次访问是同一个人或两个不同的人进行的,这在程序设计和性能上是非常不同的 。例如,在短时间内,如果与用户相关的数据被频繁访问,数据可以被缓存,这可以大大提高数据的访问性能 。Cookies的作用就在这里 。因为是来自同一个客户端的请求,所以每一个请求都会伴随着服务器在第一次访问时设置的信息,这样服务器就可以根据cookie值来划分被访问的用户 。

web服务器有哪些(web服务器程序主要有哪些)

文章插图
@WebServlet("/CookieTest")public class CookieTest extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); Cookie[] cookies = request.getCookies(); PrintWriter out = response.getWriter(); if(cookies!=null){ out.println("上次拜访的时光是:"); for (Cookie cookie : cookies) { if("lastTime".equals(cookie.getName())){ long lastTime = Long.parseLong(cookie.getValue()); Date date = new Date(lastTime); out.println(date.toLocaleString()); }else{ out.println("你是第一来"); Cookie cookie = new Cookie("lastTime", String.valueOf(System.currentTimeMillis())); //给cookie设置一些信息 //cookie.setMaxAge(500); //有效期 //cookie.setPath(uri); //服务器端给客户端一个Cookie response.addCookie(cookie); protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response);复制代码解码和编码(与Cookie无关,只是解决乱码的一种方法)
//传中文,避免乱码 。可以进行编码Cookie cookie = new Cookie("lastTime",URLEncoder.encode("尚", "utf-8"));//取出Cookie值,须要解码URLDecoder.decode(cookie.getValue(),"utf-8");复制代码6.2 Session技巧为什么需要会话?已经介绍过,cookie可以使服务器程序跟踪每个客户端的访问,但是客户端的每次访问都必须返回这些cookie 。如果cookies很多,这将无形中增加客户端和服务器之间的数据传输,Session的出现正是为了解决这个问题 。每次同一个客户端与服务器交互,不需要每次都返回所有的Cookie值,只需要返回一个ID即可,这个ID是客户端第一次访问服务器时生成的,每个客户端都是唯一的 。这样,每个客户端都有一个唯一的ID,客户端只需要返回这个ID,通常是一个以NANE为JSESIONID的Cookie 。

web服务器有哪些(web服务器程序主要有哪些)

文章插图
一个读者去服务器租房子 。服务器记录阅读器的动作和数据,然后给阅读器一把房间钥匙 。然后,每次读者都可以用自己的钥匙打开自己的房间,应用房间里的一切 。当然,你不能打开别人的房间,更不用说打开了 。


推荐阅读