當前位置:首頁 » 編程語言 » java批量處理

java批量處理

發布時間: 2022-05-26 05:34:24

Ⅰ 如何使用java程序批量修改特定文件夾下的文件名

public class FileNameTest {

/**
* 修改文件名稱
* @param file
*/
public static void changeFileName(File file){
File[] files = file.listFiles();//遍歷文件夾下的所有文件
//因為你這文件夾下全是文件,所以這里沒用遞歸
for (int i = 0; i < files.length; i++) {
File f = files[i];//獲取文件
String fileName = f.getName();//獲取文件名稱
fileName = fileName.replace("韓順平.循序漸進學.java.從入門到精通.", "");//你這里文件名有規律,所以我這里直接用replace方法來替換原來的文件名
f.renameTo(new File("D:\\Program Files\\視頻\\"+fileName));//這里就是修改後的新文件名
}
}

/**
* main函數
* @param args
*/
public static void main(String[] args){
File file = new File("D:\\Program Files\\視頻");
changeFileName(file);
}

}

Ⅱ java 如何批量修改一張表裡面多條數據的某個欄位的值,需要修改的欄位值是自定義的。

直接資料庫操作嘛 全部改一樣的就用update dealers set buynum where 。。
不一樣的話就存儲結構吧。
用java更新 最好用批處理PreparedStatement stamt.. "update ??????"

for(){ stamt.addBatch(); }
stamt.executeBatch();

Ⅲ JAVA如何實現資料庫的批處理操作

批量數據進入資料庫使用addBatch()和executeBatch()方法
PreparedStatement.addBatch(); ...... PreparedStatement.executeBatch();需要注意的是一次最多不要超過50條:1.因為插入的時候資料庫已經鎖定,然而若是一次性插入太多會造成其他業務的等待。2.會造成內存的溢出
舉例:

