並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 3578件

新着順 人気順

Javaの検索結果1 - 40 件 / 3578件

  • Tomcat サーバー上で実行する Java アプリを Amazon CloudWatch Application Signals (プレビュー) で監視 | Amazon Web Services

    Amazon Web Services ブログ Tomcat サーバー上で実行する Java アプリを Amazon CloudWatch Application Signals (プレビュー) で監視 従来、Java Web アプリケーションは Web Application Resource (WAR) ファイルにパッケージ化され、Tomcat サーバーなどの Servlet/JSP コンテナに展開されています。これらのアプリケーションは、データベース、外部 API、キャッシングレイヤなど、様々な相互接続されたコンポーネントを含む分散環境で動作しており、それらの複雑な相互作用によりパフォーマンスと健全性の監視が難しく、平均復旧時間 (MTTR) が長くなる可能性があります。 このブログでは、WAR パッケージからデプロイされ、Tomcat サーバーで実行されている Java Web ア

      Tomcat サーバー上で実行する Java アプリを Amazon CloudWatch Application Signals (プレビュー) で監視 | Amazon Web Services
    • Javaで覚えておくと便利かもしれないクラス・インタフェース7つ - Kengo's blog

      Twitterでこれ↓が流れてきて、あれーあのクラスは無いんだー、まぁ最低限と言われると違うかもなー。と思うのがあったので便乗。 nowokay.hatenablog.com java.util.Objects recordの導入で不要になってきたメソッドも多いが、引数の検証などでまだ出番がある。防御的な書き方を簡単にしてくれるのでおすすめ。 java.util.Scanner 標準入力を受け取ってゴニョゴニョするツールを書くのに便利。競技プログラミング御用達。 java.util.concurrent.Executors スケジュール実行とか、スレッドを立ち上げてなんかするとか、そういうときに役立つ。 java.util.concurrent.CompletableFuture JavaにPromiseって無いんですか、と言われたらCompletableFuture があるよ!と返してま

        Javaで覚えておくと便利かもしれないクラス・インタフェース7つ - Kengo's blog
      • コンポーネント型Java WebフレームーワークZKをSpring Bootと一緒に試すメモ - きしだのHatena

        ZKという、コンポーネント型のWebフレームワークがあって、ちょっと面白そうなので試してみた。 https://www.zkoss.org/ コンポーネント型なのでJSFが近い。 とりあえず始め方がここにいろいろある。 https://www.zkoss.org/wiki/ZK_Installation_Guide プロジェクト作成 まあ、結局Spring Bootと一緒に使うことになるだろうから、Spring Bootで始めるやつを見る。 https://www.zkoss.org/wiki/ZK_Installation_Guide/Quick_Start/Create_and_Run_Your_First_ZK_Application_with_Spring_Boot まずSprig Bootのプロジェクトを作る。 https://start.spring.io/ Dependenc

          コンポーネント型Java WebフレームーワークZKをSpring Bootと一緒に試すメモ - きしだのHatena
        • Java : Builder パターン (図解/デザインパターン) - プログラミングTIPS!

          Builder パターンとは、GoF によって定義されたデザインパターンの1つです。 複雑なオブジェクト生成処理をシンプルにします。 また、同じ手続きで異なる型のオブジェクトを生成できます。 本記事では、Builder パターンを Java のコード付きで解説していきます。 概要 Builder パターン(ビルダー・パターン)とは、GoF(Gang of Four; 4人のギャングたち)によって定義されたデザインパターンの1つである。 オブジェクトの生成過程を抽象化することによって、動的なオブジェクトの生成を可能にする。 Builder パターン - Wikipedia Builder パターンとは、 複雑なオブジェクト生成処理をシンプルにする 同じ手続きで異なる型のオブジェクトを生成する という2つの目的をもった設計です。 Builder は、日本語的に発音すると「ビルダー」となります。

          • Javaで最低限おさえておいてほしいクラス・インタフェース35 - 2024年版 - きしだのHatena

            ま、このくらい知っておいてもらわないと&とりあえずこんだけ知ってればだいたいの処理が書けるクラス・インタフェースをまとめてみました。2024年版。 詳しく知りたい人は「プロになるJava」を! java.lang.Class java.lang.Exception <- new java.lang.Integer java.lang.Object <- new java.lang.Runnable java.lang.String java.lang.System java.lang.Thread java.nio.file.Files <- new java.nio.file.Path <- new java.io.InputStream java.io.InputStreamReader java.io.BufferedReader java.io.OutputStream java.

              Javaで最低限おさえておいてほしいクラス・インタフェース35 - 2024年版 - きしだのHatena
            • Udemyセール・割引活用!Javaのおすすめの講座 | システムエンジニアの知恵袋

              社会人向けオンライン動画学習サービス「Udemy(ユーデミー)」でJavaの講座を探そうとするとき、次の悩みを抱えていませんか? 数ある講座でJavaのおすすめの講座が分からない。 Javaの講座選びに失敗したくないので、他のユーザーの意見や経験が反映された評価が高く人気が高いおすすめの講座を選びたい。 自分で1つ1つJavaのおすすめの講座を精査する時間がない。 当記事では、Udemy(ユーデミー)でセール・割引活用で購入したい評価が高く人気の高いJavaのおすすめの講座をまとめました。数ある講座からJavaのおすすめの講座を最短で精査できます。 ※Udemy(ユーデミー)のセール・割引がいつなのかは次の記事で解説しています。 Udemyセールいつ?最大95%割引!頻度・通知設定解説

                Udemyセール・割引活用!Javaのおすすめの講座 | システムエンジニアの知恵袋
              • オラクル、JavaやSQLに最適化したプログラミング支援AI「Oracle Code Assist」発表。PL/SQLコードのリファクタリングとテストなども可能

                オラクルは、Visual Studio Codeなどのコードエディタ上でコードの生成やテストケースの作成、アップグレードの自動化などを可能にするプログラミング支援AI「Oracle Code Assist」を発表しました。プレスリリース、日本語ブログ)。 Oracle Code Assistはさまざまなプログラミングに対応すると同時に、Java、SQL、Oracle Cloudでの開発に最適化されており、コードのコンテキストに沿ったコードの生成や補完、テストなどを生成可能で、また企業ごとにカスタマイズすることも可能です。 例えば、下記は「Create Java Websocket server」と右下のチャット欄で指定すると、右上のウィンドウでJavaのコードが生成されています。 Visual Studio CodeとJetBrains IntelliJ IDEAのプラグインとして提供され

                  オラクル、JavaやSQLに最適化したプログラミング支援AI「Oracle Code Assist」発表。PL/SQLコードのリファクタリングとテストなども可能
                • Java : Factory Method パターン (図解/デザインパターン) - プログラミングTIPS!

                  Factory Method パターンとは、GoF によって定義されたデザインパターンの1つです。 ベースとなるクラスで共通の処理を実装して、その処理で使うオブジェクトの生成処理はサブクラスに任せる、という設計です。 本記事では、Factory Method パターンを Java のコード付きで解説していきます。 概要 Factory Method パターン(ファクトリメソッド・パターン)[1]とは、GoF (Gang of Four; 四人組)によって定義されたデザインパターンの1つである。 Factory Method パターンは、他のクラスのコンストラクタをサブクラスで上書き可能な自分のメソッドに置き換えることで、 アプリケーションに特化したオブジェクトの生成をサブクラスに追い出し、クラスの再利用性を高めることを目的とする。 Factory Method パターン - Wikiped

                  • 永遠のJava

                    Javaは、COBOLに代わる「システム開発のデファクトスタンダード」として確固たる地位を確立した。一方で、イメージの悪さや設計の古さといった問題も抱える。Javaの現状と最近の改良点、賢い使い方などをまとめる。 第4回 突然の高額ライセンス料請求のワナ、企業がJavaを賢く利用するには Javaプログラムの開発・実行に欠かせないのが、JDK(Java Development Kit)だ。現在、様々なベンダーがJDKを提供している。しかしJDKごとにサポート期間や料金が異なる。適切なJDKを選択しなければ、高額なライセンス料の請求につながりかねない。 2024.05.10 第3回 「AI分野に弱い」との汚名返上なるか、Javaで着々と進む機能強化 システム開発で確固たる地位を築いたJavaだが、AI(人工知能)やデータ分析といったはやりの分野で後れを取っている。ただしJavaも手をこまぬい

                      永遠のJava
                    • 「理想のCOBOL」になったJava、システム開発で盤石の地位築く

                      企業の情報システムには、高い信頼性や可用性が求められる。このためシステムの構築にはそれらを実現できるプログラミング言語を使う必要がある。 そうした用途でかつてよく使われていた言語が「COBOL」だ。Common Business Oriented Languageの略で、日本語では「共通事務処理用言語」という意味になる。エンジニアではない事務員がプログラミングできることを目指して開発された。自然言語である英語に近い構文で記述でき、可読性が高いのが特徴だ。 過去にCOBOLは金融機関のオンラインシステム構築などで大きな役割を果たした。現在でも、一般ユーザーの目に触れないところで動いているCOBOLシステムは多い。 ただしCOBOLは幾つかの問題を抱えていた。最も大きな問題は、稼働基盤が事実上、メインフレームに限られることだ。オープンシステムやクラウドでCOBOLプログラムが動作する環境もある

                        「理想のCOBOL」になったJava、システム開発で盤石の地位築く
                      • プログラミングTIPS!

                        もしくは「目的別の索引」もご利用ください。 Java TIPS Factory Method パターン (図解/デザインパターン) (2024年05月09日) New! Abstract Factory パターン (図解/デザインパターン) (2024年05月03日) Strategy パターン (図解/デザインパターン) (2024年05月01日) Bridge パターン (図解/デザインパターン) (2024年05月01日) Adapter パターン (図解/デザインパターン) (2024年04月19日) Decorator パターン (図解/デザインパターン) (2024年04月12日) Composite パターン (図解/デザインパターン) (2024年04月05日) Mediator パターン (図解/デザインパターン) (2024年03月29日) Observer パターン

                        • Java : Abstract Factory パターン (図解/デザインパターン) - プログラミングTIPS!

                          Abstract Factory パターンとは、GoF によって定義されたデザインパターンの1つです。 関連する複数のオブジェクトの生成処理を、動的にまとめて切り替えるための設計です。 本記事では、Abstract Factory パターンを Java のコード付きで解説していきます。 Abstract Factory パターン(アブストラクト・ファクトリ・パターン)[1]とは、GoF(Gang of Four; 4人のギャングたち)によって定義されたデザインパターンの1つである。 関連するインスタンス群を生成するための API を集約することによって、利用側がインスタンス群をまとめて変えられるようにし、さらに組み合わせ方を間違えないようにする[1]。 Abstract Factory パターン - Wikipedia Abstract Factory パターンとは、 関連する複数のオブジ

                          • 【ソフトウェア設計】例外処理を考える

                            はじめに 最近書いてるソフトウェア設計シリーズです。今回は例外に関して。以前、以下のような記事を書いたのですが、もう少し深堀して書いてみました。 ちなみにソフトウェア設計シリーズは他には以下を書いています。 モジュールになぜ分けるのか? モジュール、依存、そしてカプセル化 モジュールをどう分割するのか? 簡潔さは力なり? 予測可能な振る舞いと簡潔さについて ドキュメントとしてのコメント TL;DR 例外は「原則」キャッチしない 業務例外や必ずハンドリングさせたい例外はOptionalなど戻り値の方が便利 だいたい以下の図が言いたい事のすべて 例外処理とは? 「例外処理(Exception Handling)」は言語に依らず普遍的な関心事です。端的に言えば例外処理は異常やシステムの動作に不備が発生した際の特別な分岐処理です。リカバリやリソースの解放、あるいはユーザへの通知などがありますね。

                              【ソフトウェア設計】例外処理を考える
                            • 研修でブラックジャックを作ったまとめ - Qiita

                              3. 設計 4/15~4/16 今回要件定義の内容はゲームのルールであり、サイトを参考にしているためサイトからのリストアップのみを行った。 基本設計として、使用言語、基本ルール、最低要件、ゲームフローを決定した。また、それをもとにアクティブ図と入出力設計を作成した。 基本ルール ディーラー(DL)とプレイヤー(PL)の対戦型 カードの合計が21点に近ければ勝利 配当は1倍 カードの合計が21点を超えると負け 賭け金を失う 2~9はそのまま、10, J, Q, K A は「1点or11点」 最初に配られた2枚のカードが ”Aと10点札” で21点が完成していた場合「ブラックジャック」 その時点で勝ち 配当は 1.5倍 引き分けあり 所持金は300$ 最低25$から賭けられる 掛け金がなくなった場合ゲームオーバー 配当は賭け金を含めない ゲームフロー 賭け金を決める PLにカードを表2枚で配る

                                研修でブラックジャックを作ったまとめ - Qiita
                              • [Java]List、Queue、Setのクラスメモ - Qiita

                                Javaでコーディングを行う際に必ずと言ってもよいほど使用するコレクションについて、今まで使用したことがないものも含めて改めて学習したので備忘録としてまとめてみます。 Listインターフェース コレクションでよく使用するやつ。学習した3つの実現クラスについてまとめます。 Arraylist 内部に配列を持っていて、あらかじめ要素数を決めておかなければならない配列とはことなり、要素数を必要に応じて増やすことが可能です。 要素数が増える場合、最初に内部で持っていた配列より大きな要素数を扱うことができる配列を新たに作成しそこに元の要素をコピーします。そのため、扱う要素数が増えていくにつれて処理が遅くなります。 具体的に言うと値の読み書きは高速ですが、要素の追加、削除は遅いです。 LinkedList 要素それぞれが前要素の情報と後要素の情報を持っており、繋がっているリスト。各要素にアクセスする際

                                  [Java]List、Queue、Setのクラスメモ - Qiita
                                • HTMLのパーサーをChatGPTに書かせてみた - KDP(電子出版)のメモ 急急如律令

                                  JavaよりJSのほうが慣れているので、JSで書いてからJavaに置き換えることが多く、二回書く必要が生じている。そこでJSからJavaをChatGPTにやってもらおうと思った。実際にやってみた問題点など。 ChatGPTに「下記のコードをJavaに書き換えて」で出力されたが思っていたのと違ったので、「下記のコードをJsoupのライブラリを使ったJavaに書き換えて」と直した。 下記のコードをJsoupのライブラリを使ったJavaに書き換えて for (let i = 0; i < ruby.childNodes.length; i++) { switch (ruby.childNodes[i].nodeName) { case '#text': bw = bw + '|' + ruby.childNodes[i].textContent break; case 'RP': break;

                                    HTMLのパーサーをChatGPTに書かせてみた - KDP(電子出版)のメモ 急急如律令
                                  • 最近のHTMLタグはrbタグが非推奨になったのでrubyタグのDOMパーサーを書き換えてみた - KDP(電子出版)のメモ 急急如律令

                                    HTMLのrubyタグをパースして青空文庫のルビ注記に変換する。ただし、rbタグがあることを前提に作られたHTMLパーサーだとおかしなことになる。AozoraEpub3のrubyタグのパーサー部分を見るとrbタグがあることが前提で書かれている。 /** ルビを青空ルビにして出力 */ private void printRuby(BufferedWriter bw, Element ruby) throws IOException { Elements rb = ruby.getElementsByTag("rb"); Elements rt = ruby.getElementsByTag("rt"); if (rb.size() > 0) { if (rt.size() > 0) { bw.append('|'); printText(bw, rb.get(0).text()); bw.

                                      最近のHTMLタグはrbタグが非推奨になったのでrubyタグのDOMパーサーを書き換えてみた - KDP(電子出版)のメモ 急急如律令
                                    • Common I/O Tasks in Modern Java - Dev.java

                                      Introduction This article focuses on tasks that application programmers are likely to encounter, particularly in web applications, such as: Reading and writing text files Reading text, images, JSON from the web Visiting files in a directory Reading a ZIP file Creating a temporary file or directory The Java API supports many other tasks, which are explained in detail in the Java I/O API tutorial. T

                                        Common I/O Tasks in Modern Java - Dev.java
                                      • Gradle Build Scanを使ってビルドのことを知ろう potatotips #87

                                        EM完全に理解した と思ったけど、 やっぱり何も分からなかった話 / EM Night Fukuoka #1

                                          Gradle Build Scanを使ってビルドのことを知ろう potatotips #87
                                        • Java : Bridge パターン (図解/デザインパターン) - プログラミングTIPS!

                                          Bridge パターン(ブリッジ・パターン)とは、GoF(Gang of Four; 4人のギャングたち)によって定義されたデザインパターンの1つである。 「橋渡し」のクラスを用意することによって、クラスを複数の方向に拡張させることを目的とする。 Bridge パターン - Wikipedia Bridge パターンとは、 複雑になる継承関係を、委譲 を使ってシンプルにする という設計です。 Bridge は、日本語的に発音すると「ブリッジ」となります。 意味は「橋」ですね。 【Bridge パターンのイメージ】 ベースとなる図形クラスがあり、そのサブクラスとして 長方形 円形 があります。 さらに、図形の色として 赤色 緑色 があるとしましょう。 今回、色についても継承で実現しています。 これは少し過剰だとは思いますが、あくまで例ということでご容赦ください… さて、しばらくして「青色」を

                                          • Javaはなぜかっこ悪いと思われているのか、ChatGPTと共に原因を探ってみた

                                            プログラミング分野でよく話題になるのが「どのプログラミング言語が優れているか」というテーマだ。個人的には「どんな言語を使っていようとプログラミングの本質は変わらないので、不毛な議論ではないか」と感じることが多い。それぞれの案件に適した言語を使えばいいだけではないかと思ってしまう。 もっとも、これは日常的にプログラミングをしていない部外者の意見かもしれない。日々のソフトウエア開発業務では、プログラミング言語は最も重要なツールの1つだ。どんなツールを使うかが開発効率に直結することは大いにあり得る。 例えていえば、コード入力に使うキーボードのようなものだろうか。どんなキーボードでも気にしないエンジニアがいる一方で、キーボードのタッチに異様にこだわるエンジニアもいる。後者にとって、特定のキーボードを利用できるかどうかは開発効率を左右する死活問題だ。プログラミング言語にも、それに似た面があるのかもし

                                              Javaはなぜかっこ悪いと思われているのか、ChatGPTと共に原因を探ってみた
                                            • NECが受注したe-Govのガバクラ移行が大幅遅延、構築手法の途中変更が影響か

                                              政府ポータルサイト「e-Gov」のシステム刷新が当初計画から大きく遅れている。開発した機能の品質不良が最終テストで判明したためである。問題はベンダー選定後にデジタル庁がシステム構築手法を変更したことに端を発していた。開発を受注したNECは変更を受け入れたが、開発が遅延し品質に問題を抱える。情報を共有する体制が不十分だったために問題を広げたとの指摘が出ている。 デジタル庁が運用する政府ポータルサイト「e-Gov」のシステム刷新プロジェクトが大幅に遅延している。当初は2024年2月下旬に新システムへの切り替えを予定していたが、デジタル庁は約3週間前の2024年2月2日になってe-Govのサイト上で作業の延期を公表した。 河野太郎デジタル相は2024年4月16日の閣議後会見で記者の質問に対し、e-Govのシステム刷新が遅れている理由を「最後の試験工程で(開発したシステムの)品質が十分でないと判断

                                                NECが受注したe-Govのガバクラ移行が大幅遅延、構築手法の途中変更が影響か
                                              • Javaは他のプログラミング言語と比較してどのくらい危険なのか? Datadog調査

                                                Datadogは2024年4月17日(現地時間)に、「State of DevSecOps 2024」と題された分析レポートを公開した。同レポートは、数千のアプリケーションやコンテナイメージ、クラウド環境のセキュリティ評価をまとめたものだ。 Javaは他のプログラミング言語と比較してどのくらいリスクがあるのか? 同レポートによって、Javaアプリケーションは他のプログラミング言語に比べてサードパーティーの脆弱(ぜいじゃく)性の影響を受けやすいことや自動セキュリティスキャナーによって実行されるサイバー攻撃の大部分は無害であることなどが明らかになった。 Datadogが発表したレポートの概要は以下の通りだ。 Javaアプリケーションは、サードパーティーの脆弱性の影響を最も受けている。Javaサービスの90%がサードパーティーのライブラリーによってもたらされた1つ以上の重大または深刻度の高い脆弱

                                                  Javaは他のプログラミング言語と比較してどのくらい危険なのか? Datadog調査
                                                • Java8を入れないとKindle Previewerが動かないのでJava8を入れた - KDP(電子出版)のメモ 急急如律令

                                                  Java8を入れないとKindle Previewerが動かないのでJava8を入れた Kindle PreviewerがJavaを削除すると動かなくなる、たぶんバックグラウンドで使っているのだろう。なぜ Java8を削除していたかというと、Java8を更新するたびにJava21がコマンドラインから動かなくなるから。どうやら環境変数がJavaを優先して実行されてJava21が動かないようだ。 環境変数の書き換え スタートメニューを右クリックしてシステム、ホームの下の入力欄に「詳細設定」と入力 「システムの詳細設定の表示」「環境変数」ボタンをクリック、システム環境変数の「path」を選び「編集」 「C:\Program Files\Eclipse Adoptium\jre-21.0.2.13-hotspot\bin」を選択して「上へ」をクリックして一番上に移動する。「OK」ボタンを押して閉じ

                                                    Java8を入れないとKindle Previewerが動かないのでJava8を入れた - KDP(電子出版)のメモ 急急如律令
                                                  • タイムスタンプの精度を落とすときは切り捨てろ - methaneのブログ

                                                    とあるプロジェクトでナノ秒からミリ秒への変換で四捨五入してきた人がいて、時刻を扱うときは保存精度未満は切り捨てるべきというのが常識になっていないなーと思ったので。 2023-10-01 を、何年か表示する時に、2024年に丸める人はいないだろう。 13:45 が何時か表示する時も、13時と表示するだろう。(口頭で何時?と聞かれたら14時と答えるかもしれないけれど) つまり、ある精度で表した時刻は、実際には次のような半開区間を示しているのである。 2023-01-01 00:00:00 <= 2023年 < 2024-01-01 00:00:00 13:45:00.000 <= 13:45 < 13:46:00.000 そして、そう決めたからには一貫して同じように、指定精度未満は切り捨てというルールを維持しなければならない。秒以下は四捨五入で、とかやってはいけないのだ。 一貫しないと何が問題

                                                      タイムスタンプの精度を落とすときは切り捨てろ - methaneのブログ
                                                    • Java : Adapter パターン (図解/デザインパターン) - プログラミングTIPS!

                                                      Adapter パターンとは、GoF によって定義されたデザインパターンの1つです。 既存のクラスの修正なしに、インタフェースを変更して再利用できます。 本記事では、Adapter パターンを Java のコード付きで解説していきます。 概要 Adapter パターン(アダプター・パターン)とは、GoF によって定義されたデザインパターンの1つである。Adapter パターンを用いると、既存のクラスに対して修正を加えることなく、インタフェースを変更することができる。 Adapter パターン - Wikipedia Adapter パターンとは、 既存のクラスの 修正なし に、インタフェースを変更して再利用する という設計です。 Adapter は、日本語的に発音すると「アダプター」となります。 意味は「適合させるもの」ですね。 日本語でもそのまま「アダプター」で使われているので馴染みやす

                                                      • 「Oracle JDK 17」の商用フリーはあと半年 ~NFTC→OTNのライセンス切り替えに注意(窓の杜) - Yahoo!ニュース

                                                        2021年9月に一般公開されたLTSリリース「Oracle JDK 17」は現在、寛容な「NFTC」ライセンス下で提供されているが、新しいLTSリリース「Oracle JDK 21」が2023年9月に登場したことにより、1年間の移行猶予期間に入った。米Oracleは4月16日(現地時間)、自社の公式ブログで注意を喚起する記事を公開した。 「NFTC」(Oracle No-Fee Terms and Conditions、Oracle無料利用規約)は、「JDK 17」以降で用いられているライセンス。ライセンスに従うことを条件に、商用および本番環境での使用も含め、すべてのユーザーが無償で製品を利用できることを保証している。 しかし、「JDK 17」にこのライセンスが適用されるのは2024年9月まで。それ以降は「Java 8」「Java 11」のアップデートに適用されているのと同じ「Java S

                                                          「Oracle JDK 17」の商用フリーはあと半年 ~NFTC→OTNのライセンス切り替えに注意(窓の杜) - Yahoo!ニュース
                                                        • 「Oracle JDK 17」の商用フリーはあと半年 ~NFTC→OTNのライセンス切り替えに注意/寛容なライセンス下で利用を継続したい場合は、次のLTS「JDK 21」への移行を

                                                            「Oracle JDK 17」の商用フリーはあと半年 ~NFTC→OTNのライセンス切り替えに注意/寛容なライセンス下で利用を継続したい場合は、次のLTS「JDK 21」への移行を
                                                          • Java Stream API を高みに導くStream Gatherer - A Memorandum

                                                            はじめに Gatherer 組み込み Gatherer Gatherers.windowFixed Gatherers.windowSliding Gatherers.fold Gatherers.scan Gatherers.mapConcurrent Gatherer.ofSequential まとめ JDK 22 でプレビュー公開(https://openjdk.org/jeps/461)、JDK 23 でセカンドプレビュー公開(https://openjdk.org/jeps/473) となる Stream Gatherers を学び、正式公開に備えましょう。 はじめに Stream Gatherers とは、Stream パイプラインの中間操作に対する拡張ポイントを提供するものです。 Stream パイプラインは以下のように構築されます。 long numberOfWords =

                                                              Java Stream API を高みに導くStream Gatherer - A Memorandum
                                                            • Dockerコンテナ化したJavaアプリのヒープのサイズ調整オプションの検証 - Qiita

                                                              はじめに こんにちは。私は弊社で企画・運営している、Dot to Dotという個人の同意の元に様々なデータを連携することができる分散型データ連携プラットフォームの開発・保守を担当しています。 Dot to Dotではデータ連携をしたい事業者向けに、データ連携用の通信モジュールを、Spring Bootを使用したJavaアプリケーションとして作成したDockerイメージ形式で配布しています。 昨今ではDockerでアプリケーションを実行するのが当たり前の風潮になりつつありますが、実際に本番で適用する際に必要なチューニングの話はあまり聞かないかと思います。 そこで本記事では、JavaアプリケーションをDockerコンテナで運用する場合に必要な、ヒープのチューニングについて説明します。これからJavaアプリケーションをDockerコンテナ化して運用したい人や、すでに運用中でもヒープチューニングし

                                                                Dockerコンテナ化したJavaアプリのヒープのサイズ調整オプションの検証 - Qiita
                                                              • Java : Decorator パターン (図解/デザインパターン) - プログラミングTIPS!

                                                                Decorator パターンとは、GoF によって定義されたデザインパターンの1つです。 機能を入れ子構造で持つことにより、複数の機能を動的に追加できます。 本記事では、Decorator パターンを Java のコード付きで解説していきます。 概要 Decorator パターン(デコレータ・パターン)とは、GoF(Gang of Four; 4人のギャングたち)によって定義されたデザインパターンの1つである。 このパターンは、既存のオブジェクトに新しい機能や振る舞いを動的に追加することを可能にする。 Decorator パターン - Wikipedia Decorator パターンとは、 機能を 入れ子 構造で持つことにより 複数の機能 を動的に追加する という設計です。 Decorator は、日本語的に発音すると「デコレータ」となります。 意味は「装飾者」ですね。「デコレーション」ケ

                                                                • Spring BootでTomcatデフォルトのエラーページをカスタマイズする - Qiita

                                                                  環境 JDK 21 Spring Boot 3.2.4 Embedded Tomcat 10.1.19 やりたいこと Spring Bootにもエラーページの機能があります。具体的にはsrc/main/resources/templates直下にerror.html、src/main/resources/templates/error直下に404.html・500.htmlなどを作成すればOKです(公式ドキュメント)。 しかし、サーブレットフィルターのレベルで例外がスローされると、前述のエラーページではなくTomcatデフォルトのエラーページが表示されてしまいます。 これを自作のエラーページに差し替えたいです。 自作エラーページの作成 静的なHTMLを作成して、適当な場所・適当なファイル名で配置します。今回はsrc/main/resources/templates/tomcatフォルダにt

                                                                    Spring BootでTomcatデフォルトのエラーページをカスタマイズする - Qiita
                                                                  • Javaアプレットの一部領域を顧客に開放したSIMカード、NTTコムが本格提供開始

                                                                    NTTコミュニケーションズ(NTTコム)は2024年4月9日、暗号化されたJavaアプレット領域の一部を顧客に開放したSIMカードの本格提供を始めたと発表した。顧客企業が同領域に決済情報・個人情報・設定情報などを安全に格納できるようにし、IoT(インターネット・オブ・シングズ)などのサービスを展開しやすくする。価格は個別見積もりだが、SIMカード1枚当たり月額100円程度から、管理コンソール機能は同1万5000円程度からを見込む。 同社が「アプレット領域分割技術」と呼ぶ技術により、SIMカード内にあるJavaアプレット領域のうち約300キロバイトを切り出し、顧客企業が独自に暗号鍵を管理して利用可能にした。SIMカード上のCPUやメモリー、OSなどと組み合わせて、認証などのアプリケーションを実行できる。同技術による領域の切り出しはSIMカードの製造時に書き込むソフトウエアにより実現しており、

                                                                      Javaアプレットの一部領域を顧客に開放したSIMカード、NTTコムが本格提供開始
                                                                    • ⼤規模⾔語モデルの拡張(RAG)が 終わったかも知れない件について

                                                                      Zero Waste, Radical Magic, and Italian Graft – Quarkus Efficiency Secrets

                                                                        ⼤規模⾔語モデルの拡張(RAG)が 終わったかも知れない件について
                                                                      • [備忘録] p12ファイルの証明書の中身の確認コマンド

                                                                        keytool -list -v -keystore keystore.p12 -storetype PKCS12 -storepass ****** キーストアのタイプ: PKCS12 キーストア・プロバイダ: SUN キーストアには1エントリが含まれます 別名: *************** 作成日: 2022/01/28 エントリ・タイプ: PrivateKeyEntry 証明書チェーンの長さ: 1 証明書[1]: 所有者: ************************** 発行者: C=US, O=Apple Inc., OU=G3, CN=Apple Worldwide Developer Relations Certification Authority シリアル番号: ************************** 有効期間の開始日: Mon Jul 26 18:

                                                                          [備忘録] p12ファイルの証明書の中身の確認コマンド
                                                                        • エンタープライズITの主流プログラミング言語「Java」と「.NET」――それぞれの現状と進化の方向性とは? | 東京エレクトロンデバイス

                                                                          エンタープライズITの主流プログラミング言語「Java」と「.NET」――それぞれの現状と進化の方向性とは? | 東京エレクトロンデバイス エンタープライズITの主流プログラミング言語「Java」と「.NET」――それぞれの現状と進化の方向性とは? エンタープライズITの分野で主流のプログラミング言語と言えば「Java」と「.NET」が挙げられる。Javaは6カ月ごとに、.NETも1年ごとにメジャーバージョンアップを繰り返し、以前よりも速いペースで進化している。今回はそれぞれの現状と進化の方向性について解説する。 さまざまなプログラミング言語が分野ごとの強みを活かして群雄割拠する現在。例えばWebにおけるJavaScriptの利用はNode.jsの登場によってサーバーサイドにまで広がり、AI分野ではPythonが非常に多く利用されています。Webアプリケーションの開発によく使われるPHPは

                                                                            エンタープライズITの主流プログラミング言語「Java」と「.NET」――それぞれの現状と進化の方向性とは? | 東京エレクトロンデバイス
                                                                          • Java : Composite パターン (図解/デザインパターン) - プログラミングTIPS!

                                                                            Composite パターンとは、GoF によって定義されたデザインパターンの1つです。 木構造を持つ再帰的なデータ構造を実現するための設計です。 本記事では、Composite パターンを Java のコード付きで解説していきます。 概要 Composite パターン(コンポジット・パターン)とは、GoF (Gang of Four; 4人のギャングたち) によって定義された デザインパターンの1つである。「構造に関するパターン」に属する。Composite パターンを用いるとディレクトリとファイルなどのような、木構造を伴う再帰的なデータ構造を表すことができる。 Composite パターン - Wikipedia Composite パターンとは、 木構造を持つ再帰的なデータ構造 を実現するための設計です。 Composite は、日本語的に発音すると「コンポジット」となります。 意味

                                                                            • Kubernetesでアプリの安定稼働と高頻度のアップデートを両立するためのプラクティス / Best Practices for Applications on Kubernetes�to Achieve Both Frequent Updates and Stability

                                                                              Kubernetesでアプリの安定稼働と高頻度のアップデートを両立するためのプラクティス / Best Practices for Applications on Kubernetes�to Achieve Both Frequent Updates and Stability

                                                                                Kubernetesでアプリの安定稼働と高頻度のアップデートを両立するためのプラクティス / Best Practices for Applications on Kubernetes�to Achieve Both Frequent Updates and Stability
                                                                              • プログラミング言語をすぐに試せる「プレイグラウンド」まとめ。2024年版

                                                                                新しいプログラミング言語やライブラリ、フレームワークを学ぶには、実際にそれらを試して挙動などを見てみることが大事ですが、実行環境を用意するのは手間がかかります。 そこで役立つのが、いわゆる「プレイグラウンド」と呼ばれる、Webブラウザでプログラミング言語やライブラリ、フレームワークをすぐに試すことができるサービスです。 主要なプログラミング言語の公式サイトには、実際にその言語をすぐに試せるプレイグラウンドが用意されていることも多く、また公式サイト以外にもネット上にはさまざまなプレイグラウンドがあります。 プレイグラウンドを使えば、気軽にいろんなプログラミング言語やライブラリ、フレームワークを試せます。 この記事ではそうしたプレイグラウンドをまとめてみました。ここで紹介したプレイグラウンドの他にも、あなたのお気に入りのプレイグラウンドがあればX/Twitterやブックマークのコメント、メール

                                                                                  プログラミング言語をすぐに試せる「プレイグラウンド」まとめ。2024年版
                                                                                • 【Java22】super()をコンストラクタの先頭以外に書けるようになる【JEP 447】 - Qiita

                                                                                  public class SuperClass{ public SuperClass(long value) { /* なんか重い処理 */ } } public class SubClass extends SuperClass{ public SubClass(long value) { super(value); // super呼ぶ前に検証したいんじゃが if(value <= 0){ throw new IllegalArgumentException("non-positive value"); } } } これまでsuper()は必ずコンストラクタの一番最初に書かなければなりませんでした。 2024/03/19にリリースされたJava22において、ようやく次の書式が合法化されました。 public class SubClass extends SuperClass{ publ

                                                                                    【Java22】super()をコンストラクタの先頭以外に書けるようになる【JEP 447】 - Qiita