マガジンのカバー画像

ENGINEER TECH BLOG

78
ウイングアーク1stのエンジニアによるテックブログです。 アーキテクトを担うITエンジニアメンバー(社員)が、かわるがわる「ものづくり」のナレッジやそのソース、TechのHow… もっと読む
運営しているクリエイター

#java

2024年、ウイングアークエンジニアによるテックブログは続きます。

2024年、ウイングアークエンジニアによるテックブログは続きます。

皆様こんにちは!! ウイングアーク1stで、CTOに就任している島澤 です。2022年の夏からスタートしたテックブログも約2年、60以上のテック関連記事をnoteで公開できました。

昨年の出来事といえば、そんなテックブログを発信しているクリエイターのアーキテクトメンバーが集うイノベーションラボを、東京の秋葉原に2023年12月に開設しました。

ラボにはこのテックブログで執筆しているメンバーも常

もっとみる
Javaのログ出力ライブラリの選び方

Javaのログ出力ライブラリの選び方


あいさつに代えて先日、デブサミ2024に行ってきました。4年ぶりのオフライン開催で、行く前は「どんな感じになるのかな」だったのですが、会場に着いたら「昔と変わらないな」になりました。
今回の画像は、会場のベルサール羽田空港がある「羽田エアポートガーデン」の1階から外に出た所で撮影した空です。

Javaのログ出力ライブラリ、どれを選べば良い?運用を意識したログを出力する様に設計して、いざJava

もっとみる
ビット演算の話

ビット演算の話

10年近く前、圧縮したまま高速な検索ができるデータ構造(簡潔データ構造)が一部で流行しました。

私も業務で作ってみたのですが、処理を高速化するにあたって普段はあまり使わないようなビット演算の知識を仕入れたことを覚えています。

ビット演算の世界は奥が深く、コアな書籍が出ているお陰で手軽に(?)深淵をのぞくことが出来て面白いです。

コンパイラが優秀な現代において実用的かはさておき、少なくともパズ

もっとみる
Spring Boot+OpenAPI+Gradleで始めるJavaのスキーマ駆動Web API開発

Spring Boot+OpenAPI+Gradleで始めるJavaのスキーマ駆動Web API開発

今回はOpenAPIを使った開発手法として、Spring Boot(Java)でスキーマ駆動Web API開発を行う流れをご紹介します。

今回の構成フレームワークとしてSpringBoot

Java 17

ビルドツールはGradle

Spring BootSpring Bootとは

Spring Bootは、Javaプログラミング言語を使用してWebアプリケーションやマイクロサービスを開

もっとみる
Apache Commons VFS のすすめ (4)

Apache Commons VFS のすすめ (4)

はじめに今回は、独自のファイルシステムにアクセスする Commons VFS のプロバイダーを作成する手順を紹介します。

Commons VFS を使用する時、デフォルトではサポートしていないシステムにアクセスしたいときには、基本的に他の方が作成したプロバイダーを探して導入するのであまり役立たないかもしれません。

しかし、Commons VFS を使用する際、内部がどのようになっているのかを知

もっとみる
Spring WebFluxでブロッキング処理を呼ぶ場合に気を付ける事

Spring WebFluxでブロッキング処理を呼ぶ場合に気を付ける事


あいさつに代えて今回の画像は、7月22日に羽田空港近くの「HANEDA INNOVATION CITY」へ行った際に撮影した空です。飛行機が写るまで頑張ろう、と思ったのですが猛暑で断念しました。

Spring WebFluxとはSpring WebFluxとは、Spring Frameworkの一部で非同期・非ブロッキングのWebスタックフレームワークです。
サーブレットベースのSpring

もっとみる
Javassistとメモリリーク

Javassistとメモリリーク

何かと便利なJavassistですが、使い方によってはメモリリークが発生することをご存じでしょうか。今回はJavassistのメモリリーク回避方法を紹介したいと思います。

下準備まずはメモリリークの検証コードを実行する下準備をします。
今回はIntelliJで環境を構築しました。

プロジェクトの作成

IntelliJでプロジェクトを新規作成します。

言語:Java

ビルドシステム:Gra

もっとみる
picocliでJavaの引数処理を手軽に行う話

picocliでJavaの引数処理を手軽に行う話

あいさつに代えて今回の画像は、先日自宅近くで撮影した朝の空です。まさに雲一つない空ですね。まるで壁紙の様です。

picocliとはpicocliとは、Javaの引数処理を少ない手間で行うことができるライブラリです。実は前回の記事でも利用していました。
主な機能・特徴としては、次の通りです。

1ファイルで他のライブラリに依存しない

いろんな構文スタイルに対応

サブコマンドに対応

その他、豊

もっとみる
Apache Commons VFS のすすめ (3)

Apache Commons VFS のすすめ (3)

はじめにCommons VFS には「Virtual File System」という機能が存在します。

Commons VFS の VFS も Virtual File System の略称ですが、「Virtual File System」は Commons VFS にある機能としての「Virtual File System」です。

今回はこの「Virtual File System」と言う機

もっとみる
Apache Commons VFS のすすめ (2)

Apache Commons VFS のすすめ (2)

最初に前回は、Commons VFS の基本的な使用方法を説明しました。
今回は、そこから更に一歩進んで、Commons VFS を使用する際に知っておいた方が良いことを説明します。

一歩踏み込むために先に Commons VFS の詳細について説明します。
この詳細を押さえておくと、後の説明がわかりやすくなると思います。

構造

Commons VFS は主に 4 つのクラスが存在します。

もっとみる
JBangならJavaをScriptにできる(かもしれない)話

JBangならJavaをScriptにできる(かもしれない)話

あいさつ初めまして、WingArc1stに所属しています「はやみ」です。普段は新潟で働いています。よろしくお願いします。

JBangとはJBangとは、Javaのソースコードをスクリプトの様に明示的にコンパイルせずに、手軽に実行できるものです。

Javaとの比較「それJavaでも出来るのでは?」と思った方は、最近のバージョンを使ってますね。Java11からは、javaコマンドで.javaファイ

もっとみる
Apache Commons VFS のすすめ (1)

Apache Commons VFS のすすめ (1)

はじめに皆さんは、プログラム内からリモートサーバのファイルシステムにアクセスするとき、どのようにアクセスしているでしょうか?

UrlConnection を使ってリクエストとレスポンスを解析する?
対象のファイルシステムが、FTP だったら、Apache Commons Net の FtpClient を使ってアクセスすると少し楽になるかもしれませんね。

しかし、File クラスと同じような

もっとみる