
Java基础
文章平均质量分 69
码农阿福
哪来那么多废话,让我看看你的代码
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【分享】Java Helper 与 Utility 类的区别
Utility类是一种实用工具类,它包含一组静态方法,目的是提供常用的实用方法,例如字符串处理、日期处理、文件操作等。通常,它不应该被实例化,因为不需要其状态,而是通过调用静态方法来使用其中的功能。Utility类通常作为工具库或框架的一部分提供给开发人员使用。Java Helper 和 Utility 类都是为了帮助程序员编写更加高效、可维护的代码而设计的,但它们之间有一些区别。原创 2023-11-29 19:18:57 · 1742 阅读 · 0 评论 -
【分享】Java Builder 建造者模式之案例分享
建造者模式(Builder)核心目的是通过使用多个简单对象一步步构建出一个复杂对象。通过将复杂对象的构造过程拆分为多个简单的步骤,使得创建对象更加灵活,可读性和可维护性更强。原创 2023-11-23 16:07:48 · 627 阅读 · 0 评论 -
Java面试Spring的失败集(二)
@Autowired和@Resourse的区别据我所知,@Autowired跟@Resourse都是bean注入的时候使用的,可以自动装填好bean对象,方便我们使用。到底@Autowired和@Resourse有什么区别呢?今天被面试官问到我感觉蒙了,一时回答不上来,菜是原罪,回来后我赶紧百度补回来知识。直接上图:区别一:@Resourse的依赖包并不是Spring的包,他的包是...原创 2019-10-29 20:47:00 · 144 阅读 · 0 评论 -
Java面试Spring的失败集(一)
问题一:Spring框架中自动填充注解@Autowired是什么时候装填好对象?我的思考:刚学Spring框架@Autowired的时候只知道他可以不用Setter注入属性就可以完成属性的自动装填,答案无非就两种:1.用到该属性的时候装填(X)2.容器启动的时候就已经装填完毕(✔)答案:其实当spring容器启动的时候,AutowiredAnnotationBeanPostProcess...原创 2019-10-28 19:48:44 · 158 阅读 · 0 评论 -
【源码学习】JAVA使用JDBC获取元数据的过程
JAVA在平时连接关系型数据库的时候,一般都是使用JDBC的方式连接的,但是怎么获取到库表结构你真的懂了吗?JDBC全称叫Java DataBase Connectivity),可以理解为是一种执行SQL语句的JAVA API。主要用来对常用的数据库系统连接交互。API主要由以下组成user表结构如下:USER_ADDR地址表结构如下示例代码:运行结果:获取元数据成功在上文示例中,JDBC连接MYSQL通过information_schema数据库下的schema、table、column表存原创 2022-07-08 19:45:59 · 1483 阅读 · 0 评论 -
【教程】ServiceComb安装和配置
Apache ServiceComb 提供了融合开源生态的一站式微服务开源解决方案,致力于帮助企业、用户和开发者将应用轻松微服务化上云,实现对微服务应用的高效运维管理。原创 2022-10-25 14:48:25 · 1979 阅读 · 1 评论 -
【问题】使用gradle依赖管理jar包的缓存问题
在项目中我们使用gradle作为依赖管理,开发的过程中在模块A调用模块B,经常发现自己模块快照包,打出来的包在B模块中拉取不到最新的代码,但是加压A模块的jar发现是刚刚改动最新的jar,B模块多拉取几次都是这样,就像有缓存一样,这是怎么回事呢?方法二:命令行强制清除缓存 ()方法三: 删除对应的gradle/caches文件()...原创 2022-06-14 00:46:31 · 2294 阅读 · 0 评论 -
【分享】草稿箱多版本功能设计
每次发布这里使用到COW(copy to write)写时拷贝的思想,发布的时候拷贝副本作为上一个版本的快照,方便切换版本的操作。还有一种是ROW(redirect to write)写时重定向,记录报表操作的变更,每次读取的时候指向新的版本也可以。具体看实际场景,我这边目前是写少读多用COW读取非常快。...原创 2022-08-19 09:29:35 · 1614 阅读 · 0 评论 -
【分享】Mysql、SqlServer、Oracle、PostgreSQL、ClickHouse和PrestoDB获取元数据(表、字段信息)SQL
工作中做数据同步的过程中,经常要获取表信息、表字段等元数据,做SQL解析,故整理一下常用的数据库获取元数据的SQL这里的元数据指的是数据库内描述数据表和表字段信息的“身份证”元数据表结构定义TableMetadata元数据字段结构定义ColumnMetadata。原创 2023-04-07 11:34:06 · 1164 阅读 · 0 评论 -
【分享】微服务合并之多数据源整合(Dynamic Datasource)和Flyway对多数据源进行数据库脚本管理
在工作中,我们使用**Flyway**对数据库进行版本管理,每个微服务都有各自的数据库。最近我们需要对三个微服务合并成一个服务,且保留数据库不合并,有以下改动要求: 1. 在不影响功能正常使用的情况下对代码结构尽量改动小 2. 尽可能短的开发周期 3. “分久必合,合久必分”,方便后面对服务的拆分- 三个工程包合并成一个大包,可以通过具体的子包名区分以前的三个服务 - Flyway脚本分开管理,单独作用在三个文件夹对应以前三个工程 - 引入多数据源(Dynami原创 2023-05-09 19:16:15 · 1823 阅读 · 2 评论 -
【分享】Java线程池的4种拒绝策略
要根据具体的场景需求,采取合适的策略降低资源消耗:通过重复利用已创建的线程降低创建/销毁线程的消耗提高响应速度:当任务来时,不用等线程创建,直接通过线程池已创建的线程直接执行便于管理:线程池可以统一分配,方便调优和监控线程。原创 2023-02-24 12:52:08 · 376 阅读 · 0 评论 -
【分享】Mac for Maven安装及配置
Maven 是一个项目管理工具,可以对 Java 项目进行自动化的构建和依赖管理。Maven 可以看成知识的积累者,最初是为了简化 Jakarta Turbine 项目中的构建过程。有几个项目,每个项目都有自己的 Ant 构建文件,它们都略有不同。JAR 被检入 CVS。我们想要一种标准的方式来构建项目,清楚地定义项目的组成,发布项目信息的简单方法,以及在多个项目之间共享 JAR 的方法。结果是现在可以用于构建和管理任何基于 Java 的项目的工具。原创 2023-02-15 10:57:20 · 6129 阅读 · 2 评论 -
【分享】Java集合求交集、并集、差集
之前遇到一个长得很有趣的面试官问`两个集合怎么求他们的交集、并集、茶集`,回答之后觉得非常有意思,在这里记录一下:原创 2023-01-10 14:18:29 · 3121 阅读 · 0 评论 -
【笔记】Springboot自定义starter项目实践
springboot工程一般都是通过入口类Application启动项目,根据对应目录下的xml、yml、注解等配置文件初始化相关的配置和实例化相关的bean放入IOC容器进行管理(),还会将依赖的starter的相关bean实例化放入容器进行统一管理()。在工作中使用微服务架构,以前DAO持久层使用的是mybatis在很多微服务模块都有独立引入mybatis的依赖,时间久了出现mybatis在不同微服务版本不一致导致的兼容性问题。现在有时间我就将DAO层相关依赖抽离并封装成一个starter给各个微服务依原创 2022-07-05 11:16:47 · 260 阅读 · 0 评论 -
【笔记】try catch优雅处理关闭数据库连接对象
try catch 使用场景:回顾:工作中需要捕获处理异常的场景:例如:项目场景:自定义封装的JDBC连接方式中,创建数据库连接对象Connection用于业务CRUD,每次使用完需要关闭数据库连接对象Connection的close()方法;常用写法注意:关闭流的地方在finally,因为代码最终一定会到finally:为了复现业务代码出现的异常,这里使用除零异常public class MainTest { public static void main(String[] arg原创 2022-04-09 00:50:14 · 2494 阅读 · 0 评论 -
【笔记】JAVA中重写和重载的区别
提问:JAVA中的重写和重载你真的懂了吗?提问:什么是重载?什么是重写(Override)?提问:什么是重载?参考学习:https://blog.youkuaiyun.com/qunqunstyle99/article/details/81007712#Java__32点我跳转重载是指Java类中方法名称要相同,参数要顺序不同或者参数类型不同,不考虑修饰符不同,甚至可以抛出异常的同名方法也是方法 的额重...原创 2019-10-24 20:08:24 · 324 阅读 · 0 评论 -
【笔记】TreeSet的自然排序和定制排序的使用区别
**注意:**TreeSet满足Set的特点1.不能重复存储同一个对象,数据储存是以“红黑树”数据结构存储。也是一个平衡二叉树2.跟Set不同的是以排序方式输出数据先创建一个R.javapublic class R implements Comparable<R>{ private int count; public R(int count) { ...原创 2019-08-12 11:13:04 · 926 阅读 · 0 评论