夏虫语冰彡
码龄9年
关注
提问 私信
  • 博客:195,051
    195,051
    总访问量
  • 69
    原创
  • 1,302,715
    排名
  • 66
    粉丝
  • 0
    铁粉

个人简介:程序猿一枚

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
  • 加入CSDN时间: 2016-03-14
博客简介:

qq_34283987的博客

查看详细资料
个人成就
  • 获得137次点赞
  • 内容获得15次评论
  • 获得540次收藏
  • 代码片获得176次分享
创作历程
  • 1篇
    2022年
  • 8篇
    2020年
  • 25篇
    2019年
  • 2篇
    2018年
  • 49篇
    2017年
成就勋章
TA的专栏
  • react.js
    2篇
  • java
    19篇
  • springboot
    5篇
  • 架构
    10篇
  • 权限管理
    1篇
  • Git
    1篇
  • Ajax
    1篇
  • maven
    1篇
  • Google
    1篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 前端
    react.js
  • 后端
    springnode.js架构
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

嵌套事务分析@Transactional

嵌套事务分析
转载
发布博客 2022.11.21 ·
1193 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

正向代理和反向代理的区别

两者的区别在于代理的对象不一样:正向代理代理的对象是客户端,从服务器角度是不能直接看到自己的响应被谁接受,隐藏客户端反向代理代理的对象是服务端,从客户端来看并不知道实际请求的服务器具体是哪一个服务器来接收,隐藏服务器举例:正向代理:服务员收到点餐请求,交给大厨服务器响应,大厨并不知道是哪个顾客点的餐,此为正向。反向代理:顾客去点餐,取号,点餐请求被服务员处理,交给后台大厨服务器响应,顾客并不知道是哪个大厨做的,此为反向。例子中服务员充当代理角色,只有他知道谁点的餐,交给谁做。顾客已知,大厨未
原创
发布博客 2020.09.25 ·
334 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

批处理 rewriteBatchedStatements=true

最近在优化大批量数据插入的性能问题。项目原来使用的大批量数据插入方法是Mybatis的foreach拼接SQL的方法。我发现不管改成Mybatis Batch提交或者原生JDBC Batch的方法都不起作用,实际上在插入的时候仍然是一条条记录的插,速度远不如原来Mybatis的foreach拼接SQL的方法。这对于常理来说是非常不科学的。下面先罗列一下三种插入方式:public class NotifyRecordDaoTest extends BaseTest { @Resource(n
原创
发布博客 2020.07.30 ·
25905 阅读 ·
24 点赞 ·
7 评论 ·
89 收藏

Ftp、Ftps与Sftp之间的区别

用qt写了一个ftp自动升级软件的功能,调试发现有问题,实际服务器用的是sftp ssh。https://www.cnblogs.com/Javi/p/6904587.htmlFtpFTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于I...
转载
发布博客 2020.07.29 ·
1424 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

啥叫K8s?啥是k8s?

...
转载
发布博客 2020.01.22 ·
464 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

浅谈模板引擎

浅谈模板引擎 模板原理模板的诞生是为了将显示与数据分离,模板技术多种多样,但其本质是将模板文件和数据通过模板引擎生成最终的HTML代码。模板技术并不是什么神秘技术,干的是拼接字符串的体力活。模板引擎就是利用正则表达式识别模板标识,并利用数据替换其中的标识符。比如:Hello, <%= name%>数据是{name: '木的树'},那么通过...
原创
发布博客 2020.01.21 ·
232 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Lambda表达式有什么用?怎么来的?

Lambda表达式有什么用?
转载
发布博客 2020.01.19 ·
254 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java多线程优化方法及使用方式

一、多线程介绍  在编程中,我们不可逃避的会遇到多线程的编程问题,因为在大多数的业务系统中需要并发处理,如果是在并发的场景中,多线程就非常重要了。另外,我们在面试的时候,面试官通常也会问到我们关于多线程的问题,如:如何创建一个线程?我们通常会这么回答,主要有两种方法,第一种:继承Thread类,重写run方法;第二种:实现Runnable接口,重写run方法。那么面试官一定会问这两种...
转载
发布博客 2020.01.07 ·
369 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Spring 源码梳理(一) ClassPathXmlApplicationContext

ClassPathXmlApplicationContext1.为什么要分析Spring源码:1)有意往架构上发展,分析Spring可清楚它做了哪些事情,如何做这些事情2)Spring本身是对Java的丰富和发展,阅读可提高自己的水平2.怎样分析S...
转载
发布博客 2020.01.07 ·
217 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

可能是史上最全的权限系统设计(转)

权限系统设计前言权限管理是所有后台系统的都会涉及的一个重要组成部分,主要目的是对不同的人访问资源进行权限的控制,避免因权限控制缺失或操作不当引发的风险问题,如操作错误,隐私数据泄露等问题。目前在公司负责权限这块,所以对权限这块的设计比较熟悉,公司采用微服务架构,权限系统自然就独立出来了,其他业务系统包括商品中心,订单中心,用户中心,仓库系统,小程序,多个APP等十几个系统和终端1...
转载
发布博客 2019.12.31 ·
225 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

程序版本(分支)管理策略

