链滴
社区愿景和功能特性
优雅的 Markdown 所见即所得编辑
快捷键交互
随时自由编辑分享内容
支持注销账号来去自由
分布式社区网络
开放 API
产品
Symphony 社区系统(Java)
Solo 博客系统(Java)
Vditor 编辑器(TypeScript)
思源笔记(Electron、Go)
Pipe 博客平台(Vue、Go)
发展计划表
发展简史
榜单
GitHub 仓库排行
帖子打赏排行
Solo 博客端排行
积分排行
活跃度排行
贡献排行
本站基于开源项目 Sym
编程代码问答
登录
注册
好玩
前端
后端
工作
B3
推介
查看所有领域
Java
Spring
NetBeans
Eclipse
IDEA
Dubbo
Tomcat
Maven
Gradle
Latke
docker-compose 部署 mysql 数据库完整步骤
一、部署 docker 1. 上传安装包 将文件上传到系统/data/docker 上 如果没有则手动创建 cd /data/docker 2. 进入目录 cd /data/docker 3. 解压 docker 安装包 tar -zxvf docker-xxx.tgz 4. 将解压出来的 docker 文件复制到 / ..
62
1 个月前
Spring 事务 @Transaction 讲解
概述 spring 提了事务支持,使得事务操作变的更加方便供。 Spring 事务实现有哪些方式? 声明式事务:声明式事务也有两种实现方式,基于 xml 配置文件的方式和注解方式(在类上添加 @Transaction 注解)。 编码方式:提供编码的形式管理和维护事务。 说一下 spring 的事务隔离? spring ..
84
2 个月前
Java 项目发布到 Maven 中央仓库小记
[图片] 我 20 年就已经注册并成功发布过一次项目因此略过注册环节 1.填写项目相关信息 [图片] 2.等待 bot 提示你验证域名所有权。如果没有域名可以使用 io.github.xxx 作为 groupId 切记不要填成 com.github [图片] 3.去你所在的域名服务商加一个 TXT 记录 OSSRH-9 ..
41
5 个月前
软件架构设计原则
1.1 开闭原则 开闭原则(Open-Closed Principle,COP)是指一个软件实体(如类、模块和函数)应该对扩展开放,对修改关闭。所谓的关闭,也正是对扩张和修改两个行为的一个原则。它强调的是用抽象构建框架,用实现扩展细节,可以提高软件系统的客服用心及可维护性。开闭原则是对面向对象设计最基础的设计原则,它知 ..
61
5 个月前
别以为“自动挡”就不可能出现 OOM
这里的“自动挡”,是我对 Java 自动垃圾收集器的戏称。的确,经过这么多年的发展, Java 的垃圾收集器已经非常成熟了。有了自动垃圾收集器,绝大多数情况下我们写程序时可以专注于业务逻辑,无需过多考虑对象的分配和释放,一般也不会出现 OOM。 但,内存空间始终是有限的,Java 的几大内存区域始终都有 OOM 的 ..
58
6 个月前
用好 Java 8 的日期时间类,少踩一些“老三样”的
在 Java 8 之前,我们处理日期时间需求时,使用 Date、Calender 和 SimpleDateFormat,来声明时间戳、使用日历处理日期和格式化解析日期时间。但是,这些类的 API 的缺点比较明显,比如可读性差、易用性差、使用起来冗余繁琐,还有线程安全问题。 因此,Java 8 推出了新的日期时间类。 ..
68
6 个月前
隐写分析使用方法
java -jar StegExpose.jar paper1_note/baluja/cover standard default paper1_note/baluja/baluja.csv /home/duanxt/lc/StegExpose-master/paper1_note/baluja/cover /hom ..
18
6 个月前
Java 入门
.java-> 编译->.class(字节码文件)-> 解释-> 机器码 字节码解释成机器码是实时进行的,从而导致每次执行时都需要解释,这也是 java 性能不如 c/c++ 的原因之一。这样做是为了实现跨平台 即时编译(JIT, just-in-time):将解释出来的机器码保存到内存中,再次 ..
72
7 个月前
Tomcat 安全配置、管理规范整理
参考: Tomcat 安全管理规范:[链接] tomcat 安全规范(tomcat 安全加固和规范):[链接] [链接] 以及个人从业经验 以下是整理后的 Tomcat 安全管理配置规范,具体实施方法可以百度: 第 1 章:账号管理与认证授权 1.1 账号管理 共享账号管理:避免不同用户间共享账号,确保每个用户有独 ..
16
7 个月前
Tomcat 的组成结构和主配置文件 Server.xml 详解
参考:《TOMCAT 与 JAVA WEB 开发技术详解 第 3 版》 https://www.jianshu.com/p/2789af11299f Tomcat 本身由一系列可配置的组件构成,其中核心组件是 Servlet 容器组件,它是所有 其他 Tomcat 组件的顶层容器,用 <CATALINA_HOME> ..
5
7 个月前
Tomcat 的目录结构
Tomcat9.x 的目录结构参见 表 3-3, 表中的目录都是 <CATALINA_HOME> 的子目录。 [图片] 在 Linux 系统中如下 [root@sweb01 ~]# cd /opt/tomcat/ [root@sweb01 /opt/tomcat]# tree -L 1 ├── bin #用以启 ..
8
7 个月前
Tomcat 一键部署脚本
环境:centos7、已安装 wget、已换阿里源 简易脚本,抛砖引玉 Tomcat 一键部署脚本 #!/bin/bash # 安装Java yum install java-1.8.0 -y # 检查Java是否安装成功 java -version if [ $? -ne 0 ]; then echo 'Ja ..
12
7 个月前
Tomcat 学习路线 roadmap 和个人入门知识摘录
roadmap 参考《TOMCAT 与 JAVA WEB 开发技术详解 第 3 版》,内容非常非常详细,初期入门并不需要学习到那么详细,后面精进学习可按图索骥,或者有需要再看看就行 第 1 章 Web 运作原理探析 读者不妨带着以下问题去阅读本章开头的内容: ● 在整个 Web 体系中,浏览器和 Web 服务器各自的功 ..
29
7 个月前
Spring Boot 2.4 版本升级指南:夯实你的多环境配置
在软件开发的世界里,Spring Boot 像是一股清流,它以约定大于配置的理念,简化了 Spring 应用的初始搭建以及开发过程。但随着版本的不断迭代,Spring Boot 在 2.4 版本中带来了一些重要的变化,尤其是在多环境配置方面。本文将带你深入理解这些变化,助你在技术的浪潮中乘风破浪。 ** 旧版本的多环境 ..
27
7 个月前
开启 Spring Boot 配置的大门
在软件的世界里,配置就像是一把打开无限可能的钥匙。想象一下,一个优雅的框架,能够让你只需几行配置,便可开启一段旅程。这就是 Spring Boot 2.x,一个能让你如此轻松地驾驭复杂后端系统的框架。今天,让我们一起走进 Spring Boot 的配置文件,探索这背后的奥秘。 ** 配置文件的基础** 在 Spring ..
35
7 个月前
为什么选择 GraalVM?
GraalVM 是一款强大的虚拟机,它为 Java 开发者提供了许多独特的优势和功能。无论是在资源利用率、启动速度、安全性还是与其他语言的集成方面,GraalVM 都是一个非常有吸引力的选择。 以下是选择 GraalVM 的几个主要原因: 低资源使用 GraalVM 通过提前编译 Java 应用程序为独立的二进制文件, ..
29
7 个月前
Java 笔记系列——08- 分布式协调(Zookeeper)
[图片] 1、Zookeeper zookeeper 是一个分布式的协调中间件,能解决分布式下的组件协调问题,所以才有许多应用使用 zookeeper kafka 集成 Zookeeper,实现集群选举(leader 选举)、配置管理 hbase 集成 zookeeper,实现集群管理 sharding jdbc 集成 ..
70
7 个月前
集合类:坑满地的 List 列表操作
Pascal 之父尼克劳斯 · 维尔特(Niklaus Wirth),曾提出一个著名公式“程序= 数据结构 + 算法”。由此可见,数据结构的重要性。常见的数据结构包括 List、Set、Map、Queue、Tree、Graph、Stack 等,其中 List、Set、Map、Queue 可以从广义上统称为集合类数据结构 ..
66
7 个月前
连接池:别让连接池帮了倒忙
[图片] 业务项目中经常会用到的连接池,主要是数据库连接池、Redis 连接池和 HTTP 连接池。所以,今天我就以这三种连接池为例,和你聊聊使用和配置连接池容易出错的地方。 注意鉴别客户端 SDK 是否基于连接池 在使用三方客户端进行网络通信时,我们首先要确定客户端 SDK 是否是基于连接池技术实现的。我们知道,TC ..
41
8 个月前
线程池:业务代码最常用也最容易犯错的组件
[链接] 线程池的策略是当核心线程处理不下的任务会优先放入队列中,等到队列存满了在开启临时线程去处理任务,这么做有部分场景是不合适的:比如队列很大,等到队列满的时候再去创建线程去消费其实已经于事无补了,再比如线程池是 newFixedThreadPool 他的阻塞队列其实是一个 LinkedBlockingQueue ..
21
8 个月前
Java 的 System 类中 out 对象是何时被赋值的
我们学习编程语言的时候,基本上写的第一个程序都是输出一个 hello world, 基本代码如下, 初学时,只知道使用 System.out.println 就可以将想要的内容输出到控制台上, 然而却并未关注过具体的细节,今天就先来简单了解一下 out 这个对象的赋值过程. public class Hello { p ..
26
8 个月前
Springboot+Netty+WebSocket 配置
Spring 版本 2.7.0 Netty 依赖: io.netty netty-all 4.1.90.Final org.springframework.boot spring-boot-starter-web 先看启动类实现 CommandLineRuner: @SpringBootApplication @E ..
67
10 个月前
Netty 系列 (1): 实现 Http 服务器
Netty(1) 实现 Http 服务器 App.java package org.example; import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.ChannelFuture; import io.netty.channel.Cha ..
39
10 个月前
Canal 数据不同步原因排查
Canal 数据不同步原因排查 adapter 报字段不存在 检查源端、目标端对应字段是否存在 最近是否做了表结构改动,没同步到目标端 解决方案: 删除 server 端 conf 下对应实例的 h2.mv.db,重启服务 目标端字段不一致,调整成一致的,比如 alter 表或者做一次数据同步 重启 adapter 服 ..
45
10 个月前
记录 canal 处理 tinyint1 类型问题
[图片] 问题现象 原系统字段类型 tiny(1) 数据 0,同步后 0 数据 1,同步后 1 数据 2,同步后 2 原因 如果 tinyInt1isBit=true(默认),且 tinyInt 存储长度为 1,则转为 java.lang.Boolean,否则转为 java.lang.Integer。 解决方案 1、避 ..
35
10 个月前
SpringBoot 中使用 undertow 的 accesslog 配置 %D 获取耗时不生效问题【最优解】
[图片] 场景:SpringBoot 项目中使用了 undertow 作为 web 服务,在配置 accesslog 后发现 %D 并不能获取访问耗时 刚开始的配置 server: undertow: url-charset: UTF-8 accesslog: enabled: true dir: /opt/logs ..
34
10 个月前
mybatis-spring-starter 配置
数据源配置 首先需要安装数据库驱动 mysql mysql-connector-java ${mysql.version} 然后再 application.yml 文件中配置数据源. 如果没有安装数据库驱动,那么 Intellij 在 driver-class-name 这一行会有报错提示. # data sour ..
110
10 个月前
Java 调用 WebService 接口
前言 由于要对接其他系统的 WebService 接口,尝试了几种方案有一个可以调通,在这里记录一下尝试的几种方案。至于为什么有的方案调不通,我也不是很清楚。。。 JAX-WS 调用 JAX-WS 是 Java API for XML Web Services 的缩写,是一种比较常见的调用 Webservice 接口的 ..
51
11 个月前
Spring Boot 端点
Actuator Maven 依赖 org.springframework.boot spring-boot-starter-actuator Endpoint Endpoint Description autoconfig 获取自动配置信息 beans 获取 Spring Bean 基本信息 configprop ..
335
7 年前
Spring 使用 @Conditional 在不同系统下输出不同命令
//判断Windows的条件 package test; import org.springframework.context.annotation.Condition; import org.springframework.context.annotation.ConditionContext; import org ..
102
7 年前