Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
SchoolReportGen
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
霍传世
SchoolReportGen
Commits
ee95caf5
Commit
ee95caf5
authored
Dec 27, 2024
by
霍传世
1
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
测试服务器生成的效率
parent
5a4f1d12
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
163 additions
and
158 deletions
+163
-158
src/main/java/com/example/pdfgenerator/controller/GeneratorAllTypePdfByProvinceController.java
...r/controller/GeneratorAllTypePdfByProvinceController.java
+163
-158
No files found.
src/main/java/com/example/pdfgenerator/controller/GeneratorAllTypePdfByProvinceController.java
View file @
ee95caf5
...
@@ -5,6 +5,10 @@ import com.example.pdfgenerator.Dto.ClassBasicReportParameters;
...
@@ -5,6 +5,10 @@ import com.example.pdfgenerator.Dto.ClassBasicReportParameters;
import
com.example.pdfgenerator.Dto.RetryCommand
;
import
com.example.pdfgenerator.Dto.RetryCommand
;
import
com.example.pdfgenerator.config.MyDataSourceConfig
;
import
com.example.pdfgenerator.config.MyDataSourceConfig
;
import
com.qcloud.cos.COSClient
;
import
com.qcloud.cos.COSClient
;
import
com.qcloud.cos.exception.CosClientException
;
import
com.qcloud.cos.exception.CosServiceException
;
import
com.qcloud.cos.model.PutObjectRequest
;
import
com.qcloud.cos.model.PutObjectResult
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -16,6 +20,7 @@ import org.springframework.web.bind.annotation.RequestParam;
...
@@ -16,6 +20,7 @@ import org.springframework.web.bind.annotation.RequestParam;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.io.BufferedReader
;
import
java.io.BufferedReader
;
import
java.io.File
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.InputStreamReader
;
import
java.io.InputStreamReader
;
import
java.util.*
;
import
java.util.*
;
...
@@ -282,46 +287,46 @@ public class GeneratorAllTypePdfByProvinceController {
...
@@ -282,46 +287,46 @@ public class GeneratorAllTypePdfByProvinceController {
}
}
BufferedReader
reader
=
new
BufferedReader
(
new
InputStreamReader
(
process
.
getInputStream
()));
BufferedReader
reader
=
new
BufferedReader
(
new
InputStreamReader
(
process
.
getInputStream
()));
String
line
;
String
line
;
while
(
true
)
{
// while (true) {
try
{
// try {
if
(!((
line
=
reader
.
readLine
())
!=
null
))
break
;
// if (!((line = reader.readLine()) != null)) break;
}
catch
(
IOException
e
)
{
// } catch (IOException e) {
throw
new
RuntimeException
(
e
);
// throw new RuntimeException(e);
}
}
// while ((line = reader.readLine()) != null) {
// // 如果输出了 "DONE",表示生成完毕
// if ("DONE".equals(line)) {
// break; // 跳出循环
// }
// }
// }
// }
while
((
line
=
reader
.
readLine
())
!=
null
)
{
// 如果输出了 "DONE",表示生成完毕
if
(
"DONE"
.
equals
(
line
))
{
break
;
// 跳出循环
}
}
try
{
try
{
int
exitCode
=
process
.
waitFor
();
int
exitCode
=
process
.
waitFor
();
}
catch
(
InterruptedException
e
)
{
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
throw
new
RuntimeException
(
e
);
}
}
//上传文件
//上传文件
//
File basicFile = new File("/myworkSpace/basic/");
File
basicFile
=
new
File
(
"/myworkSpace/basic/"
);
//
File[] basicFiles = basicFile.listFiles();
File
[]
basicFiles
=
basicFile
.
listFiles
();
//
assert basicFiles != null;
assert
basicFiles
!=
null
;
//
for (File file : basicFiles) {
for
(
File
file
:
basicFiles
)
{
//
PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, fileToUrl.get(file.getName()), file);
PutObjectRequest
putObjectRequest
=
new
PutObjectRequest
(
bucketName
,
fileToUrl
.
get
(
file
.
getName
()),
file
);
//
try {
try
{
//
PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest);
PutObjectResult
putObjectResult
=
cosClient
.
putObject
(
putObjectRequest
);
//
logger.info(putObjectResult.getRequestId());
logger
.
info
(
putObjectResult
.
getRequestId
());
//
file.delete();
file
.
delete
();
//
} catch (CosServiceException e) {
}
catch
(
CosServiceException
e
)
{
//
logger.info("cos服务出现问题");
logger
.
info
(
"cos服务出现问题"
);
//
e.printStackTrace();
e
.
printStackTrace
();
//
} catch (CosClientException e) {
}
catch
(
CosClientException
e
)
{
//
logger.info("cos客户端出现问题"+file.getName()+"文件上传有误,重新上传");
logger
.
info
(
"cos客户端出现问题"
+
file
.
getName
()+
"文件上传有误,重新上传"
);
//
RetryCommand retryCommand = new RetryCommand();
RetryCommand
retryCommand
=
new
RetryCommand
();
//
retryCommand.setRetryCommand(schoolLevel.getCommand());
retryCommand
.
setRetryCommand
(
schoolLevel
.
getCommand
());
//
retryCommand.setParams(schoolLevel);
retryCommand
.
setParams
(
schoolLevel
);
//
retryCommands.add(retryCommand);
retryCommands
.
add
(
retryCommand
);
//
e.printStackTrace();
e
.
printStackTrace
();
//
}
}
//
}
}
for
(
BasicReportParameters
parameters
:
schoolSelf
)
{
for
(
BasicReportParameters
parameters
:
schoolSelf
)
{
logger
.
info
(
"subjectReport:loading"
);
logger
.
info
(
"subjectReport:loading"
);
logger
.
info
(
"exitCode:"
+
parameters
.
getSubSubject
());
logger
.
info
(
"exitCode:"
+
parameters
.
getSubSubject
());
...
@@ -336,45 +341,45 @@ public class GeneratorAllTypePdfByProvinceController {
...
@@ -336,45 +341,45 @@ public class GeneratorAllTypePdfByProvinceController {
}
}
BufferedReader
readerSubject
=
new
BufferedReader
(
new
InputStreamReader
(
processSubject
.
getInputStream
()));
BufferedReader
readerSubject
=
new
BufferedReader
(
new
InputStreamReader
(
processSubject
.
getInputStream
()));
String
lineSubject
;
String
lineSubject
;
while
(
true
)
{
// while (true) {
try
{
// try {
if
(!((
lineSubject
=
readerSubject
.
readLine
())
!=
null
))
break
;
// if (!((lineSubject = readerSubject.readLine()) != null)) break;
}
catch
(
IOException
e
)
{
// } catch (IOException e) {
throw
new
RuntimeException
(
e
);
// throw new RuntimeException(e);
}
}
// while ((lineSubject = readerSubject.readLine()) != null) {
// // 如果输出了 "DONE",表示生成完毕
// if ("DONE".equals(lineSubject)) {
// break; // 跳出循环
// }
// }
// }
// }
while
((
lineSubject
=
readerSubject
.
readLine
())
!=
null
)
{
// 如果输出了 "DONE",表示生成完毕
if
(
"DONE"
.
equals
(
lineSubject
))
{
break
;
// 跳出循环
}
}
try
{
try
{
int
exitCodeSubject
=
processSubject
.
waitFor
();
int
exitCodeSubject
=
processSubject
.
waitFor
();
}
catch
(
InterruptedException
e
)
{
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
throw
new
RuntimeException
(
e
);
}
}
//
File subjectFile = new File("/myworkSpace/subject/");
File
subjectFile
=
new
File
(
"/myworkSpace/subject/"
);
//
File[] subjectFiles = subjectFile.listFiles();
File
[]
subjectFiles
=
subjectFile
.
listFiles
();
//
assert subjectFiles != null;
assert
subjectFiles
!=
null
;
//
for (File file : subjectFiles) {
for
(
File
file
:
subjectFiles
)
{
//
PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, fileToUrl.get(file.getName()), file);
PutObjectRequest
putObjectRequest
=
new
PutObjectRequest
(
bucketName
,
fileToUrl
.
get
(
file
.
getName
()),
file
);
//
try {
try
{
//
PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest);
PutObjectResult
putObjectResult
=
cosClient
.
putObject
(
putObjectRequest
);
//
logger.info(putObjectResult.getRequestId());
logger
.
info
(
putObjectResult
.
getRequestId
());
//
file.delete();
file
.
delete
();
//
} catch (CosServiceException e) {
}
catch
(
CosServiceException
e
)
{
//
logger.info("cos服务出现问题");
logger
.
info
(
"cos服务出现问题"
);
//
e.printStackTrace();
e
.
printStackTrace
();
//
} catch (CosClientException e) {
}
catch
(
CosClientException
e
)
{
//
logger.info("cos客户端出现问题"+file.getName()+"文件上传有误,重新上传");
logger
.
info
(
"cos客户端出现问题"
+
file
.
getName
()+
"文件上传有误,重新上传"
);
//
RetryCommand retryCommand = new RetryCommand();
RetryCommand
retryCommand
=
new
RetryCommand
();
//
retryCommand.setParams(parameters);
retryCommand
.
setParams
(
parameters
);
//
retryCommand.setRetryCommand(parameters.getCommand());
retryCommand
.
setRetryCommand
(
parameters
.
getCommand
());
//
retryCommands.add(retryCommand);
retryCommands
.
add
(
retryCommand
);
//
e.printStackTrace();
e
.
printStackTrace
();
//
}
}
//
}
}
}
}
List
<
ClassBasicReportParameters
>
args
=
classBasic
.
get
(
schoolLevel
.
getSchool
());
List
<
ClassBasicReportParameters
>
args
=
classBasic
.
get
(
schoolLevel
.
getSchool
());
List
<
ClassBasicReportParameters
>
params
=
subjectClass
.
get
(
schoolLevel
.
getSchool
());
List
<
ClassBasicReportParameters
>
params
=
subjectClass
.
get
(
schoolLevel
.
getSchool
());
...
@@ -392,45 +397,45 @@ public class GeneratorAllTypePdfByProvinceController {
...
@@ -392,45 +397,45 @@ public class GeneratorAllTypePdfByProvinceController {
}
}
BufferedReader
readerClass
=
new
BufferedReader
(
new
InputStreamReader
(
processClass
.
getInputStream
()));
BufferedReader
readerClass
=
new
BufferedReader
(
new
InputStreamReader
(
processClass
.
getInputStream
()));
String
lineClass
;
String
lineClass
;
while
(
true
)
{
// while (true) {
try
{
// try {
if
(!((
lineClass
=
readerClass
.
readLine
())
!=
null
))
break
;
// if (!((lineClass = readerClass.readLine()) != null)) break;
}
catch
(
IOException
e
)
{
// } catch (IOException e) {
throw
new
RuntimeException
(
e
);
// throw new RuntimeException(e);
}
}
// while ((lineClass = readerClass.readLine()) != null) {
// // 如果输出了 "DONE",表示生成完毕
// if ("DONE".equals(lineClass)) {
// break; // 跳出循环
// }
// }
// }
// }
while
((
lineClass
=
readerClass
.
readLine
())
!=
null
)
{
// 如果输出了 "DONE",表示生成完毕
if
(
"DONE"
.
equals
(
lineClass
))
{
break
;
// 跳出循环
}
}
try
{
try
{
int
exitCodeSubject
=
processClass
.
waitFor
();
int
exitCodeSubject
=
processClass
.
waitFor
();
}
catch
(
InterruptedException
e
)
{
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
throw
new
RuntimeException
(
e
);
}
}
//
File classBasicFile = new File("/myworkSpace/Class/Basic/");
File
classBasicFile
=
new
File
(
"/myworkSpace/Class/Basic/"
);
//
File[] classBasicFiles = classBasicFile.listFiles();
File
[]
classBasicFiles
=
classBasicFile
.
listFiles
();
//
assert classBasicFiles != null;
assert
classBasicFiles
!=
null
;
//
for (File file : classBasicFiles) {
for
(
File
file
:
classBasicFiles
)
{
//
PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, fileToUrl.get(file.getName()), file);
PutObjectRequest
putObjectRequest
=
new
PutObjectRequest
(
bucketName
,
fileToUrl
.
get
(
file
.
getName
()),
file
);
//
try {
try
{
//
PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest);
PutObjectResult
putObjectResult
=
cosClient
.
putObject
(
putObjectRequest
);
//
logger.info(putObjectResult.getRequestId());
logger
.
info
(
putObjectResult
.
getRequestId
());
//
file.delete();
file
.
delete
();
//
} catch (CosServiceException e) {
}
catch
(
CosServiceException
e
)
{
//
logger.info("cos服务出现问题");
logger
.
info
(
"cos服务出现问题"
);
//
e.printStackTrace();
e
.
printStackTrace
();
//
} catch (CosClientException e) {
}
catch
(
CosClientException
e
)
{
//
logger.info("cos客户端出现问题"+file.getName()+"文件上传有误,重新上传");
logger
.
info
(
"cos客户端出现问题"
+
file
.
getName
()+
"文件上传有误,重新上传"
);
//
RetryCommand retryCommand = new RetryCommand();
RetryCommand
retryCommand
=
new
RetryCommand
();
//
retryCommand.setParams(arg);
retryCommand
.
setParams
(
arg
);
//
retryCommand.setRetryCommand(arg.getCommand());
retryCommand
.
setRetryCommand
(
arg
.
getCommand
());
//
retryCommands.add(retryCommand);
retryCommands
.
add
(
retryCommand
);
//
e.printStackTrace();
e
.
printStackTrace
();
//
}
}
//
}
}
final
Map
<
String
,
List
<
ClassBasicReportParameters
>>
collect
=
params
.
stream
().
collect
(
Collectors
.
groupingBy
(
ClassBasicReportParameters:
:
getClassName
));
final
Map
<
String
,
List
<
ClassBasicReportParameters
>>
collect
=
params
.
stream
().
collect
(
Collectors
.
groupingBy
(
ClassBasicReportParameters:
:
getClassName
));
List
<
ClassBasicReportParameters
>
list
=
collect
.
get
(
arg
.
getClassName
());
List
<
ClassBasicReportParameters
>
list
=
collect
.
get
(
arg
.
getClassName
());
for
(
ClassBasicReportParameters
classBasicReportParameters
:
list
)
{
for
(
ClassBasicReportParameters
classBasicReportParameters
:
list
)
{
...
@@ -447,46 +452,46 @@ public class GeneratorAllTypePdfByProvinceController {
...
@@ -447,46 +452,46 @@ public class GeneratorAllTypePdfByProvinceController {
}
}
BufferedReader
readerClassSubject
=
new
BufferedReader
(
new
InputStreamReader
(
processClassSubject
.
getInputStream
()));
BufferedReader
readerClassSubject
=
new
BufferedReader
(
new
InputStreamReader
(
processClassSubject
.
getInputStream
()));
String
lineClassSubject
;
String
lineClassSubject
;
while
(
true
)
{
// while (true) {
try
{
// try {
if
(!((
lineClassSubject
=
readerClassSubject
.
readLine
())
!=
null
))
break
;
// if (!((lineClassSubject = readerClassSubject.readLine()) != null)) break;
}
catch
(
IOException
e
)
{
// } catch (IOException e) {
throw
new
RuntimeException
(
e
);
// throw new RuntimeException(e);
}
}
// while ((lineClassSubject = readerClassSubject.readLine()) != null) {
// // 如果输出了 "DONE",表示生成完毕
// if ("DONE".equals(lineClassSubject)) {
// break; // 跳出循环
// }
// }
// }
// }
while
((
lineClassSubject
=
readerClassSubject
.
readLine
())
!=
null
)
{
// 如果输出了 "DONE",表示生成完毕
if
(
"DONE"
.
equals
(
lineClassSubject
))
{
break
;
// 跳出循环
}
}
try
{
try
{
int
exitCodeSubjectClass
=
processClassSubject
.
waitFor
();
int
exitCodeSubjectClass
=
processClassSubject
.
waitFor
();
}
catch
(
InterruptedException
e
)
{
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
throw
new
RuntimeException
(
e
);
}
}
//
File classSubjectFile = new File("/myworkSpace/Class/subject/");
File
classSubjectFile
=
new
File
(
"/myworkSpace/Class/subject/"
);
//
File[] classSubjectFiles = classSubjectFile.listFiles();
File
[]
classSubjectFiles
=
classSubjectFile
.
listFiles
();
//
assert classSubjectFiles != null;
assert
classSubjectFiles
!=
null
;
//
for (File file : classSubjectFiles) {
for
(
File
file
:
classSubjectFiles
)
{
//
logger.info(file.getName()+"=file—>key="+fileToUrl.get(file.getName()));
logger
.
info
(
file
.
getName
()+
"=file—>key="
+
fileToUrl
.
get
(
file
.
getName
()));
//
PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, fileToUrl.get(file.getName()), file);
PutObjectRequest
putObjectRequest
=
new
PutObjectRequest
(
bucketName
,
fileToUrl
.
get
(
file
.
getName
()),
file
);
//
try {
try
{
//
PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest);
PutObjectResult
putObjectResult
=
cosClient
.
putObject
(
putObjectRequest
);
//
logger.info(putObjectResult.getRequestId());
logger
.
info
(
putObjectResult
.
getRequestId
());
//
file.delete();
file
.
delete
();
//
} catch (CosServiceException e) {
}
catch
(
CosServiceException
e
)
{
//
logger.info("cos服务出现问题");
logger
.
info
(
"cos服务出现问题"
);
//
e.printStackTrace();
e
.
printStackTrace
();
//
} catch (CosClientException e) {
}
catch
(
CosClientException
e
)
{
//
logger.info("cos客户端出现问题"+file.getName()+"文件上传有误,重新上传");
logger
.
info
(
"cos客户端出现问题"
+
file
.
getName
()+
"文件上传有误,重新上传"
);
//
RetryCommand retryCommand = new RetryCommand();
RetryCommand
retryCommand
=
new
RetryCommand
();
//
retryCommand.setParams(classBasicReportParameters);
retryCommand
.
setParams
(
classBasicReportParameters
);
//
retryCommand.setRetryCommand(classBasicReportParameters.getCommand());
retryCommand
.
setRetryCommand
(
classBasicReportParameters
.
getCommand
());
//
retryCommands.add(retryCommand);
retryCommands
.
add
(
retryCommand
);
//
e.printStackTrace();
e
.
printStackTrace
();
//
}
}
//
}
}
}
}
}
}
...
@@ -517,41 +522,41 @@ public class GeneratorAllTypePdfByProvinceController {
...
@@ -517,41 +522,41 @@ public class GeneratorAllTypePdfByProvinceController {
}
}
BufferedReader
readerClassSubject
=
new
BufferedReader
(
new
InputStreamReader
(
processClassSubject
.
getInputStream
()));
BufferedReader
readerClassSubject
=
new
BufferedReader
(
new
InputStreamReader
(
processClassSubject
.
getInputStream
()));
String
lineClassSubject
;
String
lineClassSubject
;
while
(
true
)
{
// while (true) {
try
{
// try {
if
(!((
lineClassSubject
=
readerClassSubject
.
readLine
())
!=
null
))
break
;
// if (!((lineClassSubject = readerClassSubject.readLine()) != null)) break;
}
catch
(
IOException
e
)
{
// } catch (IOException e) {
throw
new
RuntimeException
(
e
);
// throw new RuntimeException(e);
}
}
// while ((lineClassSubject = readerClassSubject.readLine()) != null) {
// // 如果输出了 "DONE",表示生成完毕
// if ("DONE".equals(lineClassSubject)) {
// break; // 跳出循环
// }
// }
// }
// }
while
((
lineClassSubject
=
readerClassSubject
.
readLine
())
!=
null
)
{
// 如果输出了 "DONE",表示生成完毕
if
(
"DONE"
.
equals
(
lineClassSubject
))
{
break
;
// 跳出循环
}
}
try
{
try
{
int
exitCodeSubjectClass
=
processClassSubject
.
waitFor
();
int
exitCodeSubjectClass
=
processClassSubject
.
waitFor
();
}
catch
(
InterruptedException
e
)
{
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
throw
new
RuntimeException
(
e
);
}
}
//
File classSubjectFile = new File(filePrefix);
File
classSubjectFile
=
new
File
(
filePrefix
);
//
File[] classSubjectFiles = classSubjectFile.listFiles();
File
[]
classSubjectFiles
=
classSubjectFile
.
listFiles
();
//
assert classSubjectFiles != null;
assert
classSubjectFiles
!=
null
;
//
for (File file : classSubjectFiles) {
for
(
File
file
:
classSubjectFiles
)
{
//
logger.info(file.getName()+"=file—>key="+fileToUrl.get(file.getName()));
logger
.
info
(
file
.
getName
()+
"=file—>key="
+
fileToUrl
.
get
(
file
.
getName
()));
//
PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, fileToUrl.get(file.getName()), file);
PutObjectRequest
putObjectRequest
=
new
PutObjectRequest
(
bucketName
,
fileToUrl
.
get
(
file
.
getName
()),
file
);
//
try {
try
{
//
PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest);
PutObjectResult
putObjectResult
=
cosClient
.
putObject
(
putObjectRequest
);
//
logger.info(putObjectResult.getRequestId());
logger
.
info
(
putObjectResult
.
getRequestId
());
//
file.delete();
file
.
delete
();
//
} catch (CosServiceException e) {
}
catch
(
CosServiceException
e
)
{
//
logger.info("cos服务出现问题");
logger
.
info
(
"cos服务出现问题"
);
//
e.printStackTrace();
e
.
printStackTrace
();
//
} catch (CosClientException e) {
}
catch
(
CosClientException
e
)
{
//
logger.info("cos客户端出现问题"+file.getName()+"文件上传有误,重新上传");
logger
.
info
(
"cos客户端出现问题"
+
file
.
getName
()+
"文件上传有误,重新上传"
);
//
}
}
//
}
}
}
}
...
...
霍传世
@ChuanShi
mentioned in commit
f1608c46
·
Mar 25, 2025
mentioned in commit
f1608c46
mentioned in commit f1608c46fdfe357f0faab2b5b3a4ebb86db62594
Toggle commit list
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment