在Java程序中,可以通过给System.in和System.out重新赋值来重定向标准输入和输出。 在单元测试的时候,为了对涉及到标准输入和输出的程序进行测试,常用的做法是...
在Java程序中,可以通过给System.in和System.out重新赋值来重定向标准输入和输出。 在单元测试的时候,为了对涉及到标准输入和输出的程序进行测试,常用的做法是...
大家都知道,Java在创建异常对象时会生成调用栈信息,这样当异常抛出时,开发者就能从报错信息中看到异常抛出的路径,非常有利于定位问题。 但是,调用栈信息的生成是一件非常耗时的...
一、使用Maven打包 当pipeline在阶段1中引入Maven环境,并使用命令 mvn clean package -Dmaven.test.skip=true 来打包时...
今天看到同事的代码,发现返回文件还是用的古老的方式 更优雅的方式是使用spring的resource接口 转载必须附上原文链接
前言 Java8新增的Stream API是一个强大的特性,它可以简化集合中的常用操作,包括过滤、映射、分组等。下面就来实现一个简易版的Stream。 从表面上看,流似乎和列...
Java 1.8之后,新增了一个叫做SerializedLambda的类,它用来保存Lambda表达式序列化之后的数据,通过SerializedLambda可以获取Lambd...
假设有以下接口: 这是一个泛型接口,在实现Factory的时候需要指定泛型参数: 假如我们要获取一个Factory实例的泛型参数,要怎么做呢?可以使用Java反射API提供的...
这篇文章介绍如何用Parser Combinator实现一个简单的正则表达式引擎。 Cursor Cursor封装了字符串的状态,表示一个光标位置。光标位置只能向后移动,可以...
在Java中,构造异常对象是"十分"耗时的,其原因是在默认情况下,创建异常对象时会调用父类Throwable的fillInStackTrace()方法生成栈追踪信息,JDK中...
示例工程 引入Maven依赖: 在项目中新建一个byx.test包,然后添加以下三个类: 再添加一个Main类作为启动类: 运行main方法,控制台输出如下: 可以看到,容器...
工程搭建 Maven依赖: 在项目下新建一个byx.test包,然后在里面添加A、B、Config三个类: A和B是两个普通的类(没有标注Component)注解,Confi...
聊聊分布式事务,再说说解决方案 分布式事务是企业集成中的一个技术难点,也是每一个分布式系统架构中都会涉及到的一个东西,特别是在微服务架构中,几乎可以说是无法避免,本文就分布式...
首先定义一个Strategy接口来表示一个策略: 其中flag方法返回当前策略的唯一标识,process则是该策略的具体执行逻辑。 下面是Strategy接口的两个实现类: ...
ByxOrm是一个模仿MyBatis设计的轻量级ORM框架,支持以下特性: 使用动态代理生成Dao接口的实现类 使用注解配置Dao方法对应的SQL语句 使用注解配置实体类字段...
ByxContainerAnnotation是一个模仿Spring IOC容器基于注解的轻量级IOC容器,支持构造函数注入和字段注入,支持循环依赖处理和检测,具有高可扩展的插...
开发byx-spring-boot-starter项目 首先创建一个Maven项目,名为byx-spring-boot-starter: 引入如下依赖: 在项目中建一个包by...
最近,在给项目组使用Spring搭建Java项目基础框架时,发现使用Spring提供的BeanPostProcessor可以很简单方便地解决很多看起来有点难解决的问题。本文将...
题目链接:https://leetcode-cn.com/problems/print-in-order/[https://leetcode-cn.com/problems/...
这篇文章记录了我在c和c++开发中遇到的一些坑。 以下程序段的输出结果是什么?printf("%d\n", 1 | 0 == 0);printf("%d\n", 0 & 1 ...