hehongxing 3 years ago
parent
commit
8f1585fdf5
  1. 1
      04.系统编码/Backend/pom.xml
  2. 24
      04.系统编码/Backend/src/main/java/com/userinformation/backend/config/WebMvcConfig.java
  3. 29
      04.系统编码/Backend/src/main/java/com/userinformation/backend/controller/ImageController.java
  4. 43
      04.系统编码/Backend/src/main/java/com/userinformation/backend/service/ImageService.java
  5. 6
      04.系统编码/Backend/src/main/resources/application.yml
  6. 12
      04.系统编码/Backend/src/test/java/com/userinformation/backend/UserInformationApplicationTests.java
  7. 3
      04.系统编码/Frontend/src/uilts/axios.ts

1
04.系统编码/Backend/pom.xml

@ -51,6 +51,7 @@
<version>1.0.29</version>
</dependency>
</dependencies>
<build>

24
04.系统编码/Backend/src/main/java/com/userinformation/backend/config/WebMvcConfig.java

@ -0,0 +1,24 @@
package com.userinformation.backend.config;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
/**
* @describe: 虚拟目录配置
* @author: xiaowuler
* @createTime: 2021-12-03 09:33
*/
@Configuration
public class WebMvcConfig extends WebMvcConfigurerAdapter {
@Value("${custom.image.path}")
private String path;
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/product/**").addResourceLocations("file:" + path + "/");
}
}

29
04.系统编码/Backend/src/main/java/com/userinformation/backend/controller/ImageController.java

@ -0,0 +1,29 @@
package com.userinformation.backend.controller;
import java.io.IOException;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.userinformation.backend.service.ImageService;
import com.userinformation.backend.util.RequestResult;
/**
* @describe: 图片处理控制层
* @author: xiaowuler
* @createTime: 2021-12-03 13:10
*/
@RestController
@RequestMapping("image")
public class ImageController {
private final ImageService imageService;
public ImageController(ImageService imageService){
this.imageService = imageService;
}
@PostMapping("convert")
public RequestResult convert(String url) throws IOException {
return RequestResult.success(imageService.convert(url));
}
}

43
04.系统编码/Backend/src/main/java/com/userinformation/backend/service/ImageService.java

@ -0,0 +1,43 @@
package com.userinformation.backend.service;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Locale;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.Assert;
/**
* @describe: 图片处理 逻辑层
* @author: xiaowuler
* @createTime: 2021-12-03 13:12
*/
@Service
public class ImageService {
@Value("${custom.image.path}")
private String imagePath;
@Value("${custom.image.url}")
private String imageUrl;
private final static String TIF_FILE_SUFFIX = ".tif";
private final static String PNG_FILE_SUFFIX = ".png";
public String convert(String url) throws IOException {
String filepath = url.replace(imageUrl, imagePath);
File sourceFile = new File(filepath);
Assert.isTrue(sourceFile.exists(), "文件不存在");
Assert.isTrue(filepath.toLowerCase(Locale.ROOT).endsWith(TIF_FILE_SUFFIX), "文件格式不正确");
String targetFilePath = filepath.replace(TIF_FILE_SUFFIX, PNG_FILE_SUFFIX);
File targetFile = new File(targetFilePath);
if (!targetFile.exists()){
BufferedImage image = ImageIO.read(sourceFile);
ImageIO.write(image, "png", targetFile);
}
return targetFilePath.replace(imagePath, imageUrl);
}
}

6
04.系统编码/Backend/src/main/resources/application.yml

@ -1,8 +1,12 @@
server:
port: 8001
port: 8002
spring:
datasource:
url: jdbc:mysql://112.124.40.88:33306/user_information?useUnicode=true&characteEncoding=utf-8
username: root
password: 3cqscbr@only1
driver-class-name: com.mysql.cj.jdbc.Driver
custom:
image:
url: http://112.124.40.88:8002/product
path: D:/Deployments/LamanRadar/product

12
04.系统编码/Backend/src/test/java/com/userinformation/backend/UserInformationApplicationTests.java

@ -1,5 +1,11 @@
package com.userinformation.backend;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@ -7,7 +13,11 @@ import org.springframework.boot.test.context.SpringBootTest;
class UserInformationApplicationTests {
@Test
void contextLoads() {
void contextLoads() throws IOException {
File inputFile = new File("C:\\Users\\xiaowuler\\Desktop\\images\\decision-support\\plan-advice\\control-experiment\\TFLD_Q2.tif");
File outputFile = new File("C:\\Users\\xiaowuler\\Desktop\\output.png");
BufferedImage image = ImageIO.read(inputFile);
ImageIO.write(image, "png", outputFile);
}
}

3
04.系统编码/Frontend/src/uilts/axios.ts

@ -5,7 +5,8 @@ import { ElLoading } from 'element-plus'
let loading = null;
const service = axios.create({
baseURL:"http://112.124.40.88:8002",
baseURL:"http://localhost:8002",
// baseURL:"",
timeout: 500000
})

Loading…
Cancel
Save