java¶ÔFile»ù±¾²Ù×÷
package com.chinacache.utils;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Logger;
public class FileUtils {
private static final Logger logger = Logger.getLogger(FileUtils.class);
/**
* ÒÆ¶¯Îļþµ½Ö¸¶¨Ä¿Â¼
*
* @param srcFile
* ±»Òƶ¯Îļþ
* @param directory
* Ä¿±êĿ¼
*/
public static void moveFile(File srcFile, File directory) {
renameFile(srcFile, new File(directory, srcFile.getName()));
}
public static void renameFile(File srcFile, File newFile) {
// ²»´æÔÚÍ˳ö
if (srcFile.exists()) {
try {
org.apache.commons.io.FileUtils.moveFile(srcFile, newFile);
} catch (IOException e) {
logger.error("move file [" + srcFile.getAbsolutePath()
+ "] error", e);
}
org.apache.commons.io.FileUtils.deleteQuietly(srcFile);
}
}
/**
* ÒÆ¶¯Ò»ÅúÎļþµ½Ö¸¶¨Ä¿Â¼
*
* @param srcFiles
* Îļþ¼¯ºÏ
* @param directory
* Ä¿±êĿ¼
*/
public static void moveFiles(File[] srcFiles, File directory) {
for (int i = 0; i < srcFiles.length; i++) {
moveFile(srcFiles[i], directory);
}
}
/**
* ÒÆ¶¯Ò»ÅúÎļþµ½Ö¸¶¨Ä¿Â¼
*
* @param srcFiles
* Îļþ¼¯ºÏ
* @param directory
* Ä¿±êĿ¼
*/
public static void moveFiles(List<File> srcFiles, File directory) {
for (int i = 0; i < srcFiles.size(); i++) {
moveFile(srcFiles.get(i), directory);
}
}
public static boolean isAllDirectory(File... file) {
for (int i = 0; i < file.length; i++) {
if (!file[i].exists() || file[i].isFile() || !file[i].canRead()
|| !file[i].canWrite()) {
logger.error("Can't find this file["
+ file[i].getAbsolutePath()
+ "] or is not a Directory. or can't read or write");
return false;
}
}
return true;
}
/**
* »ñȡĿ±êĿ¼ÖÐÎļþ´óС´óÓÚÖ¸¶¨ÖµµÄÎļþ
*
* @param srcDir
*
Ïà¹ØÎĵµ£º
JAVAѧϰµÄÒ»Ð©ÖØµã
1. JavaÓïÑÔ»ù´¡
̸µ½JavaÓïÑÔ»ù´¡Ñ§Ï°µÄÊé¼®£¬´ó¼Ò¿Ï¶¨»áÍÆ¼öBruce EckelµÄ¡¶Thinking in Java¡·¡£ËüÊÇÒ»±¾Ð´µÄÏ൱Éî¿ÌµÄ¼¼ÊõÊé¼®£¬JavaÓïÑÔ»ù´¡²¿·Ö»ù±¾Ã»ÓÐÆäËüÈκÎÒ»±¾Êé¿ÉÒÔ³¬Ô½Ëü¡£¸ÃÊéµÄ×÷ÕßBruce EckelÔÚÍøÂçÉϱ»³ÆÎªÌì²ÅµÄͶ»úÕߣ¬×÷Õߵġ¶Thinking in C++¡·ÔÚ1995ÄêÔø»ñSoftwareDev ......
javaģʽ֮µ¥Àýģʽ£º
µ¥Àýģʽȷ±£Ò»¸öÀàÖ»ÓÐÒ»¸öʵÀý£¬×ÔÐÐÌṩÕâ¸öʵÀý²¢ÏòÕû¸öϵͳÌṩÕâ¸öʵÀý¡£
ÌØµã£º
1£¬Ò»¸öÀàÖ»ÄÜÓÐÒ»¸öʵÀý
2£¬×Ô¼º´´½¨Õâ¸öʵÀý
& ......
http://blog.ixpub.net/html/36/16577236-371599.html
06Äê11Ô£¬Sun¹«Ë¾¸ß²ã¹ÙÔ±Ðû²¼£º±à³ÌÓïÑÔJava¿ª·ÅÔ´Â룬²¢ÇÒ×ñÊØGPL¹æÔò£¬²©µÃһƬºÃÆÀ¡£¾¹ý°ëÄêµÄ²»Ð¸Å¬Á¦£¬SunÖÕÓڰѾßÓÐ 600¶àÍòÐеÄJavaÔ´´úÂ루ָJDKÈí¼þ°ü£©ÕûÀí£¨ÇåÀí£©Íê±Ï£¬¼ÓÒÔ¹«²¼£¬Ê¹Java±äΪÍêÈ«¿ÉÓã¨fully buildable£©µÄ¿ªÔ´±à³ÌÓïÑÔ¡£07Äê5ÔÂ8È ......
ÔËÐÐÓ¦ÓóÌÐòÓëÔËÐÐweb³ÌÐòÔÀíÊÇÒ»Öµģ¬Ö»²»¹ýwebÓ¦ÓóÌÐòÒѾÔÚÆô¶¯Ê±½«³ÌÐòÔËÓõÄjar°üÉèÖõ½»·¾³±äÁ¿ÀӦÓóÌÐò¿ÉÒÔ×Ô¼ºÐ´¸öÅú´¦ÀíÀ´ÉèÖû·¾³±äÁ¿£º
java -classpath ./lib/application.jar;./lib/hibernate3.jar -Xms608m -Xmx608m com.zyj.application.StartUp
pause/exit
ÆäÖÐapplication.jarΪӦÓóÌÐòµÄjar° ......
1.1 ²»ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀý
ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀýʱ£¬¹¹Ô캯ÊýÁ´ÖеÄËùÓй¹Ô캯Êý¶¼»á±»×Ô¶¯µ÷Óᣵ«Èç¹ûÒ»¸ö¶ÔÏóʵÏÖÁËCloneable½Ó¿Ú£¬ÎÒÃÇ¿ÉÒÔµ÷ÓÃËüµÄclone()·½·¨¡£clone()·½·¨²»»áµ÷ÓÃÈκÎÀ๹Ô캯Êý¡£
ÔÚʹÓÃÉè¼ÆÄ£Ê½£¨Design Pattern£©µÄ³¡ºÏ£¬Èç¹ûÓÃFactoryģʽ´´½¨¶ÔÏó£¬Ôò¸ÄÓÃclone()·½·¨´´½¨Ðµ ......