エンジニアのはしがき

プログラミングの日々の知見を書き連ねているブログです

Java

Javaプロジェクトを参照してClean ArchitectureのD(Distance)値を出力させてみた

最近Kindleで「Clean Architecture」を読んでいます。 ボブおじさんことRobert C.Martin氏の有名な著書ですね。 この書籍の14章では「SAP = Stable Abstractions Principle(安定度・抽象度等価の原則)」という原則が紹介されるのですが、そこでは依存性…

Spring(Java)で雑にOpenAI APIにニュースを要約させてみた

日頃技術系のニュースを追う際に、よく見るサイトの記事を俯瞰して見たいので毎日スクレイピングした記事をDBに格納して、自作アプリから見れるようにしています。 ↓こんな感じ https://birds-eye.ts-soda.net/news 特に大きな問題はなく運用できていたんで…

Spring FrameworkでRDBMSと通信する手段について調べた

以前Spring Frameworkについて調べていた時、RDBMSとの通信方法をまとめていたのですが記事として公開せず放置していたので公開しておきます。

Mockito+Springで単体テストを書く

業務ではバックエンドにSpringを使っているのですが、単体テストを書く場合のモックフレームワークとしてMockitoを使っています。 割合としてはE2Eテストの方が多く単体テストを書く機会が少ないのですが、今後は単体テストも割合を増やしていきましょうとい…

Maven -> Gradle移行でライブラリのバージョンが意図せず変わった

Gradleあるあるだとは思いますが、先日ちょっとハマったことを書きます。

JavaでJsoupとSeleniumでWebサイトをスクレイピングしてみた

最近IT系のニュースサイトをスクレイピングするプログラムを走らせて、ネットサーフィンする時間を節約するようになりました。 スクレイピングにはJavaのJsoup, Seleniumを使っているのですが、今回はその実装内容について書き残してみます!

SpringでInterfaceを@Autowiredするだけで動作するのはなぜ?

JavaとC#は似て非なるものだと日に日に感じる今日この頃です。

Serverless Framework+AWS Lambda(Java8)でHello worldしようとしたらNoClassDefFoundError

少しずつですがJavaのビルドツール周りも分かりかけてきたなという矢先、エラーで数時間ハマりました…😭

JavaのStream APIでよく使いそうな処理をまとめてみる

Javaの勉強中、コレクションを扱う時にC#のLinq的な書き方ができたらなぁと思っていたのですが、Stream APIでかなり近いことができるようなのでまとめました。

Javaでの非同期処理の方法についてピックアップした

まだまだJavaの勉強中です。 先日、そういえばJavaで非同期処理する方法をまだ知らなかったなぁと思い調べてみました。

Java勉強中/C#と比較しながらハマりそうなところピックアップ

どうも、ご無沙汰してました。 この度、転職先でJavaをメインに書くことになり勉強しています。 ぱっと見の文法はC#と似ているものの、実態は結構違う部分も多かったので個人的に気になる部分をピックアップしました。