该是一些特殊符被转义了,你可以把mysqldump -u root -proot --opt mysql > C:/Users/success/aksql 这句写到一个bat文件里面,然后java中就直接调用这个bat文件就可以避免了
首先导入 mysql-connector-java-5145-binjar 包
代码如下:
import javaio;import javasql;
public class App {
public static void main(String[] args) {
try {
ClassforName("commysqljdbcDriver");
// 数据库用户
String user = "root";
// 数据库密码
String password = "";
Connection conn = DriverManagergetConnection("jdbc:mysql://localhost:3306/db_sale", user, password);
Statement stmt = conncreateStatement();
// 查询 , 从数据库 db_sale 的 product 表中查询 id, name, qty 字段
ResultSet rs = stmtexecuteQuery("SELECT id, name, qty FROM product");
// 创建输出文件 resulttxt
File file = new File("d://resulttxt");
OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(file));
while (rsnext()) {
writerwrite(StringvalueOf(rsgetLong(1)) + "\t");
writerwrite(rsgetString(2) + "\t");
writerwrite(StringvalueOf(rsgetInt(3)));
writerwrite("\r\n");
//Systemoutprintln(rsgetLong(1));
//Systemoutprintln(rsgetString(2));
//Systemoutprintln(rsgetLong(3));
}
writerflush();
writerclose();
rsclose();
stmtclose();
connclose();
} catch (Exception e) {
eprintStackTrace();
}
}
}
下面是我写的一个运用jxl生成Excel文件的方法
该方法接收一个保存MarkesData数据的ArrayList arlist和文件生成路径Path
通过取得arlist里的数据生成Excel文件
感觉应该是你想要的 我没调试过也许有错 你也可以根据你的需要进行修改^_^
import javaioFile;
import javaioIOException;
import javautilArrayList;
import javautilIterator;
import jxlWorkbook;
import jxlwriteLabel;
import jxlwriteWritableSheet;
import jxlwriteWritableWorkbook;
import jxlwriteWriteException;
import jxlwritebiffRowsExceededException;
public class WriteExcel {
WritableWorkbook book=null;
public void OutputExcel(ArrayList arlist,String Path){
try{
book = WorkbookcreateWorkbook(new File(Path));
//设置表名
WritableSheet sheet = bookcreateSheet("考试单",0);
//生成表格题头
Label labe1 = new Label(0, 0, "考生姓名" );
Label labe2 = new Label(1, 0, "地区");
Label labe3 = new Label(2, 0, "所属院校");
Label labe4 = new Label(3, 0, "班级");
Label labe5 = new Label(4, 0, "考试号");
Label labe6 = new Label(5, 0, "考试时间");
Label labe7 = new Label(6, 0, "科目名称");
//将生成的单元格添加到工作表中
sheetaddCell(labe1);
sheetaddCell(labe2);
sheetaddCell(labe3);
sheetaddCell(labe4);
sheetaddCell(labe5);
sheetaddCell(labe6);
sheetaddCell(labe7);
Iterator it = arlistiterator();
int i = 1;
while(ithasNext()){
//通过迭代获得arlist里的MarkesData对象
MarkesData temp = (MarkesData)itnext();
//取得数据生成单元格
Label label1=new Label(0,i,tempgetUser_name());
Label label2=new Label(1,i,tempgetArea_name());
Label label3=new Label(2,i,tempgetCollege_name());
Label label4=new Label(3,i,tempgetClass_name());
Label label5=new Label(4,i,tempgetTest_name());
Label label6=new Label(5,i,tempgetStarttime());
Label label7=new Label(6,i,tempgetSubject_name());
//将生成的单元格添加到工作表中
sheetaddCell(label1);
sheetaddCell(label2);
sheetaddCell(label3);
sheetaddCell(label4);
sheetaddCell(label5);
sheetaddCell(label6);
sheetaddCell(label7);
i++;
}
bookwrite();
bookclose();
} catch (RowsExceededException e) {
eprintStackTrace();
} catch (WriteException e) {
eprintStackTrace();
} catch (IOException e) {
eprintStackTrace();
} finally{
try{
if(book!=null)bookclose();
}catch(Exception e){
Systemoutprintln("exception when closing Connection in finally");
Systemoutprintln(egetMessage()toString());
}
}
}
}
以上就是关于怎么从Java客户端调用mysqldump导出数据库全部的内容,包括:怎么从Java客户端调用mysqldump导出数据库、怎么用JAVA把Mysql数据库中的表的数据输出至文本文档中、Java怎样将数据库中数据导出为Excel文件,求完整例子附带数据库。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)