SpringBoot上传下载文件及在线预览
今天大概就说说如何使用SpringBoot进行上传和下载以及在线预览文件 本篇主要介绍上传下载的功能,对于界面就简单一点,大致如下:
一、老规矩还是先看看小项目的目录结构:
二、添加对应的pom依赖
org.springframework.boot
spring-boot-starter-thymeleaf
org.springframework.boot
spring-boot-starter-web
org.mybatis.spring.boot
mybatis-spring-boot-starter
2.1.1
org.springframework.boot
spring-boot-devtools
runtime
true
mysql
mysql-connector-java
5.1.47
org.projectlombok
lombok
1.18.12
com.alibaba
druid
1.1.21
commons-fileupload
commons-fileupload
1.3.3
三、创建相应的配置
spring.application.name=files
server.port=8080
server.servlet.context-path=/files
spring.thymeleaf.cache=false
spring.thymeleaf.suffix=.html
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.prefix=classpath:/templates/
spring.resources.static-locations=classpath:/templates/,classpath:/static/,file:${upload.dir}
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/files?characterEncoding=UTF-8spring.datasource.username=root
spring.datasource.password=root
mybatis.mapper-locations=classpath:/com/baizhi/mapper/*.xml
mybatis.type-aliases-package=com.baizhi.entity
#控制台进行打印日志
logging.level.root=info
logging.level.com.baizhi.dao=debug
#上传和下载文件的路径
upload.dir=D:/idea_project/java/files/target/classes/static
四、先准备登陆界面的工作
1、创建实体类
@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
@Accessors(chain=true)
public class User {
private Integer id;
private String username;
private String password;
}
2、创建对应的dao层
public interface UserDAO {
User login(User user);
}
3、创建对应的mapper映射文件
select id,username,password
from t_user
where username=#{username}
and password = #{password}
4、创建业务层接口及实现类
public interface UserService {
User login(User user);
}
@Service
@Transactional
public class UserServciceImpl implements UserService{