小于博客 小于博客
首页
  • Java学习笔记
  • Docker专区
  • 实战教程
  • Shell
  • 内存数据库
  • Vue学习笔记
  • Nginx
  • Php
  • CentOS
  • Docker
  • Gitlab
  • GitHub
  • MySql
  • MongoDB
  • OpenVPN
  • 配置文件详解
  • Other
  • ELK
  • K8S
  • Nexus
  • Jenkins
  • 随写编年
  • 电影音乐
  • 效率工具
  • 博客相关
  • 最佳实践
  • 迎刃而解
  • 学习周刊
关于
友链
  • 本站索引

    • 分类
    • 标签
    • 归档
  • 本站页面

    • 导航
    • 打赏
  • 我的工具

    • 备忘录清单 (opens new window)
    • 网站状态 (opens new window)
    • json2go (opens new window)
    • 微信MD编辑 (opens new window)
    • 国内镜像 (opens new window)
    • 出口IP查询 (opens new window)
    • 代码高亮工具 (opens new window)
  • 外站页面

    • 开往 (opens new window)
    • ldapdoc (opens new window)
    • HowToStartOpenSource (opens new window)
    • vdoing-template (opens new window)
GitHub (opens new window)

小于博客

行者常至,为者常成
首页
  • Java学习笔记
  • Docker专区
  • 实战教程
  • Shell
  • 内存数据库
  • Vue学习笔记
  • Nginx
  • Php
  • CentOS
  • Docker
  • Gitlab
  • GitHub
  • MySql
  • MongoDB
  • OpenVPN
  • 配置文件详解
  • Other
  • ELK
  • K8S
  • Nexus
  • Jenkins
  • 随写编年
  • 电影音乐
  • 效率工具
  • 博客相关
  • 最佳实践
  • 迎刃而解
  • 学习周刊
关于
友链
  • 本站索引

    • 分类
    • 标签
    • 归档
  • 本站页面

    • 导航
    • 打赏
  • 我的工具

    • 备忘录清单 (opens new window)
    • 网站状态 (opens new window)
    • json2go (opens new window)
    • 微信MD编辑 (opens new window)
    • 国内镜像 (opens new window)
    • 出口IP查询 (opens new window)
    • 代码高亮工具 (opens new window)
  • 外站页面

    • 开往 (opens new window)
    • ldapdoc (opens new window)
    • HowToStartOpenSource (opens new window)
    • vdoing-template (opens new window)
GitHub (opens new window)
  • Java学习笔记

    • RequestBody和RequestParam区别全面详细
    • BigDecimal用法
    • Java笔试易错点记录
    • jsencrypt.js前端参数RSA加密
    • SpringBoot调用http请求的6种方式
    • vue实现点击不同按钮展示不同内容
    • 精髓代码随手笔记
      • 1.利用GSON把map转换成string
      • 2.把String转换成Map
      • 3.new线程休眠时间
      • 4.可重入锁--并发锁的添加(当程序多线程执行时给当前线程加一把锁)
      • 5.动态日期处理(几分钟之前)
    • 经典代码汇总
    • 项目实战问题笔记
    • CentOS7下安装mysql5.7
    • SpringBoot 快速实现 api 加密!
  • Docker专区

  • Shell编程

  • 实战教程

  • 内存数据库

  • Vue学习笔记

  • 编程世界
  • Java学习笔记
小于博客
2024-01-18
目录

精髓代码随手笔记

精髓代码随手笔记

# 1.利用GSON把map转换成string

    Map<String, String> params;
    Gson gson = new Gson();
    String json = gson.toJson(params, HashMap.class);
1
2
3

# 2.把String转换成Map

    String plainText;
    Gson gson = new Gson();
    HashMap plainTextMap = gson.fromJson(plainText, HashMap.class);
1
2
3

# 3.new线程休眠时间

    //休息5秒
    TimeUnit.SECONDS.sleep(5);
1
2

# 4.可重入锁--并发锁的添加(当程序多线程执行时给当前线程加一把锁)

//new可重入锁(和synchronized同步锁区别:ReentrantLock锁可以重复进入,当已有程序进
    //入则自动跳过synchronized锁会让程序等待当前线程执行完毕才能执行)
    private final ReentrantLock lock = new ReentrantLock();

    if(lock.tryLock()){
        try{
            //业务处理
        } finally {
            lock.unlock();
        }
    }
1
2
3
4
5
6
7
8
9
10
11

# 5.动态日期处理(几分钟之前)

    //日期没有处理前
    @GetMapping("/demo")
    public R test(){
        //五分钟之前(和北京时间差8小时)
        Instant now = Instant.now().minus(Duration.ofMinutes(5));
        return R.ok().data("msg","测试demo").data("now",new Date()).data("date",now);
    }
    //输出结果
    {"code":0,"msg":"成功","data":{"msg":"测试demo","date":"2022-11-18T08:07:39.330Z","now":"2022-11-18T16:07:39.330+0800"}}
    //配置文件加入
    spring:
      jackson:
        date-format: yyyy-MM-dd HH:mm:ss
        time-zone: GMT+8
    //输出结果
    {"code":0,"msg":"成功","data":{"msg":"测试demo","date":"2022-11-18T08:16:37.075Z","now":"2022-11-18 16:16:37"}}

    {"code":0,"msg":"成功","data":{"aa":11,"aa1":112}}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
上次更新: 2024/02/03, 13:17:04

← vue实现点击不同按钮展示不同内容 经典代码汇总→

最近更新
01
SpringBoot 快速实现 api 加密!
03-21
02
SpringBoot整合SQLite
03-07
03
SpringBoot配置使用H2数据库的简单教程
02-21
更多文章>
Theme by Vdoing | Copyright © 2017-2024 | 点击查看十年之约 | 豫ICP备2022014539号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式