在Java程序中,可以通過給System.in和System.out重新賦值來(lái)重定向標(biāo)準(zhǔn)輸入和輸出。 在單元測(cè)試的時(shí)候,為了對(duì)涉及到標(biāo)準(zhǔn)輸入和輸出的程序進(jìn)行測(cè)試,常用的做法是...
在Java程序中,可以通過給System.in和System.out重新賦值來(lái)重定向標(biāo)準(zhǔn)輸入和輸出。 在單元測(cè)試的時(shí)候,為了對(duì)涉及到標(biāo)準(zhǔn)輸入和輸出的程序進(jìn)行測(cè)試,常用的做法是...
大家都知道,Java在創(chuàng)建異常對(duì)象時(shí)會(huì)生成調(diào)用棧信息,這樣當(dāng)異常拋出時(shí),開發(fā)者就能從報(bào)錯(cuò)信息中看到異常拋出的路徑,非常有利于定位問題。 但是,調(diào)用棧信息的生成是一件非常耗時(shí)的...
一、使用Maven打包 當(dāng)pipeline在階段1中引入Maven環(huán)境,并使用命令 mvn clean package -Dmaven.test.skip=true 來(lái)打包時(shí)...
今天看到同事的代碼,發(fā)現(xiàn)返回文件還是用的古老的方式 更優(yōu)雅的方式是使用spring的resource接口 轉(zhuǎn)載必須附上原文鏈接
前言 Java8新增的Stream API是一個(gè)強(qiáng)大的特性,它可以簡(jiǎn)化集合中的常用操作,包括過濾、映射、分組等。下面就來(lái)實(shí)現(xiàn)一個(gè)簡(jiǎn)易版的Stream。 從表面上看,流似乎和列...
Java 1.8之后,新增了一個(gè)叫做SerializedLambda的類,它用來(lái)保存Lambda表達(dá)式序列化之后的數(shù)據(jù),通過SerializedLambda可以獲取Lambd...
假設(shè)有以下接口: 這是一個(gè)泛型接口,在實(shí)現(xiàn)Factory的時(shí)候需要指定泛型參數(shù): 假如我們要獲取一個(gè)Factory實(shí)例的泛型參數(shù),要怎么做呢?可以使用Java反射API提供的...
這篇文章介紹如何用Parser Combinator實(shí)現(xiàn)一個(gè)簡(jiǎn)單的正則表達(dá)式引擎。 Cursor Cursor封裝了字符串的狀態(tài),表示一個(gè)光標(biāo)位置。光標(biāo)位置只能向后移動(dòng),可以...
在Java中,構(gòu)造異常對(duì)象是"十分"耗時(shí)的,其原因是在默認(rèn)情況下,創(chuàng)建異常對(duì)象時(shí)會(huì)調(diào)用父類Throwable的fillInStackTrace()方法生成棧追蹤信息,JDK中...
示例工程 引入Maven依賴: 在項(xiàng)目中新建一個(gè)byx.test包,然后添加以下三個(gè)類: 再添加一個(gè)Main類作為啟動(dòng)類: 運(yùn)行main方法,控制臺(tái)輸出如下: 可以看到,容器...
工程搭建 Maven依賴: 在項(xiàng)目下新建一個(gè)byx.test包,然后在里面添加A、B、Config三個(gè)類: A和B是兩個(gè)普通的類(沒有標(biāo)注Component)注解,Confi...
聊聊分布式事務(wù),再說(shuō)說(shuō)解決方案 分布式事務(wù)是企業(yè)集成中的一個(gè)技術(shù)難點(diǎn),也是每一個(gè)分布式系統(tǒng)架構(gòu)中都會(huì)涉及到的一個(gè)東西,特別是在微服務(wù)架構(gòu)中,幾乎可以說(shuō)是無(wú)法避免,本文就分布式...
首先定義一個(gè)Strategy接口來(lái)表示一個(gè)策略: 其中flag方法返回當(dāng)前策略的唯一標(biāo)識(shí),process則是該策略的具體執(zhí)行邏輯。 下面是Strategy接口的兩個(gè)實(shí)現(xiàn)類: ...
ByxOrm是一個(gè)模仿MyBatis設(shè)計(jì)的輕量級(jí)ORM框架,支持以下特性: 使用動(dòng)態(tài)代理生成Dao接口的實(shí)現(xiàn)類 使用注解配置Dao方法對(duì)應(yīng)的SQL語(yǔ)句 使用注解配置實(shí)體類字段...
ByxContainerAnnotation是一個(gè)模仿Spring IOC容器基于注解的輕量級(jí)IOC容器,支持構(gòu)造函數(shù)注入和字段注入,支持循環(huán)依賴處理和檢測(cè),具有高可擴(kuò)展的插...
開發(fā)byx-spring-boot-starter項(xiàng)目 首先創(chuàng)建一個(gè)Maven項(xiàng)目,名為byx-spring-boot-starter: 引入如下依賴: 在項(xiàng)目中建一個(gè)包by...
最近,在給項(xiàng)目組使用Spring搭建Java項(xiàng)目基礎(chǔ)框架時(shí),發(fā)現(xiàn)使用Spring提供的BeanPostProcessor可以很簡(jiǎn)單方便地解決很多看起來(lái)有點(diǎn)難解決的問題。本文將...