重温jsp①

Jsp就是一个servlet

servlet的缺点

不适合设置html响应体,需要response。Getwriter.print();

优点:动态资源,可以编程。

Jsp:在原有的html中加入了Java代码。

 

Jsp和servlet的分工

Jsp:作为请求发出的页面,例如显示表单,超链接

作为请求结束的页面,例如显示数据的页面。

Servlet:作为请求中处理数据的环节。

 

Jsp脚本 生成的Java源码可以在workCatalinalocalhost对应的项目名jsp中看到源码

在第一次访问该jsp页面的时候生成。编译成class文件,并生成对象,调用service方法

<%....%>内可以放方法里面放的东西 必须要加分号,以为生成的是Java代码。

比如 <%Integer s=(Integer)request.getAttribute("result"); %>

在对应的Java代码中是Integer s=(Integer)request.getAttribute("result");

<%=….%>内放页面中显示的东西

例如<%=s %>

在对应的Java代码中是这样的:out.print(s );

<%!....%>内放类中可以放的东西

    <%!int a=6; %>

在对应的Java代码中,

public final class form_jsp extends org.apache.jasper.runtime.HttpJspBase

implements org.apache.jasper.runtime.JspSourceDependent {

 

int a=6;

 

 

jsp中的页面元素对应的Java源码out.write(" This is my JSP page. <br> ");

 

jsp注释

<%-- --%>当服务器把jsp编成Java文件时已经忽略了注释的部分!

 

 

Cookie

<body>

保存cookie <br>

<%

    Cookie cookie1=new Cookie("aaaa","AAAA");

    response.addCookie(cookie1);

      

    Cookie cookie2=new Cookie("bbbb","BBBB");

    response.addCookie(cookie2);

%>

</body>

 

 

<body>

获取cookie <br>

<%

    Cookie[]cookies=request.getCookies();

    for(Cookie c:cookies){

        out.print(c.getName()+"=="+c.getValue()+"<br>");

    }

%>

</body>

 

Cookie的maxAge:cookie的最大生命,即cookie可保存的最大时长,以秒为单位,

MaxAge>0:浏览器会把cookie保存到客户机的硬盘上。

MaxAge<0:cookie只在内存中存在,当用户关闭浏览器时,同时cookie也就灭亡了

MaxAge=0:浏览器会马上删除这个cookie

 

Cookie 的路径 ---访问路径在cookie的路径下面或同级 才能看见cookie的存在

当前文件所在的目录,不包含就不带, 父级目录下有cookie访问子目录可也看到cookie

看请求的cookie,存储用响应

 

 

Cookie的共享域 domain

Domain用来指定cookie中的域名!当多个二级域名共享cookie时才使用。

Domain:cookie.setDomain(".baidu.com");

Cookie.setPath("/");

 

 

原文地址:https://www.cnblogs.com/chengzhipcx/p/4993227.html