自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 Mybatis-Plus eq、ne、gt、lt、ge、le分别代表含义

Mybatis-Plus eq、ne、gt、lt、ge、le分别代表含义eq 就是 equal等于ne就是 not equal不等于gt 就是 greater than大于lt 就是 less than小于ge 就是 greater than or equal 大于等于le 就是 less than or equal 小于等于in 就是 in 包含(数组)isNull 就是 等于nullbetween 就是 在2个条件之间(包括边界值)like就是 模糊查询...

2022-03-31 08:55:19 407

原创 java 查找数组中重复元素,并计算每个元素出现多少次

查找数组中重复元素,并计算每个元素出现多少次public static void main(String[] args) { int[] my_array = {a, b, c, c, d, d, e, b, g, b,j,j}; cfsz2(my_array); } //查找数组里重复的元素,每个元素出现几次 public static void cfsz2(int[] a){ //循环数组,添加到map

2022-02-08 14:36:22 1140

原创 java Excel poi 导出 实现行转列

1.先说一下最近项目上的需求:导出某次考试 所有学生在某套试卷中每道题的答题情况,大家都知道 每套试卷的题目数是不固定的,也就是要导出来的Excel列 也是不固定的2./** * @return * @Author muzi * @Description * @params * @Date 2021/10/29 14:24 **/public static InputStream writeExcel(HttpServletResponse response, String sheetNa

2021-11-04 16:34:08 1711 1

原创 常见的java面试题

1.== 和 equals 的区别是什么?== 解读对于基本类型和引用类型 == 的作用效果是不同的,如下所示:基本类型:比较的是值是否相同;引用类型:比较的是引用是否相同;代码示例:String x = "string";String y = "string";String z = new String("string");System.out.println(x==y); // trueSystem.out.println(x==z); // falseSystem.out.p

2021-03-30 17:41:18 145

原创 redis常见应用场景

redis常见应用场景redis应用场景总结redis平时我们用到的地方蛮多的,下面就了解的应用场景做个总结:1、热点数据的缓存由于redis访问速度块、支持的数据类型比较丰富,所以redis很适合用来存储热点数据,另外结合expire,我们可以设置过期时间然后再进行缓存更新操作,这个功能最为常见,我们几乎所有的项目都有所运用。2、限时业务的运用redis中可以使用expire命令设置一个键的生存时间,到时间后redis会删除它。利用这一特性可以运用在限时的优惠活动信息、手机验证码等业务场景。3

2021-03-15 15:16:44 1391

原创 mysql的limit用法、逻辑分页和物理分页

物理分页为什么用limit在讲解limit之间,我们先说说分页的事情。分页有逻辑分页和物理分页,就像删除有逻辑删除和物理删除。逻辑删除就是改变数据库的状态,物理删除就是直接删除数据库的记录,而逻辑删除只是改变该数据库的状态。例如这里写图片描述同理,逻辑分页和物理分页是有区别的物理分页 逻辑分页 Cool物理分页依赖的是某一物理实体,这个物理实体就是数据库,比如MySQL数据库提供了limit关键字,程序员只需要编写带有limit关键字的SQL语句,数据库返回的就是分页结果。 逻辑分页依赖的是程序

2020-09-03 10:20:47 511

原创 TCP的三次握手与四次挥手理解及面试题

序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。确认号ack:占4个字节,期待收到对方下一个报文段的第一个数据字节的序号;序列号表示报文段携带数据的第一个字节的编号;而确认号指的是期望接收到下一个字节的编号;因此当前报文段最后一个字节的编号+1即为确认号。确认ACK:占1位,仅当ACK=1时,确认号字段才有效。ACK=0时.

2020-05-28 15:56:34 125

原创 03.初探微服务架构

上一期我给你讲了什么时候应该进行服务化,以及服务化拆分的两种方式即横向拆分和纵向拆分,最后还提到了引入微服务架构需要解决的问题。我想你一定很好奇微服务架构到底是什么样子的,接下来我们一起走进微服务架构,来看看它的各个组成部分。下面这张图是我根据自己的经验,绘制的微服务架构的模块图,在具体介绍之前先来看下一次正常的服务调用的流程。首先服务提供者(就是提供服务的一方)按照一定格式的服务描述,向注册中心注册服务,声明自己能够提供哪些服务以及服务的地址是什么,完成服务发布。接下来服务消费者(就是调用服务的一方

2020-05-14 15:05:01 144

原创 02.从单体应用走向服务化

专栏上一期,我给你讲述了什么是微服务,以及微服务架构的由来。简单回顾一下,微服务就是将庞杂臃肿的单体应用拆分成细粒度的服务,独立部署,并交给各个中小团队来负责开发、测试、上线和运维整个生命周期。那么到底什么时候应该拆分单体应用?拆分单体应用有哪些标准可依呢?为了解答这两个问题,今天我将通过具体案例来阐述,希望你能够学会单体应用拆分成微服务的正确姿势。什么时候进行服务化拆分?从我所经历过的多个项目来看,项目第一阶段的主要目标是快速开发和验证想法,证明产品思路是否可行。这个阶段功能设计一般不会太复杂,开

2020-05-14 14:23:07 103

原创 01.什么是微服务?

从谷歌的搜索指数来看,微服务的热度在进入 2017 年后突然爆发,国内各大会议和论坛的相关讨论也如雨后春笋般层出不穷,各大一线互联网公司也纷纷将这一技术引入并在实际业务中落地。然而据我所知,国内不少中小规模的技术团队对微服务的概念都不甚了解,对该不该引入微服务也不置可否。还有一些技术团队,没有考虑实际业务场景,只是为了追求技术热点,盲目引入微服务,但又缺乏相应的技术掌控能力,最后影响了业务的稳定性。对于该不该引入微服务,以及微服务体系需要哪些技术,目前并没有适合中小团队的架构实践落地的指引。因此我结合自

2020-05-14 14:05:27 115

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除