程序版本(分支)管理策略当前很多项目实施现场都采用登记簿(excel)的方式管理程序版本,而且每次版本部署都是采用增量发布class文件的方式。这种手工的管理方式,生产处理效率低下,开发人员或版本管理人员容易遗漏代码。如果管理不善,线上代码已经无法找到其源代码,还得靠反编译class的方式获取源代码。当今互联网化的IT开发模式下,程序版本更迭快,运维需要打包、测试、发布等操作都线上自动...
原创
发布博客 2019.12.31 ·
1630 阅读 ·
0 点赞 ·
0 评论 ·
9 收藏

springboot异步调用@Async

1.使用背景在项目中,当访问其他人的接口较慢或者做耗时任务时,不想程序一直卡在耗时任务上,想程序能够并行执行,我们可以使用多线程来并行的处理任务,也可以使用spring提供的异步处理方式@Async。2.异步处理方式调用之后,不返回任何数据。调用之后,返回数据,通过Future来获取返回数据3.@Async不返回数据使用@EnableAsync启用异步注解@Configurati...
原创
发布博客 2019.12.27 ·
227 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

如何优化JAVA代码及提高执行效率(转)

可供程序利用的资源(内存、CPU时间、网络带宽等)是有限的,优化的目的就是让程序用尽可能少的资源完成预定的任务。优化通常包含两方面的内容:减小代码的体积,提高代码的运行效率。本文讨论的主要是如何提高代码的效率。在Java程序中,性能问题的大部分原因并不在于Java语言,而是在于程序本身。养成好的代码编写习惯非常重要,比如正确地、巧妙地运用java.lang.String类和java.ut...
转载
发布博客 2019.12.27 ·
405 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

有哪些通俗易懂的例子可以解释 IaaS、PaaS、SaaS 的区别?

首先,什么是“云”?很多年前,我们家住一小平房,喝水就喝院子里的井水,冬天取暖自己烧煤炉。后来经济状况好了,搬进了楼房,喝水喝上了集中供应的自来水,冬季用上了集中供应的暖气,再也不用打水和掏黑煤球。这就是“云”的基本概念,过去企业数据维护需要恒温恒湿的机房、一排排服务器以及专业的维护人员。现在云服务器成为了公...
原创
发布博客 2019.12.18 ·
378 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

一张图看懂IaaS, PaaS和SaaS的区别

译:老夫子原文:https://www.bmc.com/blogs/saas-vs-paas-vs-iaas-whats-the-difference-and-how-to-choose/ 从小型企业到全球企业,云都是一个非常热门的话题,它是一个非常广泛的概念,涵盖了很多在线领域。 无论是应用...
转载
发布博客 2019.12.18 ·
837 阅读 ·
0 点赞 ·
1 评论 ·
3 收藏

Java中Native关键字的作用

初次遇见 native是在 java.lang.Object 源码中的一个hashCode方法:public native int hashCode();为什么有个native呢?这是我所要学习的地方。所以下面想要总结下native。回到顶部一、认识 native 即 JNI,Java Native Interface凡是一种语言,都希望是纯。比如解...
转载
发布博客 2019.12.16 ·
194 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java-魔法值

魔法值,是指在代码中直接出现的数值,只有在这个数值记述的那部分代码中才能明确了解其含义。其实说白了就是硬编码。魔法数值使代码的可读性大大下降。而且,如果同样的数值多次出现时,到底这些数值是不是带有同样的含义呢,谁也说不清楚。另一方面,如果本来应该使用相同数值的地方,一旦用错了,也很难发现。因此,我们应极力避免使用魔法数值。解决办法:使用static final 定义常量或使用enum值根据《...
原创
发布博客 2019.12.04 ·
412 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

(7)

Java内存模型JMM1、什么是JMM(面试高频) JVM​ JMM即为JAVA 内存模型(java memory model)。因为在不同的硬件生产商和不同的操作系统下,内存的访问逻辑有一定的差异,结果就是当你的代码在某个系统环境下运行良好,并且线程安全,但是换了个系统就出现各种问题。Java内存模型,就是为了屏蔽系统和硬件的差异,让一套代码在不同平台下能到达相同的访问结果。JMM从jav...
原创
发布博客 2019.12.04 ·
215 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

(6)

异步回调1、概述Future设计的初衷:对将来某个时刻会发生的结果进行建模。当我们需要调用一个函数方法时。如果这个函数执行很慢,那么我们就要进行等待。但有时候,我们可能并不急着要结果。因此,我们可以让被调用者立即返回,让他在后台慢慢处理这个请求。对于调用者来说,则可以先处理一些其他任务,在真正需要数据的场合再去尝试获取需要的数据。它建模了一种异步计算,返回一个执行运算结果的引用,当运算结...
原创
发布博客 2019.12.04 ·
194 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

(5)

ForkJoin1、什么是ForkJoin从JDK1.7开始,Java提供Fork/Join框架用于并行执行任务,它的思想就是讲一个大任务分割成若干小任务,最终汇总每个小任务的结果得到这个大任务的结果。这种思想和HDFS–MapReduce很像(input --> split --> map --> reduce --> output)主要有两步:第一、任务切分...
原创
发布博客 2019.12.04 ·
134 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多