Nginx 搭建图片服务器( 二 )


<?xml version="1.0" encoding="UTF-8"?><web-App xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://JAVA.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="taotao" version="2.5"> <display-name>pictrue-service</display-name> <!-- 加载spring容器 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/applicationContext-*.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- 解决post乱码 --> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>utf-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- springmvc的前端控制器 --> <servlet> <servlet-name>pictrue-service</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/springmvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>pictrue-service</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping></web-app>再是 SpringMVC 配置文件 springmvc.xml,需要添加文件上传解析器
<!-- 定义文件上传解析器 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- 设定默认编码 --> <property name="defaultEncoding" value=https://www.isolves.com/it/wlyx/fwq/2019-08-20/"UTF-8"> <!-- 设定文件上传的最大值5MB,5*1024*1024 --> <property name="maxUploadSize" value=https://www.isolves.com/it/wlyx/fwq/2019-08-20/"5242880"> </bean>最后是 Ftp 配置文件 resource.properties
FTP_ADDRESS=192.168.0.11FTP_PORT=21FTP_USERNAME=ftpuserFTP_PASSword=rootFTP_BASE_PATH=/usr/local/nginx/html/imagesIMAGE_BASE_URL=http://192.168.0.11/images 
Service 层上传图片的接口 PictureService.java
/** * 上传,批量上传接口 * @param uploadFile * @return */ Map uploadPicture(MultipartFile uploadFile);}上传图片接口实现类 PictureServiceImpl.java
@Service@SuppressWarnings({"rawtypes", "unchecked"})public class PictureServiceImpl implements PictureService { // 通过 Spring4 的 Value注解,获取配置文件中的属性值 @Value("${FTP_ADDRESS}") private String FTP_ADDRESS; // ftp 服务器ip地址 @Value("${FTP_PORT}") private Integer FTP_PORT; // ftp 服务器port,默认是21 @Value("${FTP_USERNAME}") private String FTP_USERNAME; // ftp 服务器用户名 @Value("${FTP_PASSWORD}") private String FTP_PASSWORD; // ftp 服务器密码 @Value("${FTP_BASE_PATH}") private String FTP_BASE_PATH; // ftp 服务器存储图片的绝对路径 @Value("${IMAGE_BASE_URL}") private String IMAGE_BASE_URL; // ftp 服务器外网访问图片路径 @Override public Map uploadPicture(MultipartFile uploadFile) { Map resultMap = new HashMap<>; try { // 1. 取原始文件名 String oldName = uploadFile.getOriginalFilename;


推荐阅读