java毕业设计基于springboot的艺术展览馆艺术品管理系统

本文介绍了使用Java和SpringBoot框架开发的艺术展览馆管理系统,包括需求分析、功能模块(如用户管理、艺术品管理等)、数据库设计,以及核心代码示例。系统包括前台和后台,实现了艺术品浏览、登录验证等功能,并进行了详细的系统测试。
摘要由CSDN通过智能技术生成

一、项目介绍

  论文先介绍当前基于Web的艺术展览馆艺术品管理系统的现状,然后调研开发这一系统的主流技术,最终选择通过Java的SpringBoot框架开发,选择轻量级的关系型MySQL数据库存储数据。接着进行系统的需求分析、功能设计、数据库设计,最后进行编码实现。基于Web的艺术展览馆艺术品管理系统主要包括了前台和后台信息管理两个部分,前台实现艺术品浏览、艺术品作者浏览、公告信息查看、留言板等,后台实现实现艺术品管理、艺术品作者管理、公告管理、留言管理、艺术品去向管理、系统管理功能。
关键词:艺术展览馆;艺术品;Java;MySQL;SpringBoot

二、开发环境

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————

三、功能介绍

根据系统需求的描述,可以把基于Web的艺术展览馆艺术品管理系统划分为多个功能模块,如用户管理、艺术品管理、艺术品作者管理、公告管理、留言管理、艺术品去向管理、系统管理。其中系统功能图如4.1所示。
在这里插入图片描述

图4.1:系统功能模块图
具体如下:
1)网站首页:艺术品浏览展示,艺术品作者线下。供会员浏览查看。
2)注册登录:实现用户注册成会员,登录系统实现,注册成功之后默认为登录状态。
3)作品基本信息管理模块:对作品类别的管理和作品库的管理。
4)作者管理模块:可以在这里查看到馆藏艺术品作者在该馆内的所有作品,以及作者的个人基本信息和联系方式等。
5)作品去向管理模块:对馆内艺术品的流向以及丢失和损坏情况进行及时的记录和统计。
6)用户管理模块:分为系统用户管理和美术馆员工信息管理两部分。系统用户将主要分为普通用户和管理员用户。普通用户可以使用系统对作品基本信息、作品作者、作品去向以及馆内员工信息进行管理,还可以对自己的基本信息和登录密码进行修改。管理员用户除了可以执行普通用户的权限外还可以对其他用户信息进行查看、增加、修改和删除操作
7)前台会员查看作者信息、查看作者的作品、作品评论、留言管理

四、核心代码

部分代码:

package com.example.controller;

import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {

    @Resource
    private CaiwuService caiwuService;

    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
	
	

    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }

    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }

    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
	    @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}

五、效果图

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

六、文章目录

目 录
摘 要 III
Abstract IV
第1章 绪论 1
1.1系统开发背景 1
1.2系统研究现状 1
1.3系统开发意义 2
1.4研究内容 3
第2章 相关技术介绍 4
2.1 JAVA语言 4
2.2 开发工具 4
2.3 数据库技术 5
2.4 SpringBoot框架 5
第3章 系统分析 6
3.1 系统的需求分析 6
3.1.1 系统功能性需求 6
3.1.2 系统非功能性需求 6
3.2 管理员功能需求 7
3.2.1 管理员用例图 7
3.2.2 管理员用例规约 7
3.3 员工功能需求 8
3.3.1 员工用例图 8
3.2.3 员工用例规约 9
3.4 会员功能需求 10
3.4.1 会员用例图 10
3.4.2 会员用例规约 11
第4章 系统设计 12
4.1系统架构设计 12
4.2系统功能设计 12
4.3数据库层的设计 13
4.3.1 数据库逻辑结构设计 13
4.3.2 数据库物理结构设计 14
第5章 系统实现 18
5.1前台首页的实现 18
5.2用户登录模块实现 18
5.3系统管理模块的实现 19
5.4用户管理模块的实现 21
5.5前台信息管理模块的实现 23
5.6作品去向模块的实现 25
第6章 系统测试 27
6.1 系统开发环境和运行条件 27
6.2 系统测试 27
6.2.1 测试说明 27
6.2.2 功能测试 27
6.2.3 测试结论 30
总结 31
参考文献 32
致谢 34

  • 19
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值