Flex+javaʵÏÖÎļþÉÏ´«
ÓÃÁËÁ½Ììʱ¼äѧϰÁËÏÂFlexºÍjavaÅäºÏʵÏÖÎļþÉÏ´«£¬ÕÒÁ˸öСÀý×Ó¡£Ç°¶Ëµ±È»ÊÇflex£¬ºǫ́ʹÓÃservlet£¬°Ñ´úÂëÌùÉÏÀ´£¬±¸Íü°É£º
FileUpload.java:
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
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;
@SuppressWarnings("serial")
public class FileUpload extends HttpServlet
{
//¶¨ÒåÎļþÉÏ´«µÄ·¾¶
private String uploadPath = "d:\\a\\";
private int maxPostSize = 100*1024*1024;
public FileUpload()
{
super();
}
public void destroy()
{
super.destroy();
}
@SuppressWarnings("unchecked")
protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException
{
System.out.println("Access!");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.print("ÒÑÁ¬½ÓÉÏ!");
//±£´æÎļþµ½·þÎñÆ÷ÖÐ
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(4096);
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setSizeMax(maxPostSize);
try
{
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);
try
{
item.write(new File(uploadPath+name));
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
catch(FileUploadException e)
{
e.prin
Ïà¹ØÎĵµ£º
Root folder
Õâ¸öĿ¼Ӧ¸ÃÌîдtomcatĿ¼Ï£¬ÄǸöjavaÏîÄ¿µÄËùÔÚλÖã¬Èç¹ûΪ´í£¬»á³öÏÖ“ Invalid root. The WEB-INF/flex folder must contain either flex-config.xml or services-config.xml.”ËüÌáʾ¸ÃĿ¼WEB-INF²»´æÔÚflex-config.xml»òservice-config.xmlÎļþ£¬Èç¹ûÊÇÒ»¸öÕý³£µÄjavaÏîÄ¿£¬¾Í»áÓÐÕâ¸öÎļ ......
1.Duplicated Code ´úÂëÖØ¸´¼¸ºõÊÇ×î³£¼ûµÄÒìζÁË¡£ËûÒ²ÊÇRefactoringµÄÖ÷ҪĿ±êÖ®Ò»¡£´úÂëÖØ¸´ÍùÍùÀ´×ÔÓÚcopy-and-pasteµÄ±à³Ì·ç¸ñ¡£ÓëËûÏà¶ÔÓ¦OAOOÊÇÒ»¸öºÃϵͳµÄÖØÒª±êÖ¾¡£ 2.Long method ËüÊÇ´«Í³½á¹¹»¯µÄ“ÒŶ¾”¡£Ò»¸ö·½·¨Ó¦µ±¾ßÓÐ×ÔÎÒ¶ÀÁ¢µÄÒâͼ£¬²»Òª°Ñ¼¸¸öÒâͼ·ÅÔÚÒ»Æð¡£ 3.Large Class ´óÀà¾ÍÊÇÄã°ÑÌ«¶ ......
Æ¥ÅäÌØ¶¨Êý×Ö£º
^[1-9]d*$¡¡ ¡¡ //Æ¥ÅäÕýÕûÊý
^-[1-9]d*$ ¡¡ //Æ¥Å为ÕûÊý
^-?[1-9]d*$¡¡¡¡ //Æ¥ÅäÕûÊý
^[1-9]d*|0$¡¡ //Æ¥Åä·Ç¸ºÕûÊý£¨ÕýÕûÊý + 0£©
^-[1-9]d*|0$¡¡¡¡ //Æ¥Åä·ÇÕýÕûÊý£¨¸ºÕûÊý + 0£©
^[1-9]d*.d*|0.d*[1-9]d*$¡¡¡¡ //Æ¥ÅäÕý¸¡µãÊý
^-([1-9]d*.d*|0.d*[1-9]d*)$¡¡ //Æ¥Å为¸¡µãÊý
^-?([1-9]d*.d*| ......
/ÓÉÓÚJAVAÓïÑÔµÄÊý¾ÝÀàÐͶ¼ÊÇÓзûºÅÀàÐÍ£¬¶øC# C++Ò»°ãÊý¾ÝÀàÐͶ¼ÊÇ·ÖÓзûºÅºÍÎÞ·ûºÅ,
//Òò´ËÔÚͨÐŹý³ÌÖд«µÝµÄByte[]ÎÞ·¨Ö±
½Óת»»³ÉC#ÐèÒªµÄÀàÐÍ£¬
//ÒÔǰµ¹ÊÇûעÒâÕâЩϸ½Ú£¬ÒòΪһ°ãÓÃÒ»ÖÖÓïÑÔ±à³Ì£¬
//´ó¶¼ÓÐÄÚÖõÄת»»·½·¨¡£¿çÓïÑÔ»·¾³µÄת»»¾ÍµÄ×Ô¼º¶¯
ÊÖÏë°ì·¨ÁË¡£
1¡¢javaµÄByte[]ת»»³Éc#µÄInt32
privat ......