SmartUpload应用

首先,在讲SmartUpload应用前,我讲一个简单实用的文件编辑器(编辑器可以调节字体大小、样式、颜色以及插入表情图标等功能)。

文件编辑器——如图所示:1-1

 设置文件编辑器步骤:

1、复制fckeditor包到项目。 

  1-2

没有的话,搜索jquery插件库,查询文件编辑器,就可以查找到各种类型的文件编辑器。

如图所示(为jQuery插件库的官网):1-3  

2、将jar包放入WEB-INF下的lib中(图1-2中的3个jar文件)

3、导入引用代码。

<%@taglib prefix="fc" uri="http://java.fckeditor.net" %>

prefix:标签          prefix="(可自定义)"

 主要代码:效果图为1-1

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@taglib prefix="fc" uri="http://java.fckeditor.net" %>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form action="doindex.jsp">
		<fc:editor instanceName="str"></fc:editor>
		<input type="submit" value="提交">
	</form>
</body>
</html>

关于SmartUpload,首先介绍一下:

SmartUpload组件 :专门用于实现文件上传及下载的免费组件

SmartUpload组件特点:

使用简单:编写少量代码,完成上传下载功能;能够控制上传内容 ;

能够控制上传文件的大小、类型

缺点:目前已停止更新服务

SmartUpload使用步骤:

1、在项目中引入jspsmartupload.jar文件(导包)

2、设置表单的enctype属性

<form action="xx.jsp" enctype="multipart/form-data" method="post">

</form>

SmartUpload类及方法 

          属性名称

            说  明

public final void initialize(PageContext pageContext)

执行上传和下载的初始化工作,必须实现

public void upload()

实现文件数据的上传,在initialize方法后执行

public int save(String pathName)

将全部上传文件保存到指定的目录下,并返回保存的文件个数

public void setAllowFilesList(String ExtList)

指定允许上传的文件扩展名,接收一个扩展名列表,以逗号分隔

public void setDeniedFilesList( String   fileList)

指定了禁止上传的文件扩展名列表,每个扩展名之间以逗号分隔

public void setMaxFileSize(long filesize)

设定每个文件允许上传的最大长度

public  void setTotalMaxFileSIze(long totalfilesize)

设定允许上传文件的总长度


File类:

1、封装了单个上传文件所包含的所有信息

2、常用方法 

          方法名称

            说  明

saveAs(String destFilePathName)

将文件保存,参数destFilePathName是保存的文件名

isMissing( )

判断用户是否选择了文件,即对应表单项是否为空,返回值为boolean类型

public String getFieldName( )

获取表单中当前上传文件所对应的表单项的名称

public String getFileName( )

获取上传文件的文件名称,不包含路径

Files类:

1、封装了所有上传文件的信息集合

2、常用方法

          属性名称

            说  明

public int getCount()

取得文件上传的数目

public File getFile(int index)

取得指定位置的File文件对象

public long getSize()

取得上传文件的总长度

public Collection getCollection()

将所有上传文件对象以Collection的形式返回


 文件上传的实现:运用了SmartUpload和File类中的方法

上传图片页面重点代码:sendFile.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<meta charset="UTF-8">
<title>上传图片</title>
</head>
<body>
	<img alt="" src="onload/a5.gif">
	<hr>
	<form action="dosendFile.jsp" enctype="multipart/form-data" method="post">
		<input type="file" name="myfile"><br>
		<input type="submit" value="开始上传">
	</form>
</body>
</html>

接收图片页面:dosendFile.jsp

<%@page import="com.jspsmart.upload.File"%>
<%@page import="com.jspsmart.upload.SmartUpload"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%
	//创建SmartUpload对象
	SmartUpload su = new SmartUpload();
	//初始化
	su.initialize(pageContext);
	//声明一个File对象 用来接收上传的文件
	File file = null;
	//设置允许上传的文件类型
	su.setAllowedFilesList("jpg,png,gif");
	//设置不允许上传的文件类型
	su.setDeniedFilesList("bat,exe,mp4");
	//设置单文件大小
	su.setMaxFileSize(30000);
	//设置总文件大小
	su.setTotalMaxFileSize(50000);

	//设置编码
	su.setCharset("utf-8");
	//开始上传
	su.upload();
	//获取文件集合中的第一个文件
	file = su.getFiles().getFile(0);
	String filePath = "";
	if (!file.isMissing()) {
		//拼接文件上传到服务器的 路径
		filePath = "onload/" + file.getFileName();
		//上传到服务器 保存到指定路径
		file.saveAs(filePath, SmartUpload.SAVE_VIRTUAL);
	}
	out.print("上传成功");
	out.print("<img src='" + filePath + "'>");
%>

效果图:1-3

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值