flex和java做的图片上传的小例子
用的是Commons上传组件,下载地址:Commons
网上找的小例子改的,修改了部分错误。
1,FileUpload.java
package com.fileupload;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.nio.charset.Charset;
import java.util.Iterator;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
public class FileUpload extends HttpServlet {
// 限制文件的上传大小
private int maxPostSize = 100 * 1024 * 1024;
public FileUpload() {
super();
}
public void destroy() {
super.destroy();
}
protected void processRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
System.out.println("开始!");
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(4096);
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setSizeMax(maxPostSize);
try {
request.setCharacterEncoding("UTF-8");
List fileItems = upload.parseRequest(request);
Iterator iter = fileItems.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) iter.next();
if (!item.isFormField()) {
String name = item.getName();
System.out.println(name);
String uploadPath = null;
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
uploadPath = request.getRealPath("/");
System.out.println(uploadPath);
item.write(new File(uploadPath +"uploadfile/"+ name));
out.print(name+"上传成功");
}
}
} catch (FileUploadException e) {
e.printStackTrace();
}
System.out.println("结束");
}
prot
相关文档:
昨天看到这样一篇帖子,讨论类加载顺序的,也可以说是初始化顺序的,今天早上找不到了,本来想回复的,现在自己写博客回复了,呵呵
public class Singleton {
private static Singleton obj = new Singleton();
public static int counter1 ;
public static int counter2 = 0;& ......
Graphics2D arg;
float thick=3.0f;
arg1.setStroke(new BasicStroke(thick, BasicStroke.CAP_SQUARE, BasicStroke.JOIN_ROUND));
arg1.drawLine(first.x, first.y, next.x, next.y);
arg1.setColor(Color.red);
......
我们不妨设想,为了创建一个新的线程,我们需要做些什么?很显然,我们必须指明这个线程所要执行的代码,而这就是在Java中实现多线程我们所需要做的一切!
作为一个完全面向对象的语言,Java提供了类 java.lang.Thread 来方便多线程编程,这个类提供了大量的方法来方便我们控制自己的各个线程。
  ......
在java.math包中有个BigDecimal类,通过这个类可以进行精确计算. 我们知道BigDecimal有个setScale(int 精度,int 舍入模式)方法,随之而来问题出现了,当运行如下代码时:
/**
* @author troy(J2EE)
* @version 1.0
*/
import java.math.*;
public class Test{
& ......