java script 代码放在jsp 还是放在servlet_ServletContext JSP

会话:

四种:1 :Session–保存在服务器上默认的30分

2:Cookie  客户端的,maxAge

3:重写 url - > url;jsessionid=xxxxxxx - > response.encodeRedirectUri(url);

4:隐藏表单  

1:ServletContext

2:JSP–

3:用JSP来重构项目。

1:ServletContext

特点:

1:一个应用程序一个唯一的ServletCOntext对象。在/20160425这个项目中,这个对象只有一个。2:此对象也是一个域对象。setAttribute/getAttribute/removeAttribute

做为域对象,保存所有会话,所有请求,都可以访问到的数据。

对比:

Session只保存当前用户的会话信息。

这个用户在多个页面上跳转和重定向时,共享的数据。

Request只保存当前请求的会话信息。

在forward/incoude在多资源之间转发时,共享数据。

3:生命周期是:当项目启动时,直接创建,当项目关闭时,就会被销毁。

4:此对象由容器创建。

功能:

1:获取在 web.xml中配置的全局初始化参数

在任意的Servlet中通过SerlvteContext对象来获取配置初始化参数:

// 1:获取ServletCOntext对象,以下获取的方式,都是一只对象

ServletContextapp= getServletContext();

app= getServletConfig().getServletContext();

app=request.getServletContext();

app=request.getSession().getServletContext();

// 2:获取初始化参数

Stringname=app.getInitParameter("name");

Stringaddr=app.getInitParameter("addr");

out.print("name is:"+name+"
");

out.print("addr is:"+addr);

2:显示当前项目的真实的目录

//获取项目的真实的目录,如果只有/则表项目项目的根在哪儿,显示的是这个项目的运行目录 - 》Tomcat/webapps/20160425/

StringrealPath=app.getRealPath("/");//

System.err.println("项目的真实的目录:"+realPath);

显示所有相片:

1:获取放相片的真实的目录File对象。

2:遍历里面的所有相片。

protectedvoiddoGet(HttpServletRequestrequest, HttpServletResponseresponse)

throwsServletException, IOException {

response.setContentType("text/html;charset=UTF-8");

PrintWriterout=response.getWriter();

// 1:获取放相片的真实的目录

Stringpath= getServletContext().getRealPath("/photos");

Filefile=newFile(path);

String[]strs=file.list();//[a.jpg,b.jpg,c.jpg]

//2:如何才可以显示所有相片

for(Stringstr:strs){

Stringimg="%22+str+%22";

out.print(img);

}

}

3:做为域对象保存所有人共享的数据,如可以实现聊天程序

//统计这个页面被刷新的次数

Integercount=(Integer)app.getAttribute("count");

if(count==null){

count=1;

}else{

count++;

}

//放回到ServletContext

app.setAttribute("count",count);

out.print("访问量为:"+count);

三个组件:

Servlet

三个域对象

Filter

Listener

2:JSP

Java Server Pages - > Java开发的服务器上的页面  - 》动态页面。

JSP 通常以 *.jsp文件结尾的文件。

*.jsp文件,看上去像是HTML,本质上是Servlet。

1:快速 JSP示例

修改JSP文件生成的编码:

2:详解JSP就是Servlet

运行,显示这个页面:

JSP页面编译过程: one.jsp  > one_jsp.java  -> one_jsp.class

1.jsp   - > _1_jsp.java  - > _1_jsp.class

源代码:

(略)

JSP 文件是Servlet的扩展。里面的开发的html文件。默认都 在_jspService方法中通过out对象来输出。

3:JSP的语法

1:jsp的java代码块 也叫:scriptlets

里面是java代码。

所有开发的java代码。默认都在_jspService方法中。

%>

String name ="Jack";

String addr ="山东济南";

%>


out.print(name);

%>

2:隐藏对象–直接不用声明就可以使用的变量

在java代码块中,可以使用9个隐藏对象

隐藏对象

request

HttpServletRequest

String userAgent = request.getHeader("user-agent");

System.out.println(userAgent);

%>

response

HttpServletRepsonse

response.sendRedirect(request.getContextPath()+"/index.html");

%>

session

httpSession

String id = session.getId();

out.print("
ID is:"+id);

%>

application

ServletContext

String path = application.getRealPath("/");

out.print("


realpath:"+path);

%>

out

JspWriter

是PrintWriter的包装类。

out.print("
ID is:"+id);

%>

config

ServletConfig对象

这个jsp页面在Web.xml配置参数

two-jsp

/WEB-INF/two.jsp

email

我的邮件@我的地址.com

two-jsp

/two.html

配置的初始化参数是:

String mail = config.getInitParameter("email");

out.print(mail);

%>

page

Object

表示当前的JSP类自己

exception

Throwable

表示异常对象

只有当页面配置的指令:

才会有这个对象。

pageContext

PageContext

1:表示页面的域对象。

setAttribute/getAtttribute/removeAttribute

2是一个工具类。

1:获取其他对象

2:操作其他域对象中的值

本质上,所有上面的这些对象,都是_jspService方法的中的参数:

3:输出

Out.printl;n(…);

%>

4:MVC与项目的开发

Model _ 数据封装对象JavaBean

View;展示层–html,jsp

Controller–控制层 用于与用户交互。Servlet。

修改上面的页面,使用JSP输出数据

// 查询

Listlist=dao.query();

//将查询的结果,放到req

request.setAttribute("list",list);

//转发

request.getRequestDispatcher("/jsps/show.jsp").forward(request,response);

显示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值