List of commits:
Subject Hash Author Date (UTC)
请求图片 7927e446237438a87646b872fb33de2d5442ef37 Darren 2022-01-26 02:10:27
引入Apache Commons IO v2.11.0 765f9b317909154a332896f60b4d7a9397786d1a Darren 2022-01-25 07:46:51
spring devtools配置 57ea9da33488a86c5b45960fe0d2007445019fbf Darren 2022-01-25 07:03:00
相册 711f5793832b739df993e593852411342a448670 Darren 2022-01-20 14:54:03
配置数据库 cb660a7086abc552cf99603a66cd2b0cae821ec8 Darren 2022-01-20 14:52:46
引入mybatis-plus-boot-starter@3.5.0 5de6337c72596d94847273e1f5c1eac72f615a62 Darren 2022-01-20 14:52:28
init 987817948db6829151065d2f8a7873b5ddb25773 Darren 2022-01-17 09:15:49
Commit 7927e446237438a87646b872fb33de2d5442ef37 - 请求图片
Author: Darren
Author date (UTC): 2022-01-26 02:10
Committer name: Darren
Committer date (UTC): 2022-01-26 02:10
Parent(s): 765f9b317909154a332896f60b4d7a9397786d1a
Signing key:
Tree: 104e2ff1eafca1b31ef118160e5d05fd0d297d82
File Lines added Lines deleted
src/main/java/com/darren/tommserver/controller/ImageController.java 119 0
src/main/java/com/darren/tommserver/service/ImageService.java 10 0
src/main/java/com/darren/tommserver/service/impl/ImageServiceImpl.java 12 0
src/main/resources/upload/pic01.png 0 0
File src/main/java/com/darren/tommserver/controller/ImageController.java added (mode: 100644) (index 0000000..a92aed2)
1 package com.darren.tommserver.controller;
2
3 import javax.imageio.ImageIO;
4 import java.awt.image.BufferedImage;
5 import java.io.*;
6
7 import org.apache.commons.io.IOUtils;
8 import org.springframework.http.HttpHeaders;
9 import org.springframework.http.HttpStatus;
10 import org.springframework.http.MediaType;
11 import org.springframework.http.ResponseEntity;
12 import org.springframework.util.ResourceUtils;
13 import org.springframework.web.bind.annotation.*;
14
15 /**
16 * 图片 控制层
17 *
18 * @author Darren
19 */
20 @RestController
21 @RequestMapping("image")
22 public class ImageController {
23 /**
24 * 获取图片总数
25 *
26 * @return 图片总数
27 */
28 @GetMapping(value = "count")
29 public ResponseEntity<?> getImageCount() {
30
31 return new ResponseEntity<>(1, HttpStatus.OK);
32 }
33
34 /**
35 * 获取图片
36 *
37 * @param imageName 图片名
38 * @return 图片
39 */
40 @RequestMapping(value = "i/{image_name}", produces = MediaType.IMAGE_PNG_VALUE)
41 public byte[] getImage(@PathVariable("image_name") String imageName) {
42
43 byte[] imageContent = new byte[0];
44 try {
45 // C:/wl_doc/IDEAWorkspace/Repos/ToMmServer/src/main/resources/upload
46 // /home/web/caddy/filebrowser/root/mm/img
47 // String path = ResourceUtils.getURL("classpath:upload/").getPath() + imageName;
48 File file = ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX + "upload/" + imageName);
49 FileInputStream inputStream = new FileInputStream(file);
50
51 byte[] bytes;
52 bytes = new byte[inputStream.available()];
53 inputStream.read(bytes, 0, inputStream.available());
54 imageContent = bytes;
55 IOUtils.toByteArray(inputStream);
56 } catch (IOException e) {
57 e.printStackTrace();
58 }
59 final HttpHeaders headers = new HttpHeaders();
60 headers.setContentType(MediaType.IMAGE_PNG);
61 // return new ResponseEntity<>(imageContent, headers, HttpStatus.OK);
62
63 return imageContent;
64 }
65
66
67 /**
68 * 获取Vps图片
69 *
70 * @param imageName 图片名
71 * @return 图片
72 */
73 @RequestMapping(value = "r/{image_name}", produces = MediaType.IMAGE_PNG_VALUE)
74 public byte[] getVpsImage(@PathVariable("image_name") String imageName) {
75
76 byte[] imageContent = new byte[0];
77 try {
78 // C:/wl_doc/IDEAWorkspace/Repos/ToMmServer/src/main/resources/upload
79 // /home/web/caddy/filebrowser/root/mm/img
80 // String path = ResourceUtils.getURL("classpath:upload/").getPath() + imageName;
81 // File file = ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX + "upload/" + imageName);
82 File file = ResourceUtils.getFile("/home/web/caddy/filebrowser/root/mm/img/" + imageName);
83 FileInputStream inputStream = new FileInputStream(file);
84
85 byte[] bytes;
86 bytes = new byte[inputStream.available()];
87 inputStream.read(bytes, 0, inputStream.available());
88 imageContent = bytes;
89 IOUtils.toByteArray(inputStream);
90 } catch (IOException e) {
91 e.printStackTrace();
92 }
93 final HttpHeaders headers = new HttpHeaders();
94 headers.setContentType(MediaType.IMAGE_PNG);
95 // return new ResponseEntity<>(imageContent, headers, HttpStatus.OK);
96
97 return imageContent;
98 }
99
100 /**
101 * 图片转字节
102 *
103 * @param img 图片文件
104 * @return 字节
105 */
106 private static byte[] fileToByte(File img) {
107 // imageContent = fileToByte(new File(path1));
108 byte[] bytes = null;
109 try (ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream()) {
110 BufferedImage bi = ImageIO.read(img);
111 ImageIO.write(bi, "png", byteArrayOutputStream);
112 bytes = byteArrayOutputStream.toByteArray();
113 } catch (Exception e) {
114 e.printStackTrace();
115 }
116 return bytes;
117 }
118 }
119
File src/main/java/com/darren/tommserver/service/ImageService.java added (mode: 100644) (index 0000000..d622102)
1 package com.darren.tommserver.service;
2
3 /**
4 * 图片 Service
5 *
6 * @author Darren
7 */
8 public interface ImageService {
9
10 }
File src/main/java/com/darren/tommserver/service/impl/ImageServiceImpl.java added (mode: 100644) (index 0000000..8c28198)
1 package com.darren.tommserver.service.impl;
2
3 import com.darren.tommserver.service.ImageService;
4
5 /**
6 * 图片 Service
7 *
8 * @author Darren
9 */
10 public class ImageServiceImpl implements ImageService {
11
12 }
File src/main/resources/upload/pic01.png added (mode: 100644) (index 0000000..e139854)
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/darren/ToMmServer

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/darren/ToMmServer

Clone this repository using git:
git clone git://git.rocketgit.com/user/darren/ToMmServer

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main