关于图片和视频的文件上传

本文介绍了如何进行图片和视频的文件上传,包括pom.xml的依赖配置,entity类、Dao层、Service层和Controller层的详细设计,以及前端jsp页面的展示,包括文件预览和使用jQuery实现的放大功能。
摘要由CSDN通过智能技术生成

关于图片和视频的文件上传**

pom.xml文件的引入

<dependency>     
<groupId>commons-fileupload</groupId>        
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>    
</dependency>    
<dependency>     
<groupId>commons-io</groupId>     
<artifactId>commons-io</artifactId>      
<version>2.4</version>    
</dependency>

entity类

private Integer id;
 private String fileType;//文件类型
 private String savePath;//文件路径
 @DateTimeFormat(pattern="yyyy-MM-dd")
 private Date creationTime;//创建时间
 private String puid;//设备id
 private String imgName;//名称

Dao层接口

/**
  * 上传文件
  * @param file
  * @return
  */
 public int addFile(Files file) throws DataAccessException;
 
 /**
  * 查看全部信息
  * @return
  * @throws DataAccessException
  */
 List<Files> fileList() throws DataAccessException;
  
 /**
  * 查看全部上传信息
  * 通过文件类型和创建时间进行查询
  * @param fileType
  * @param creationTime
  * @return
  */
 List<Files> findLikeByTypeAndByTime(@Param("fileType")String fileType,@Param("creationTime")String creationTime,Pagination pagination) throws DataAccessException;
 
 /**
  * 查询文件类型列表
  * @return
  */
 List<Files> getFileType() throws DataAccessException;
 
 /**
  * 通过id删除文件信息
  * @param id
  * @return
  */
 public int deleteFileById(int id) throws DataAccessException;

Dao.xml文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.censoft.file.dao.FilesDao" >
 <!--文件的上传  public int addFile(Files file); -->
 
   <insert id="addFile">
    INSERT INTO `file`(fileType,savePath,creationTime,puid,imgName) VALUES(#{fileType},#{savePath},now(),#{puid},#{imgName})
   </insert>
   
   <!--查看全部上传信息   List<Files> findAllFiles() -->
     <select id="findAllFiles" resultType="com.censoft.file.entity.Files">
      SELECT * FROM `file` ORDER BY id DESC
     </select>
     
    <!-- 有有封装的分页模板,Pagination pagination ,可直接查看全部或者按条件查询--> 
   <!-- List<Files> findLikeByTypeAndByTime(@Param("fileType")String fileType,@Param("creationTime")Date creationTime); -->
     <select id="findLikeByTypeAndByTime" resultType="com.censoft.file.entity.Files">
    SELECT * FROM `file`
    <where>
     <if test="fileType !=null and fileType !=''">
      fileType = #{fileType} 
     </if>
     <if test="creationTime != null and creationTime !=''">
      and creationTime = #{creationTime}
     </if>
    </where>
    ORDER BY id DESC
   </select>  
      
   <!-- 查询文件类型列表   List<Files> getFileType()-->
   <select id="getFileType" resultType="com.censoft.file.entity.Files">
    SELECT * FROM `file` GROUP BY fileType 
   </select>
      
   <!--通过id删除文件信息     public int deleteFileById(int id) -->
   <delete id="deleteFileById">
    DELETE FROM `file` WHERE id=#{id}
   </delete>
</mapper>

Service接口

/**
  * 上传文件
  * @param file
  * @return
  */
 public int addFile(Files file) throws DataAccessException;
 
 /**
  * 查看全部上传信息
  * 通过文件类型和创建时间进行查询
  * @param fileType
  * @param creationTime
  * @return
  */
 List<Files> findLikeByTypeAndByTime(@Param("fileType")String fileType,@Param("creationTime")String creationTime,Pagination pagination) throws DataAccessException;
  
 /**
  * 查询文件类型列表
  * @return
  */
 List<Files> getFileType() throws DataAccessException;
  
 /**
  * 通过id删除文件信息
  * @param id
  * @return
  */
 public int deleteFileById(int id) throws DataAccessException;

Service实现层

/**
  * 上传文件
  * @param file
  * @return
  */
 public int addFile(Files file) throws DataAccessException;
 
 /**
  * 查看全部上传信息
  * 通过文件类型和创建时间进行查询
  * @param fileType
  * @param creationTime
  * @return
  */
 List<Files> findLikeByTypeAndByTime(@Param("fileType")String fileType,@Param("creationTime")String creationTime,Pagination pagination) throws DataAccessException;
  
 /**
  * 查询文件类型列表
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值