Java项目:15 springboot vue的智慧养老手表管理系统

作者主页:源码空间codegym

简介:Java领域优质创作者、Java项目、学习资料、技术互助

文中获取源码

项目介绍

本系统共分为两个角色:家长,养老院管理员

框架:springboot、mybatis、vue

数据库:mysql 5.7(注意版本不能为8)

家属管理:个人管理、查看公告、留言板、查看老人实时信息

管理员:家属管理、公告管理、留言管理、老人健康管理、基础管理

环境要求

1.运行环境:最好是java jdk1.8,我们在这个平台上运行的。其他版本理论上也可以。

2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;

3.tomcat环境:Tomcat7.x,8.X,9.x版本均可

4.硬件环境:windows7/8/10 4G内存以上;或者Mac OS;

5.是否Maven项目:是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven.项目

6.数据库:MySql5.7/8.0等版本均可;

技术栈

后台框架:Spring Boot、MyBatis

数据库:MySQL

环境:JDK8、TOMCAT、IDEA

使用说明

1.使用Navicati或者其它工具,在mysql中创建对应sq文件名称的数据库,并导入项目的sql文件;

2.使用IDEA/Eclipse/MyEclipse导入项目,修改配置,运行项目;

3.将项目中config-propertiesi配置文件中的数据库配置改为自己的配置,然后运行;

运行指导

idea导入源码空间站顶目教程说明(Vindows版)-ssm篇:

http://mtw.so/5MHvZq

源码地址:http://codegym.top

运行截图

界面

代码

ImagesApi

java 复制代码
package com.example.careold.controller;



import com.example.careold.common.DefineData;
import com.example.careold.common.PhotoUtil;
import com.example.careold.common.ReturnCodeUtil;
import org.apache.commons.collections.map.ListOrderedMap;
import org.apache.commons.io.FileUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.OutputStream;
import java.util.Map;

/**
 * 功能:人员请求接口
 *
 * @Author: yanghd_bill
 * @create: 2018/11/19 11:03
 */
@RestController
@RequestMapping("/restful/image")
public class ImagesApi {

    private static final Logger LOG = LoggerFactory.getLogger(ImagesApi.class);
//    @Autowired
//    ConstantProperties properties;
    @Value("${local-path}")
    private String path;
    /**
     * 功能:文件保存接口
     *
     * @Author: yanghd_bill
     * @create: 2018/12/20 11:03
     */
    @PostMapping("/saveImage")
    public ListOrderedMap saveImage(@RequestParam("file") MultipartFile file) {
        ListOrderedMap result=new ListOrderedMap();
        LOG.info("-------------------------------ImagesApi.java  start----------------------------------");
        Map<String,String> res = PhotoUtil.saveFile(file,path);//C:/me/files/git/lin/oldIot/src/assets/img/
        LOG.info("-------------------------------ImagesApi.java  end----------------------------------");//C:/me/files/git/lin/oldIot/static/img
        result.put(ReturnCodeUtil.returnCode,"1111");
        return result;
    }


        @RequestMapping(value="/download")
        public ResponseEntity<byte[]> download(HttpServletRequest request, HttpServletResponse response, @RequestParam("name") String filename)throws Exception {
            //下载显示的文件名,解决中文名称乱码问题
            filename=new String(filename.getBytes("iso-8859-1"),"UTF-8");
            //下载文件路径
//            String path = request.getServletContext().getRealPath("/upload/");
            String path2 = path;
            System.out.println("下载图片");
            File file = new File( path2+ filename);
            HttpHeaders headers = new HttpHeaders();
            //下载显示的文件名,解决中文名称乱码问题
            String downloadFielName = new String(filename.getBytes("iso-8859-1"),"UTF-8");
            //通知浏览器以attachment(下载方式)打开图片
            headers.setContentDispositionFormData("Content-Disposition", downloadFielName);
            //application/octet-stream : 二进制流数据(最常见的文件下载)。
            headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
            return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),
                    headers, HttpStatus.CREATED);
        }

    @RequestMapping(value="/downloadTwo")
    public static void loanPic(String picPath, HttpServletRequest request, HttpServletResponse response, @RequestParam("name") String filename){

        String path = request.getServletContext().getRealPath("/upload/");
        File file = new File(path + File.separator + filename);
        if(file==null || !file.exists()){
            return;
        }


        OutputStream os=null;
        try {
            response.reset();
            response.setContentType("application/octet-stream;charset=utf-8");
            response.setHeader("content-Disposition","attachment;filename="+file.getName() );
            os=response.getOutputStream();
            os.write(FileUtils.readFileToByteArray(file));
            os.flush();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }


}
相关推荐
娇气的红酒14 分钟前
关于.NET VS JavaEE平台争论的沉思录
java·java-ee·.net
折哥的程序人生 · 物流技术专研16 分钟前
第3篇:手写一个饮品制作模板(附代码)
java·设计模式·行为型模式·模版方法模式·钩子方法·代码复用·编程实战
SamDeepThinking20 分钟前
为什么很多人学了Java,还是没真正理解类和对象?
java·后端·面试
暗冰ཏོ1 小时前
Spring Boot + Vue3 订单支付模块技术实现:支付单、回调验签、幂等处理与余额扣减
前端·spring boot·后端·vue·微信支付·支付宝支付
zzh___zzh1 小时前
Spring Boot资源路径与ClassPathResource详解
java
学渣超1 小时前
微服务日志智能诊断系统(八) 全链路追踪——request_id驱动的跨服务诊断
java·后端·agent
ACGkaka_1 小时前
Spring Boot 实战(四十一):集成 BPMN(Flowable+bpmn-js)
java·spring boot·后端
ljs6482739511 小时前
智慧商城(Smart Mall):基于 Spring Boot + Vue 3 的现代化电商平台实战
linux·vue.js·spring boot·后端
学渣超1 小时前
微服务日志智能诊断系统(九) 让 LLM 成为日志分析专家
java·后端·agent
学渣超1 小时前
微服务日志智能诊断系统(七) 日志 RAG 引擎——蒸馏、索引与精准检索
java·后端·agent