JavaWeb(ckeditor&smartupload)

该博客介绍了如何使用SmartUpload库在Java Web应用中实现文件上传功能,包括单文件和多文件上传。讲解了设置上传限制、文件保存路径以及获取表单其他字段值的方法,并提供了自动和手动保存文件到服务器的示例代码。
摘要由CSDN通过智能技术生成

上传文件

<body>
<!-- enctype="multipart/form-data"以二进制方式提交表单 -->
      <form action="doindex.jsp" enctype="multipart/form-data" method="post">
      用户名:<input type="text" name="iname"></br> 
      头像:<input type="file" name="ifile" multiple="multiple"></br>
      <input type="submit" value="注册">
      <input type="reset" value="登录">
      </form>
</body>

拿表单的其他值:Request

//拿到表单的其他值
	 Request req=su.getRequest();
	String name=req.getParameter("iname");
	out.print("用户名"+name);

一.单文件上传

只能上传一个

//实例化
	SmartUpload su = new SmartUpload();
	//初始化 pageContext是jsp的九大内置对象之一 作用域仅限于当前的jsp页面
	su.initialize(pageContext);
	//设置相关要求
	su.setCharset("utf-8");//设置编码方式
	su.setAllowedFilesList("jpg,png,jpeg,gif");//设置允许上传的文件类型 用逗号隔开
	su.setDeniedFilesList("exe,jsp,js,bat");//设置禁止上传的文件类型
	su.setMaxFileSize(1024 * 1024 * 2);//B 设置文件的最大大小 不超过2M
	//设置相关服务器内存
	su.upload();

1.自动上传

//--自动找web项目的根目录
	String path = "images/";
	//获取文件
	File file = su.getFiles().getFile(0);
	//判断
	if (!file.isMissing()) {//上传了文件
		//设置文件的编码方式
		file.setCharset("utf-8");
		path += file.getFieldName();//拼接上原有的文件名 images/2.gif
		file.saveAs(path, SmartUpload.SAVE_VIRTUAL);//自动找web项目的根目录
	}
	out.print(path);

2.手动上传

--手动找web项目的根目录
	/* String path="images/";
	//F:\javaWeb作业\javaWeb01\.metadata\.plugins\org.eclipse.wst.server.core\tmp2\wtpwebapps\q6\
	String webPath=this.getServletContext().getRealPath("/");
	//获取文件
		File file = su.getFiles().getFile(0);
		//判断
		if (!file.isMissing()) {//上传了文件
			//设置文件的编码方式
			file.setCharset("utf-8");
			path += file.getFileName();//拼接上原有的文件名 images/2.gif
			file.saveAs(webPath+path);//自动找web项目的根目录
		}
	out.print(webPath+path);

二.多文件上传

//先拿到所有的文件
	Files fs=su.getFiles();
	//先拿到总数目
	for(int i=0;i<fs.getCount();i++){
		//依次拿到每一个文件 依次进行上传
		File file=fs.getFile(i);
		String path = "images/";
		//判断
		if (!file.isMissing()) {//上传了文件
			//设置文件的编码方式
			file.setCharset("utf-8");
			path += file.getFileName();//拼接上原有的文件名 images/2.gif
			file.saveAs(path, SmartUpload.SAVE_VIRTUAL);//自动找web项目的根目录
		}
		out.print(path+"<br/>");
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值