jsp与servlet的一些知识

理解Servlet于JSP的关系:

      JSP引擎:服务器中的小程序,用来把JSP文本文件转换成Servlet;

      JSP基本语法:

                   <%......%>:中间写java代码,其中的代码会copy到JSP引擎生成的Servlet中;

                   <%=表达式%>:这句话相当于<%out.write(表达式)%>

      JSP指令:写在JSP文件中,用于指示JSP引擎生成在Serblet的时候的一些定制

                   <%@ page import="包名"%> :此语法用于指示JSP引擎在生成Servlet时声明响应的包(声明多个包是包之间用“,”连接)

                   <%@ include file="some.jsp"%>:此语法用于指示JSP引擎在生成Servlet时用some.jsp文件中的内容替换<%@ include file="some.jsp"%>所在位置;

       JSP中的内建(隐含)对象:Sun公司标准规定的,在JSP生成Servlet之前声明号的变量;在不同服务器这些变量的名是一致的;这些内建对象对应Servlet的API;

                   如:out:生成响应内容的流对象(相当于PrintWrite out = response.getWriter()中的out);

                           request:请求对象,可应通过request的方法对请求进行操作

                           response:响应对象,可应通过response的方法对响应进行操作

 

Cookie技术:

    Cookie原理:第一次访问服务器时,服务器在响应时,协议头会生成一个Set-Cookie项以 key=value的方式说明了cookie此时浏览器会把该cookie存储在磁盘上,当在此访问时,请求的协议头中会生成一个Cookie项,把cookie的信息传给服务器,此时服务器可以通过request.getCookies();方法获得cookie;

    用法:

        //用来封装Cookie信息的类:Cookie,参数都是字符串

           Cookie cookie = new Cookie("key","value")

       //生成响应头中的Set-Cookie项(添加cookie)

         response.addCookie(cookie)//可以添加多个cookie

         //获得请求中的cookie,注:该方法返回一个Cookie数组;当没有Cookie是方会null;所以要作判断,否则报控制真异常;

         Cookie[] cookies = request.getCookies();

        //遍历cookes

        for(int i=0;i<cookies.length;i++){

             Cookie cookie = cookies[i];

             System.out.println(cookie.getName()+":"+cookie.getValue());

        }

         //可以通过cookie.setMaxAge(expiry);方法来设置cookie保存时间

          //expiry>0;expiry秒后删除 ;<0关闭浏览器删除(默认);=0立即删除

          cookie.setMaxAge(10);//10秒后删除;

          //可以通过cookie2.setPath("路径");设置cookie路径//???

使用Cookie注意的问题:

  1、编码问题:当cookie中的数据有和协议中字符冲突的字符时,可以通过URLEncoder和URLDecoder中的方法进行响应的编码解码来解决;

  2、大小和个数问题:一般一个页面Cookie的最大不超过4k;个数不超过20个;

  3、安全问题://???

  4、路径问题:?

 

 

 

 

 

 

  

 

                   

                   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值