首页 > 其他分享 >34

34

时间:2024-03-05 20:37:09浏览次数:15  
标签:picture String dest 34 file mybatis md5

3/4

  1. 文件的配置问题(主要针对mybatis和mybatisplus)【两个都要写】

    • #mybatis配置
      mybatis:
        typeAliasesPackage: com.example.mall1.entity
        mapperLocations: classpath:mapper/*.xml
        configuration:
          map-underscore-to-camel-case: true
      mybatis-plus:
        # 搜索指定包别名
        typeAliasesPackage: com.example.*
        # 配置mapper的扫描,找到所有的mapper.xml映射文件
        mapperLocations: classpath:mapper/*Mapper.xml
        # 加载全局的配置文件
        configLocation: classpath:mybatis/mybatis-config.xml
      
  2. 数据库的配置需要依赖的添加

    datasource:
      username: root
      password: root
      url: jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
      type: com.alibaba.druid.pool.DruidDataSource
      driver-class-name: com.mysql.cj.jdbc.Driver
    
  3. @GetMappering和@PostMappering的区别

    • GetMappering地址栏有明确信息;PostMappering地址栏信息隐藏
    • 大多数情况用PostMappering
  4. 测试用swagger,应该是版本不兼容的问题,死活用不了,最后使用了Apifox

3/5

  1. 上传图片/文件的具体操作

    写在配置文件中
    
    #图片存储路径
    image:
      path: /E:/picture/
    
    serviceImpl层
    
    @Autowired
        private PictureMapper pictureMapper;
    
        @Value("${image.path}")
        private String imagePath;
    
    
        /**
         * 上传图片【到数据库】【插入操作】
         * @param
         * @return
         */
        @Override
        public String insertPicture(MultipartFile file, HttpServletRequest httpServletRequest) throws IOException {
    
            //将获取的文件转换为一个字节流
            byte[] fileBytes=file.getBytes();
            //对图片进行md5加密[将字节流转换为16进制]
            String md5=null;
            md5= DigestUtils.md5DigestAsHex(fileBytes);
    
            //获取文件的名字,后缀名,路径
            String fileName= file.getOriginalFilename();
            String lastName = fileName.substring(1+fileName.indexOf("."));
            String path = imagePath + md5 +"."+lastName;//将路径设置为新的字符串
    
    
            //如果文件dest没有目录,创建一个
            File dest = new File(path);
            if(!dest.getParentFile().exists()){
                dest.getParentFile().mkdirs();
            }
            file.transferTo(dest);//把文件存放在dest中
            //把文件/图片上传到数据库[返回的是id]
            Picture picture = new Picture();
            picture.setPictureName(fileName);
            picture.setPictureMd5(md5);
            picture.setPictureSuffix(lastName);
            picture.setPictureSize(file.getSize());
            picture.setPictureType(file.getContentType());
            picture.setPicturePath(imagePath);
    
    //        this.save(picture);
    
           pictureMapper.insert(picture);
           System.out.println(picture.getId());
            return String.valueOf(picture.getId());
        }
    

标签:picture,String,dest,34,file,mybatis,md5
From: https://www.cnblogs.com/Swxfighing/p/18054853

相关文章

  • AT_abc343_G [ABC343G] Compress Strings 题解
    分析水题,评分能有$2100$可能是因为很多人卡E了。我说真的,E好难啊。$n$只有$20$,考虑从状压的角度入手。定义状态函数$f_{s,i}$表示当某个字符串$T$包含了所有$s$的二进制中为$1$的下标$S_j$且$T$末尾包含的子串为$S_i$时$T$的最小长度。那很显然的就有转......
  • (34/60)柠檬水找零、根据身高重建队列、用最少数量的箭引爆气球
    柠檬水找零leetcode:860.柠檬水找零贪心法思路遍历一遍数组,只关注面值5、10的钞票的数量每轮判断:如果是5,five++;如果是10,判断还有没有5,有的话five--;如果是20,检查有没有一张10、一张5,ten--,five--。或者三张5,five-=3。贪心:先消耗面值10的钞票,因为它更万能。复杂度分析时间......
  • 代码随想录算法训练营day13 | leetcode 239. 滑动窗口最大值、347. 前 K 个高频元素
    目录题目链接:239.滑动窗口最大值-困难题目链接:347.前K个高频元素-中等题目链接:239.滑动窗口最大值-困难题目描述:给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。......
  • 34理解虚基类和虚继承
    理解虚基类和虚继承抽象类:有纯虚函数的类。而虚基类是被虚继承的类。classB:virtualpublicA如果是普通继承,B对象内存开头存储基类A的成员,后接B的独有成员。虚继承后B对象内存开头存储一个vbptr(virtualbaseptr),指向一个vbtable,vbtable存储两个偏移量,第一个偏移量是vbptr......
  • abc343比赛总结
    写在前面A简单,随便取两个值判一下,不过这道题的名字不吉利,叫什么WA啊?B简单,读入的时候判断一下是不是\(1\)就行了。C有点点难,题目不是那么好理解(尤其是英文不好的话)。虽然说\(N\le10^{18}\)但是仔细算一下其实只需要1e6的遍历一遍就够了,毕竟有个三次方。D......
  • 高级口译教程第5版pdf电子版,12341243
         1231123131231231第1篇:高级口译教程第四版UniteOne外事接待口译课文01浏览:2511第2篇:高级口译教程第四版UniteOne外事接待口译课文02浏览:1559第3篇:高级口译教程第四版UniteOne外事接待课外练习01浏览:1327第4篇:高级口译教程第四版Unite......
  • abc343G 题解
    题意给你\(N\)个由小写字母组成的字符串\(S_1,S_2,\ldots,S_N\),找出一个母串使得它包含所有这些字符串作为它的子串,最小化该母串的长度并输出。\(1\leqN\leq20\),\(\sum|S_i|\leq2\times10^5\)(没错洛谷翻译就是我写的)思路首先如果有一个字符串被另一个字符串......
  • 代码随想录 第13天 | ● 239. 滑动窗口最大值 ● 347.前 K 个高频元素 ● 总结
    leetcode:239.滑动窗口最大值-力扣(LeetCode)思路:看了挺长时间才反应过来与暴力算法的区别。当遇到比上一个元素大的值时,将上一个元素剔除,小于时加入队列中,每次等于窗口长度时将顶端也就是最大值存起来classSolution{publicint[]maxSlidingWindow(int[]nums,intk)......
  • ABC343 A~E 解题报告
    A-WrongAnswer模拟题,只需要每次输出\(0\)到\(9\)内不等于\(a+b\)的值就行了。#include<bits/stdc++.h>usingnamespacestd;template<typenameT>Tread(Tx){Topt=1,sum=0;charch=getchar();while(!isdigit(ch)){if(ch=='-')opt=......
  • ABC343 G Compress Strings 题解
    QuestionABC343GCompressStrings给定\(N\)个字符串\(S_1,S_2,\cdots,S_N\)找到一个包含所有这些字符串作为子字符串的最小长度的字符串一个字符串\(S\)包含一个字符串\(T\)作为子字符串是指:如果\(T\)可以通过从\(S\)的开头删除零个或多个字符以及从末尾删除......