PreparedStatement pst = (PreparedStatement) con.prepareStatement("insert into ***** values (?,'***')"); for (int i = 0; i < 10000; i++) { pst.setInt(1, i); // 把一個sql命令加入命令列表 pst.addBatch(); } // 執行批量更新 pst.executeBatch(); // 語句執行完畢,提交本事務 con.commit();

Ⅳ java編程 批處理

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Stack;

public class CheckFilebatch {
private static final String LOG_FILE = "F:/CheckFilebatch.log"; //報錯的信息寫在這個文件里。
private static final String FILE_HOME = "F:/niceStore /"; //要操作的物理目錄

public static void main(String[] args) {
try {
ArrayList<String> fileListInDB = new ArrayList<String>();
FileWriter fw = new FileWriter(LOG_FILE);

// TODO
// 取得DB連接,執行sql「SELECT DISTINCT FILEPATH FROM ARR-FILE」,得到一個ResultSet
// 從DB中取出文件信息,放入fileListInDB 中,
ResultSet rs = null;
while (rs.next()) {
String path = rs.getString("File_Column");
File f = new File(path);
if (!f.exists()) {
// 不合法的報出錯誤信息。
System.out.println("file not exists: " + path);
fw.write("file not exists: " + path + "\n");
} else {
// 合法的,轉化為路徑名的規范路徑名字元串,加入到fileListInDB中
fileListInDB.add(f.getCanonicalPath());
}
}
rs.close();
//
fw.write("\n\n\n\n");

//下面開始遍歷物理目錄
File home = new File(FILE_HOME);
Stack<File> tmpStack = new Stack<File>();
tmpStack.add(home);
while (!tmpStack.isEmpty()) {
File tmp = tmpStack.pop();
File[] childs = tmp.listFiles();
for (int i = 0; i < childs.length; i++) {
File child = childs[i];
if (child.isDirectory()) {
tmpStack.push(child);
} else {
if (fileListInDB.contains(child.getCanonicalPath())) {
fileListInDB.remove(child.getCanonicalPath());
} else {
// 刪除文件。
child.delete();
// 這里的操作如果把它移動到另一個目錄里,作為備份,更好些。
fw.write("delete file: " + child.getCanonicalPath());
}
}
}
}
// 這個程序只考慮文件,不考慮目錄
fw.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}

}
}

Ⅳ 如何把java中的項目做成批處理

這是我一個真實的項目。發布批處理程序,結構目錄如下:

data文件存放數據,etc存放配置文件,lib,存放項目jar包,startup.bat/startup.sh啟動腳本



1、-----windows上.bat文件調用java程序。bat文件內容如下------

echooff

remsetupclasspath

echoset_CP=%%_CP%%;%%1>cp.bat

set_CP=.;classes;"%JAVA_HOME%libdt.jar";"%JAVA_HOME%lib ools.jar"

for%%iin(lib*.jar)docallcp.bat%%i

setCLASSPATH=%_CP%

delcp.bat

echo%CLASSPATH%

remsetJAVA_HOME=

setJAVA_OPTION=-Dfile.encoding=GBK-Xms256m-Xmx256m-XX:MaxPermSize=64m

setRUN_CLASS=batch.Main

"%JAVA_HOME%injava"%JAVA_OPTION%-classpath%CLASSPATH%%RUN_CLASS%


2、-------unix/linux上shell調用java程序,shello文件內容如下---------

if[-z${JAVA_HOME}]

then

echo"JAVA_HOMEnotsetyet,can'trunjavaprogram!"

exit-1

fi

CLASSPATH=.:${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/lib/dt.jar

JLIBDIR=./lib

exportJLIBDIR

forLLin`ls${JLIBDIR}/*.jar`

do

CLASSPATH=${CLASSPATH}:${LL}

done

echo${CLASSPATH}

exportCLASSPATH

JAVA_OPTION="-Dfile.encoding=GBK-Xms256m-Xmx256m-XX:MaxPermSize=64m"

RUN_CLASS=batch.Main

${JAVA_HOME}/bin/java${JAVA_OPTION}-classpath${CLASSPATH}${RUN_CLASS}


Ⅵ 請教Java處理大批量的數據

首先看是什麼文件?txt?還是xml?
如果是txt的話我們直接通過IO將其中的內容看做一個字元串,接著去找個正則表達式匹配(如果樓主正則表達式不錯的話)一下那麼很快就可以得出你想要的結果了。
如果xml的話則遍歷用戶節點然後找到相應的 userId的節點下的商品id的節點。
其實還有個方法就是通過spilte方法將它分成數組。。。然後遍歷數組來得到想要的結果。。。正則表達式如果寫出來應該是最快的,比較符合樓主的要求。。。

Ⅶ JAVA如何批量處理從資料庫提取出的數據

總得有個分隔符號,如,也行。

從第1個字元開始,直接分隔符號,再處理前面得到的資料

Ⅷ 怎麼批量修改java文件的編碼

工具:

eclipse

方法:

1、打開eclipse主頁面,點擊【windows】菜單,然後選擇【Reference】選項。

Ⅸ Java中怎樣實現批量刪除操作

Java中實現批量刪除操作的方法如下:
示例代碼如下:
public PreparedStatement pstmt=null;
/**
* 得到連接對象
*/
public void getConnection(){
String driver="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/zufang?user=root&password=root&useUnicode=true&characterEncoding=GB2312";
try {
Class.forName(driver);
con=DriverManager.getConnection(url,"root","root");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
public Connection con=null;
public PreparedStatement pstmt=null;
/**
* 得到連接對象
*/
public void getConnection(){
String driver="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/zufang?user=root&password=root&useUnicode=true&characterEncoding=GB2312";
try {
Class.forName(driver);
con=DriverManager.getConnection(url,"root","root");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
/ * 批量刪除信息表中的信息
* @param sql
* @param param
* @return
*/
public boolean updateBatchDel(String sql,String[] param){
boolean flag = false;
getConnection();
try {
con.setAutoCommit(false);
pstmt = con.prepareStatement(sql);
for(int i =0 ;i<param.length;i++){
pstmt.setString(1,param[i].trim());
pstmt.addBatch();
}
pstmt.executeBatch(); //批量執行
con.commit();//提交事務
flag = true;
} catch (SQLException e) {
try {
con.rollback(); //進行事務回滾
} catch (SQLException ex) {
ex.printStackTrace();
}
}finally {
closeAll(null,pstmt,con);
}
return flag;
}
/**
* 批量刪除信息表中的信息
* @param sql
* @param param
* @return
*/
public boolean updateBatchDel(String sql,String[] param){
boolean flag = false;
getConnection();
try {
con.setAutoCommit(false);
pstmt = con.prepareStatement(sql);
for(int i =0 ;i<param.length;i++){
pstmt.setString(1,param[i].trim());
pstmt.addBatch();
}
pstmt.executeBatch(); //批量執行
con.commit();//提交事務
flag = true;
} catch (SQLException e) {
try {
con.rollback(); //進行事務回滾
} catch (SQLException ex) {
ex.printStackTrace();
}
}finally {
closeAll(null,pstmt,con);
}
return flag;
}
刪除後同步提交就可以了。

Ⅹ Java中怎麼批量處理實例變數

例如設置一個實例變數
son 1=new son(1,",毛毛");
son 2=new son(2,",小明");
.
.
.
son 20=new son(20,"老王");
然後您的代碼(最好是用數組和循環語句)。
最後輸出
1,毛毛
2,小明
.
.
.
20,老王

熱點內容
php把數據插入資料庫 發布:2025-02-13 00:09:48 瀏覽:369
eclipse查看jar包源碼 發布:2025-02-12 23:59:35 瀏覽:973
電腦主機伺服器維修 發布:2025-02-12 23:59:26 瀏覽:302
sqlserver標識 發布:2025-02-12 23:51:33 瀏覽:463
安卓怎麼玩地牢獵人 發布:2025-02-12 23:50:25 瀏覽:944
思鄉腳本 發布:2025-02-12 23:43:32 瀏覽:440
java的job 發布:2025-02-12 23:38:43 瀏覽:893
我的世界伺服器授權指令 發布:2025-02-12 23:30:13 瀏覽:597
電腦伺服器號在哪裡找 發布:2025-02-12 23:22:29 瀏覽:13
linux查看系統是32位 發布:2025-02-12 23:17:29 瀏覽:990