0
点赞
收藏
分享

微信扫一扫

application作用域

1.1定义

  • application:中文意思是应用程序,就好比手机上的app。应用程序能够利用计算机操作系统的某些服务,也可以利用其它应用程序所支持的服务。
  • jsp内置对象之一

1.2作用

  • 存储数据访问来自任何页面变量,类似于session。不同之处在于,所有用户分享一个application。而session是一个对象一个session对象
  • 一起协同工作以完成某项任务的一组 ASP 文件称作应用程序(application)
  • 因为application持有会被应用程序中的许多页面使用信息(比如数据库连接信息),所以可以从任何页面访问这些信息。同时也意味着你可在一个地点改变这些信息,任何这些改变会自动反应在所有的页面上

1.3 创建

服务器启动时候创建

1.4 销毁

服务器关闭时销毁

1.5 案列演示

1.5.1使用application实现统计在线用户个数(低配版)
<%
//实现用户在线数量
Integer count = 0;
//从application作用域里面获取当前的在线用户数量
Integer c =(Integer)application.getAttribute("count");
//如果用户数量不为空,赋给变量count
if( c != null){//有数据
	count = c;
}
count++;//把当前的用户加进去

application.setAttribute("count", count);
%>
你是第:<%=application.getAttribute("count")%>

在这里插入图片描述
通过这个案列可以看出application可以多个用户操作同一作用域,session却不可以。application作用域最广

1.5.2富文本编辑器(需要下载插件)
1.5.2.1怎么使用(ckeditor4插件)。

如图所示:

  • 1.把已经下好的插件复制到静态目录里面,如图所示:
    在这里插入图片描述

2.ckeditor4——ckeditor.js。

列如word文档
<!-- 1.导入ckeditor.js插件 -->
<script type = "text/javacript" src="<%=request.getContextPath() %>/home/ckeditor4/ckeditor.js"/>
<!-- 2.在页面引入ckeditor.js文件 -->
<!--注意:name值随便取,但是不能没有name值,会报错-->
<textarea rows="" class = "ckedtor" name = "ckedtor1" cols=""></textarea>

效果如图所示:
在这里插入图片描述

1.5.3文件上传(需要架包smartupload.jar)
  1. 把已经下载的的插件导入lib里面,如图所示:
    在这里插入图片描述

  2. 设置form表单的enctype属性:。

文件上传步骤(在servlet包操作):
String path;//保存图片路径
try {
	// 1.创建SmartUpload对象
	SmartUpload su = new SmartUpload();
	// 2.设置SmartUpload对象的编码
	su.setCharset("utf-8");
	// 3.(上传初始化)初始化SmartUpload对象,里面传的是pageContext对象
	su.initialize(this.getServletConfig(),req,resp);
	// 4.设置文件上传类型
	su.setAllowedFilesList("jpg,gif,png");
	// 5.设置文件不能上传类型
	su.setDeniedFilesList("exe,mp3,avi,mp4");
	// 6.设置上传文件大小为50M
	su.setMaxFileSize(50);
	// 7.准备上传
	su.upload();
	// 8.得到第一个上传的文件(单文件)(多文件:su.getFiles。返回一个数组)
	File file = su.getFiles().getFile(0);
	// 9.如果选择了文件
	if(!file.isMissing()) {//miss错过
	/**
	 * 文件路径中间的间隔符:
	 * windows:\
	 * linux:/
	 * windows:c:\test\sa.jsp
	 * linux:c:/test/sa.jsp
	 */
	//10.拼接路径(不清楚是什么系统的1)java.nio.File.separator
	path = "upload"+java.io.File.separator+file.getFieldName();
	}
	// 11.开始上传文件(是上传到服务器里面)
	file.saveAs(path);	
	} catch (Exception e) {
	// TODO Auto-generated catch block
		e.printStackTrace();
	}

2.session

2.1创建

reqeust.getSession();它是用于获取session.
//什么时候创建
//1.如果在服务器端,有一个session的id值与其一样,不创建,直接使用。
//2.如果在服务器端,没有这个session的。id值,或者有name值那么会创建。

2.2销毁

1.超过默认时间:30.销毁
2.设置session超时时间
setMaxInactiveInterval(int interval) 
3.invalidate()手动销毁

3.requset

3.1创建

请求发生时候

3.2销毁

响应产生
举报

相关推荐

0 条评论