web应用开发-文件上传

来源:互联网 发布:支付宝如何登陆淘宝 编辑:程序博客网 时间:2024/06/05 04:05
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.roncoo.education</groupId><artifactId>spring-boot-demo-12-1</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>spring-boot-demo-12-1</name><description>Demo project for Spring Boot</description><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.4.0.RELEASE</version><relativePath /> <!-- lookup parent from repository --></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-freemarker</artifactId></dependency><dependency><groupId>org.webjars</groupId><artifactId>jquery</artifactId><version>2.1.4</version></dependency><!-- 数据库 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>


/** * 2015-2016 龙果学院 (www.roncoo.com) */package com.roncoo.education.controller;import java.io.File;import java.io.IOException;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.multipart.MultipartFile;/** * spring-boot-demo-12-1 *  * @author wujing */@Controller@RequestMapping(value = "/file")public class FileController {private static final Logger logger = LoggerFactory.getLogger(FileController.class);@RequestMapping(value = "upload")@ResponseBodypublic String upload(@RequestParam("roncooFile") MultipartFile file) {if (file.isEmpty()) {return "文件为空";}// 获取文件名String fileName = file.getOriginalFilename();logger.info("上传的文件名为:" + fileName);// 获取文件的后缀名String suffixName = fileName.substring(fileName.lastIndexOf("."));logger.info("上传的后缀名为:" + suffixName);// 文件上传路径String filePath = "d:/roncoo/ttt/";// 解决中文问题,liunx下中文路径,图片显示问题// fileName = UUID.randomUUID() + suffixName;File dest = new File(filePath + fileName);// 检测是否存在目录if (!dest.getParentFile().exists()) {dest.getParentFile().mkdirs();}try {file.transferTo(dest);return "上传成功";} catch (IllegalStateException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return "上传失败";}}
/** * 2015-2016 龙果学院 (www.roncoo.com) */package com.roncoo.education.controller;import org.springframework.stereotype.Controller;import org.springframework.ui.ModelMap;import org.springframework.web.bind.annotation.RequestMapping;/** * spring-boot-demo-12-1 *  * @author wujing */@Controller@RequestMapping(value = "/web")public class WebController {@RequestMapping(value = "index")public String index(ModelMap map) {map.put("title", "freemarker hello word");return "index"; // 开头不要加上/,linux下面会出错}@RequestMapping(value = "error")public String error(ModelMap map) {throw new RuntimeException("测试异常");}}
/** * 2015-2016 龙果学院 (www.roncoo.com) */package com.roncoo.education.controller;import java.util.HashMap;import org.springframework.web.bind.annotation.CrossOrigin;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.RestController;/** * @author wujing */@RestController@RequestMapping(value = "/api", method = RequestMethod.POST)public class ApiController {@CrossOrigin(origins = "http://localhost:8080")@RequestMapping(value = "/get")public HashMap<String, Object> get(@RequestParam String name) {HashMap<String, Object> map = new HashMap<String, Object>();map.put("title", "hello world");map.put("name", name);return map;}}
//application.properties
#主配置文件,配置了这个会优先读取里面的属性覆盖主配置文件的属性spring.profiles.active=dev# 应用自定义配置logging.config=classpath:logback-roncoo.xmlspring.http.multipart.max-file-size=2Mbspring.http.multipart.max-request-size=10Mb
//application-dev.properties
#开发环境#端口配置server.port=8080#数据库连接配置spring.datasource.url=jdbc:mysql://localhost/spring_boot_demo?useUnicode=true&characterEncoding=utf-8spring.datasource.username=rootspring.datasource.password=123456spring.datasource.driver-class-name=com.mysql.jdbc.Driver
原创粉丝点击