Spring MVC 上传、下载、显示图片

此页面是否是列表页或首页?未找到合适正文内容。

Spring MVC 上传、下载、显示图片

标签:3.5vax自己提交pom手机号单元strcomm

通过这篇文章你可以了解到:

  • 使用 SpringMVC 框架,上传图片,并将上传的图片保存到文件系统,并将图片路径持久化到数据库
  • 在 JSP 页面上实现显示图片、下载图片
  • [TOC]

    1. 准备工作

    首先我们需要准备好开发环境,本文测试环境是 SSM(Spring 4.3.9 + SpringMVC 4.3.9 + MyBatis 3.4.4) ,数据库为 MySQL 5.5,数据库连接池 C3P0 0.9.5.2,构建包 Maven 3.5.0,Tomcat 8.5。

    限于篇幅原因,关于 SSM 框架的整合方法,在这篇文章中就不做详细的讲解啦,有关图片上传和下载的相关配置,我会特别标注出来说明的。

    我们假定有这样一个很常见的需求场景:用户注册。

    首先我们来做一下简单的业务分析,在注册页面,用户填写自己的相关信息,然后选择上传头像图片,注册成功后显示个人信息,并将图片显示在页面上。

    一看就是一个很简单的需求吧,那我们就来做相应的数据准备工作吧。

    1.1 数据库表准备

    数据库非常简单,就一张表:t_user

    字段
    类型
    长度
    主键
    描述

    user_id
    int
    11
    PK,自增
    用户表主键

    user_name
    varchar
    50

    用户名

    user_tel
    varchar
    20

    手机号

    user_password
    varchar
    20

    密码

    user_pic
    varchar
    255

    用户头像地址

    1.2 实体类 User 和 Mapper(DAO)

    对应数据库表 t_user 创建实体类:User

    这里我使用 mybatis-generate 代码生成器根据 t_user 表结构自动生成实体类 和 Mybatis 的 mapper 文件。

    User 实体类的代码如下(省略了 getter/setter):

    package com.uzipi.entity;

    public class User {
    private Integer userId;
    private String userName;
    private String userTel;
    private String userPassword;
    private String userPic;
    }

    生成的 dao 层 java 代码如下:

    package com.uzipi.dao;

    import com.uzipi.entity.User;
    import org.mybatis.spring.annotation.MapperScan;

    @MapperScan // 允许 Spring 扫描该 Mapper
    public interface UserMapper {
    // 删除指定 key 的记录
    int deleteByPrimaryKey(Integer userId);

    // 插入一条记录(完整记录)
    int insert(User record);

    // 插入一条记录(对象中有值时写入字段,没有值的置空)
    int insertSelective(User record);

    // 查询指定 key 的记录
    User selectByPrimaryKey(Integer userId);

    // 将对象中的内容更新入库(对象中有值时更新字段,没有值的属性不修改)
    int updateByPrimaryKeySelective(User record);

    // 将对象中的内容更新入库(全属性)
    int updateByPrimaryKey(User record);
    }

    生成的 mapper.xml 文件内容比较多,在文章里就不展示了,后面附件中提供了下载文件供参考。

    1.3 pom.xml 依赖包
    <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/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.uzipi</groupId>

    作者: 大白菜装机

    为您推荐

    返回顶部