|
@@ -38,24 +38,37 @@ public class RotateTask implements Runnable {
|
|
|
@Override
|
|
|
public void run() {
|
|
|
long start = System.currentTimeMillis();
|
|
|
- Path thumbPath = Paths.get(systemConfig.getThumbDir(),String.valueOf(paper.getWorkId()),paper.getSubject().toString(),paper.getAreaCode(),paper.getExamNumber() + ".jpg");
|
|
|
- Path imagePath = Paths.get(systemConfig.getImageDir(),String.valueOf(paper.getWorkId()),paper.getSubject().toString(),paper.getAreaCode(),paper.getExamNumber() + ".jpg");
|
|
|
try {
|
|
|
- File thumbFile = thumbPath.toFile();
|
|
|
+ String thumbPath = systemConfig.getThumbDir() + File.separator + paper.getWorkId() + File.separator + paper.getSubject().toString()
|
|
|
+ + File.separator + paper.getAreaCode() + File.separator + paper.getExamNumber() + ".jpg";
|
|
|
+ File thumbFile = new File(thumbPath);
|
|
|
+ File thumbOut = new File(systemConfig.getThumbDir() + File.separator + paper.getWorkId() + File.separator + paper.getSubject().toString()
|
|
|
+ + File.separator + paper.getAreaCode() + File.separator + paper.getId() + ".jpg");
|
|
|
if (thumbFile.exists()) {
|
|
|
InputStream is = new FileInputStream(thumbFile);
|
|
|
BufferedImage image = ImageIO.read(is);
|
|
|
- ImageCompression.rotate(thumbFile, thumbFile, degree);
|
|
|
+ ImageCompression.rotate(thumbFile, thumbOut, degree);
|
|
|
is.close();
|
|
|
+ thumbFile.renameTo(new File(systemConfig.getThumbDir() + File.separator + paper.getWorkId() + File.separator + paper.getSubject().toString()
|
|
|
+ + File.separator + paper.getAreaCode() + File.separator + paper.getExamNumber() +"_" + start + ".jpg"));
|
|
|
+ thumbOut.renameTo(new File(thumbPath));
|
|
|
}
|
|
|
- File imageFile = imagePath.toFile();
|
|
|
+
|
|
|
+ String imagePath = systemConfig.getImageDir() + File.separator + paper.getWorkId() + File.separator + paper.getSubject().toString()
|
|
|
+ + File.separator + paper.getAreaCode() + File.separator + paper.getExamNumber() + ".jpg";
|
|
|
+ File imageFile = new File(imagePath);
|
|
|
+ File imageOut = new File(systemConfig.getImageDir() + File.separator + paper.getWorkId() + File.separator + paper.getSubject().toString()
|
|
|
+ + File.separator + paper.getAreaCode() + File.separator + paper.getId() + ".jpg");
|
|
|
if (imageFile.exists()) {
|
|
|
InputStream is = new FileInputStream(imageFile);
|
|
|
BufferedImage image = ImageIO.read(is);
|
|
|
- ImageCompression.rotate(imageFile, imageFile, degree);
|
|
|
+ ImageCompression.rotate(imageFile, imageOut, degree);
|
|
|
+ imageFile.renameTo(new File(systemConfig.getImageDir() + File.separator + paper.getWorkId() + File.separator + paper.getSubject().toString()
|
|
|
+ + File.separator + paper.getAreaCode() + File.separator + paper.getExamNumber() +"_"+ start + ".jpg"));
|
|
|
+ imageOut.renameTo(new File(imagePath));
|
|
|
is.close();
|
|
|
}
|
|
|
- FileInputStream in = new FileInputStream(imageFile);
|
|
|
+ FileInputStream in = new FileInputStream(new File(imagePath));
|
|
|
String sliceMD5 = DigestUtils.md5Hex(in);
|
|
|
paper.setSliceMD5(sliceMD5);
|
|
|
paperRepo.save(paper);
|
|
@@ -65,7 +78,5 @@ public class RotateTask implements Runnable {
|
|
|
} catch (IOException ioe) {
|
|
|
ioe.printStackTrace();
|
|
|
}
|
|
|
- long end = System.currentTimeMillis();
|
|
|
- System.out.println("完成任务,耗时:" + (end - start) + "毫秒");
|
|
|
}
|
|
|
}
|