- 博客(142)
- 收藏
- 关注
原创 cAdvisor+prometheus+grafana搭建监控页面并嵌入自定义页面中
本例中将容器端口8080暴漏到宿主机9101上,使用浏览器访问。
2024-08-13 17:00:29 485
原创 nacos自动监听配置变化的注解--@NacosConfigListener
是 Nacos 提供的一个强大的功能模块,它能够实现配置的实时监听和动态更新,提高系统的可用性和可维护性。
2024-07-18 17:39:03 259 1
原创 mysql索引有哪些,如何分类
B+tree索引、Hash索引、Full-text索引。聚簇索引、二级索引(辅助索引)。主键索引、普通索引、前缀索引。单列索引、联合索引(复合索引、组合索引)。(mysql索引底层其实就是一棵B+树)
2024-02-04 17:08:57 1116
原创 Java中Object类常用的12个方法
Java 中的 Object 方法在面试中是一个非常高频的点,毕竟 Object 是所有类的“老祖宗”。Java 中所有的类都有一个共同的祖先 Object 类,子类都会继承所有 Object 类中的 public 方法。
2024-02-04 14:41:38 1702
原创 dubbo和eureka的区别
dubbo可以作为客户端,也可以作为服务端,因此他内置了很多序列化框架可供选择,通过配置可以进行选择。默认是hession,还有gson,fastJson,jdk自带的序列化。因此客户端的序列化方式就是客户端和服务端的序列化方式。如果Eureka客户端使用的是Spring Cloud和Netflix的Ribbon作为通信框架,那么它可能会使用Netflix的Hessian来进行序列化。如果使用的是Spring Cloud和Netflix的Feign作为通信框架,那么它可能会使用Java的内置序列化机制。
2024-01-23 10:31:49 872 1
原创 Restful风格
HTTP 请求方法(如 GET、POST、PUT、DELETE)在 Web 开发中与数据库操作(如增、删、改、查)有对应关系。GET、PUT、DELETE 是幂等请求,而 POST 不是幂等请求。
2024-01-15 10:59:05 446
原创 SpringBoot内置工具内
当然,这个例子中没有演示MdcUtil类的add方法具体调的地方,我们可以在filter中执行接口方法之前,生成traceId,调用MdcUtil类的add方法添加到MDC中,然后在同一个请求的其他地方就能通过MdcUtil类的get方法获取到该traceId。很多时候,我们会在代码中定义http的返回码,比如:接口正常返回200,异常返回500,接口找不到返回404,接口不可用返回502等。那么该请求的整个过程中,保存到MDC的ThreadLocal中的参数,也是该线程独享的,所以不会有线程安全问题。
2023-10-17 15:10:15 516
原创 UML在线绘制
GoF Design Patterns - Decorator | Visual Paradigm Online (visual-paradigm.com)
2023-09-21 16:44:02 386
原创 Spring Boot 集成 WebSocket 实现服务端推送消息到客户端
WebSocket 协议是基于 TCP 的一种新的网络协议,它实现了浏览器与服务器全双工(full-duplex)通信—允许服务器主动发送信息给客户端,这样就可以实现从客户端发送消息到服务器,而服务器又可以转发消息到客户端,这样就能够实现客户端之间的交互。对于 WebSocket 的开发,Spring 也提供了良好的支持,目前很多浏览器已经实现了 WebSocket 协议,但是依旧存在着很多浏览器没有实现该协议,为了兼容那些没有实现该协议的浏览器,往往还需要通过 STOMP 协议来完成这些兼容。
2023-08-22 10:51:09 1312
原创 java修改jar包中的配置文件
执行完上述命令之后即可将修改后的配置文件添加到 jar 包之中,使用 vim 命令可以直接打开 jar 包,查看其中的配置文件是否已经修改完成。首先需要找出你的配置文件在 jar 包中的路径,可以使用下面的命令获取配置文件的路径是什么。解压配置文件出来,执行完下面的命令之后则可以将配置文件解压到当前执行命令的目录下。使用jarjar.jar包,批量修改jar的包路径,连同文件的引用路径一起改掉。修改配置文件内容,然后再将修改后的配置文件重新压缩到 jar 包之后。
2023-08-09 16:32:11 2079
原创 编写docker-compose和docker file支持vim命令
在这个示例中,我们使用了Ubuntu镜像,并在容器中运行了一个无限循环的命令,以保持容器运行。`tty: true`和`stdin_open: true`选项可以为该容器分配一个伪终端,这是为了能够在容器内使用vim编辑器。下面是一个简单的docker-compose.yml文件示例,其中包含一个运行Ubuntu镜像的容器,并且已经安装了vim编辑器。完成后,你就可以在容器内使用vim进行编辑了。
2023-08-03 10:14:37 794
原创 TransactionSynchronizationManager.registerSynchronization使用中事务传播产生的问题
spring
2022-09-20 11:00:56 623
原创 mysql修改记录时update 字段 = col1 + col2
在有些场景下,我们需要对我们的varchar类型的字段做修改,而修改的结果为两个字段的拼接或者一个字段+字符串的拼接。如下所示,我们希望将xx_role表中的name修改为name+id。在mysql下,我们直接通过“+”来操作,会提示错误。操作符“+”是用来对数字进行加操作的,这里需要使用关键字concat,表示拼接。同样的,我们也可以利用字段+字符串来拼接。这里稍微说一下“+”的操作,他是用来对数字类型的字段进行加操作的,如下所示:另外,更新字段中部分数据的方法...
2021-09-17 11:43:49 295
原创 使用IDEA进行git cherry-pick
这里记录一下使用过程我目前的代码分支是2198,目标上线分支是2243。后面2243的代码review后会合并到hotfix分支上。切换分支到目标分支2243上 打开Versin Control面板 一般在最下面 在版本控制面板点开Log标签 在最上面 修改分支为要cherry pick的分支 修改为2198 5. 点选最后一个按钮,可以把已经合并过来的提交置灰。这一步可选 ...
2021-09-07 11:34:50 1818
原创 PIN码解压zip-Java实现
接收并解压实现:/** * 功能描述: 导入主域名配置信息 * * @param: * @date: 2021/4/19 15:37 */ @PreAuth(AuthConstant.HAS_ROLE_SYS_ADMIN) @PostMapping("/import") @ApiOperation(value = "导入主域名配置信息", notes = "导入主域名配置信息") @ApiImplicitParams(.
2021-07-13 19:59:20 261
转载 mybatis.type-aliases-package使用
mapper.xml中的resultType中经常会用到一些自定义POJO,你可以用完全限定名来指定这些POJO的引用,例如<select id="getUsers" resultType="com.majing.learning.mybatis.entity.User">,又或者你可以通过在application.properties中指定POJO扫描包来让mybatis自动扫描到自定义POJO,如下:mybatis.type-aliases-package=com.majing.
2021-07-09 14:30:20 425
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人