91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

開發了一個后臺服務,提供文檔的轉換,包括: DOC->PDF DOCX->PDF XLS->PDF XLSX->PDF PPT->PDF PPTX->PDF TXT->PDF PDF->TXT JPG->DOCX PDF->縮略圖 此外,該服務擁有定義良好的啟動、停止功能。能夠優雅地停止正在執行的轉換任務。會記錄下尚未完成的任務,下次啟動服務的時候自動繼續執行。

資源截圖

代碼片段和文件信息

package?com.openoffice.service;

import?java.io.File;
import?java.io.FileOutputStream;
import?java.io.IOException;
import?java.util.ArrayList;
import?java.util.List;
import?java.util.concurrent.Executors;
import?java.util.concurrent.TimeUnit;

import?org.dom4j.Document;
import?org.dom4j.DocumentException;
import?org.dom4j.DocumentHelper;
import?org.dom4j.Element;
import?org.dom4j.io.OutputFormat;
import?org.dom4j.io.SAXReader;
import?org.dom4j.io.xmlWriter;

import?com.openoffice.utils.ExeEnvironment;

/**
?*?文檔轉換服務類
?*/
public?class?DocumentConvertService?{

/**
?*?任務執行器
?*/
private?volatile?TrackingExecutor?exec;

/**
?*?存儲一組要執行的文檔轉換任務
?*/
private?final?List?tasksToExecute;

/**
?*?默認構造函數
?*/
public?DocumentConvertService()
{
this.tasksToExecute?=?new?ArrayList();
}

/**
?*?啟動文檔轉換服務
?*/
public?synchronized?void?start()
{
if(ExeEnvironment.isVerbose())
System.out.println(“正在啟動文檔轉換服務...“);

//?創建任務執行器
this.exec?=?new?TrackingExecutor(Executors.newSingleThreadExecutor());

//?從xml文件中加載上次未執行完的文檔轉換任務
loadUnExecutedDocumentConvertTaskFromxmlFile();

for?(IDocumentConvertTask?task?:?this.tasksToExecute)
submitDocumentConvertTask(task);

this.tasksToExecute.clear();

if(ExeEnvironment.isVerbose())
System.out.println(“文檔轉換服務啟動成功!“);
}

/**
?*?停止文檔轉換服務
?*?@param?timeout?最大等待時間
?*?@param?timeUnit?時間單位
?*?@throws?InterruptedException
?*/
public?synchronized?void?stop(long?timeout?TimeUnit?timeUnit)?throws?InterruptedException
{
if(ExeEnvironment.isVerbose())
System.out.println(“正在停止文檔轉換服務...“);

try
{
List?unExecutedList=this.exec.shutdownNow();

//?如果在指定時間內成功取消了已提交但未結束的任務,將這些任務保存起來
if?(this.exec.awaitTermination(timeout?timeUnit))
saveUnExecutedDocumentConvertTask(this.exec.getCancelledTasks());

//?保存已提交但尚未啟動的任務
saveUnExecutedDocumentConvertTask(unExecutedList);
}
finally
{
this.exec?=?null;
}

//將未執行的文檔轉換任務保存到xml文件,以便下次啟動該服務時再執行。
saveUnExecutedDocumentConvertTaskToxmlFile();

if(ExeEnvironment.isVerbose())
System.out.println(“文檔轉換服務已停止!“);
}

/**
?*?從xml文件中加載上次未執行完的文檔轉換任務
?*/
private?void?loadUnExecutedDocumentConvertTaskFromxmlFile()
{
String?path?=?Thread.currentThread()
.getContextClassLoader().getResource(“com/openoffice/service/unExecutedTasks.xml“).getPath()
.replace(“%20“?“?“);

File?file?=?new?File(path);
if?(file.exists()){

SAXReader?saxReader?=?new?SAXReader();

try?{
//?獲取地圖屬性xml文檔
Document?document?=?saxReader.read(file);

//?獲取根元素
????????Element?root?=?document.getRootElement();
????????
????????//?獲取序列列表
????????@SuppressWarnings(“unchecked“)
List?taskList?=?root.elements();?

????????//?遍歷序列
????????for(int?i=0;?i ????????
???

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????937??2017-04-01?08:27??DocumentConvertService\.classpath

?????文件????????398??2017-04-01?08:27??DocumentConvertService\.project

?????文件????????629??2017-04-01?08:27??DocumentConvertService\.settings\org.eclipse.jdt.core.prefs

?????文件???????7236??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\DocumentConvertService.class

?????文件???????2289??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\GetThumbnailConvertTask.class

?????文件????????275??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\IDocumentConvertTask.class

?????文件???????2806??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\ImageToWordConvertTask.class

?????文件???????1999??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\OfficeToPDFConvertTask.class

?????文件???????2386??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\PDFToTxtConvertTask.class

?????文件???????1092??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\RunnableTask.class

?????文件???????2998??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\Test.class

?????文件???????1454??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\Test2.class

?????文件???????2156??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\TrackingExecutor.class

?????文件?????????59??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\service\unExecutedTasks.xml

?????文件???????3140??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\utils\ExeEnvironment.class

?????文件???????1588??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\utils\FileCopyUtil.class

?????文件??????11327??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\utils\ImageToWordConverter.class

?????文件???????5599??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\utils\OfficeToPDFConverter.class

?????文件???????4863??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\utils\PdfThumbnailGenerator.class

?????文件???????3310??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\utils\PDFToTxtConverter.class

?????文件????????122??2017-04-01?08:27??DocumentConvertService\bin\com\openoffice\utils\url.properties

?????文件??????16332??2017-04-01?08:27??DocumentConvertService\libs\bootstrapconnector.jar

?????文件??????41123??2017-04-01?08:27??DocumentConvertService\libs\commons-cli-1.2.jar

?????文件?????109043??2017-04-01?08:27??DocumentConvertService\libs\commons-io-1.4.jar

?????文件??????60841??2017-04-01?08:27??DocumentConvertService\libs\commons-logging.jar

?????文件?????313898??2017-04-01?08:27??DocumentConvertService\libs\dom4j-1.6.1.jar

?????文件?????218564??2017-04-01?08:27??DocumentConvertService\libs\fontbox-1.8.8.jar

?????文件????1508245??2017-04-01?08:27??DocumentConvertService\libs\icepdf-core.jar

?????文件??????32054??2017-04-01?08:27??DocumentConvertService\libs\jodconverter-2.2.2.jar

?????文件???????5712??2017-04-01?08:27??DocumentConvertService\libs\jodconverter-cli-2.2.2.jar

............此處省略43個文件信息

評論

共有 條評論