JAVA関連のことを調べてみた

JAVA関連のことを調べてみた

XMLを複製する際にWRONG_DOCUMENT_ERRが発生する

# 発生した問題

employees.xmlには従業員の従業員番号・職種・名前が記載されています。

“`employees.xml


中原一郎
高津二郎
宮前三郎
多摩四郎
麻生五郎

“`

employees.xmlから職種が営業の従業員を抜き出し、新しいXML(sales.xml)を作りたいとします。これを実現するため、以下のようなプログラムを作成しました。

“`java
DocumentBuilder documentBuilder = Documen

元記事を表示

Eclipse中毒者がEclipseでよく使うショートカット一覧

私の記事に興味を持っていただきありがとうございます。

突然ですが、あなたはEclipseを触っていてこんなことを思ったことはないでしょうか?

・調べるまではいかないけどわざわざマウスポインタを移動させるの面倒だな…
・いざショートカットを調べてみたけど全部記載されていて使うのを選ぶのが大変だーー

そのようなお悩み、あと1分で解決できます!

というわけで今回は約2年間Eclipseばかり触ってきた
Eclipse中毒者の端くれである私が
普段の業務で使い倒しているショートカットをご紹介いたします。

それではどうぞ!

# Eclipseでよく使うショートカット一覧
| ショートカット | 操作結果 |
|:———–|————:|
| Ctrl+メソッド名にマウスポインタを合わせる+クリック |そのメソッドの実装へ飛ぶ |
| Ctrl+メソッド名にマウスポインタを合わせる+「実装を開く」をクリック | 抽象メソッドの実装を選択して飛ぶ |
| メソッドを選択して右クリックし、「呼び出し階層を開く」をクリック | 選

元記事を表示

bashでJava実行ワンライナー

# はじめに
こんにちは、絶賛Java修行中の@fsd-shoyaです。
.javaファイルをすべてコンパイルして実行する。というコマンドを毎度叩くのに嫌気が差したので、再利用可能なワンライナーを書いてみました。

# 実行環境

“`bash
$ echo $SHELL
/bin/bash
$ java –version
openjdk 21.0.1 2023-10-17
OpenJDK Runtime Environment (build 21.0.1+12-Ubuntu-222.04)
OpenJDK 64-Bit Server VM (build 21.0.1+12-Ubuntu-222.04, mixed mode, sharing)
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION=”Ubuntu 22.04.3 LTS”
“`
:::note info
WSL2を使用しています
:::

# 今回使用するコ

元記事を表示

【Minecraft】降る雪が一部メルティーキッスになるMod

## はじめに
この記事は[Life is Tech ! Advent Calendar 2023](https://qiita.com/advent-calendar/2023/life-is-tech) シリーズ1 23日目の記事です。

みなさんごきげんよう。うめちゃんと言います。本業は大学生ですが、Life is Tech!のMinecraftプログラミングコースでメンターもしております。
今日はMinecraftで冬っぽいModを作っていきたいと思います。

※本記事は株式会社明治とは一切関係ありません。

## 降る雪がぜんぶメルティーキッスなら

Playwrightを軽く触った後にキャプチャ取得ツール作ってみた

# はじめに
この記事では個人的に前々から気になっていたブラウザ自動操作ツールのPlaywrightを触って、簡単なツールを作成してみたという内容です。
調べながら作成したので、ところどころ非推奨な書き方などあるかもしれませんが、甘い目で見てください、、

# Playwrightとは
PlaywrightとはWebブラウザの操作を自動化することができるライブラリです。E2Eフレームワークと言ってテストの自動化で使用されるみたいです。(私は実務では使用したことがありません。)

ボタンの押下やフォームへの入力、画面キャプチャの生成など様々なことを自動で行えます。
Webブラウザの操作自動化といえばSeleniumが思いつきますが、他にもあるんですね。勉強不足。

JavaScriptやPythonなど様々な言語に対応しており、調べるとJavaScriptで書いている記事が多かったのですが、一応自分がJavaをメインで使用しているので今回はJavaで書いてみました。

# 早速触ってみる

公式ドキュメントなどを参考にしながらとりあえずコードを書いてみました。
とりあえずグーグルの検索画

元記事を表示

Sentry Legacy SDK(1.7系)を6.x系まで一気にバージョンアップした話

## はじめに
– この記事は ZOZO Advent Calendar 2023 #1 23日目の記事になります

## 何をしたか
– Java Sentry Legacy SDK(1.7系) – spring を6.x系まで一気にバージョンアップしました
– 使い方が色々変わっていたが、migration guideがあまり参考にならなかったので対応内容を備忘録としてまとめます

## なぜしたか
– 2023/11/24のSpring Boot 2.7.x End of Supportに伴い、ZOZOで稼働中のマイクロサービスの一部のSpring Bootのバージョンを3.1.x系に上げました
– 前提条件としてJava11->17の移行も同時に行ったがそこは本記事では割愛します
– ZOZOではエラー検知の仕組みの一つしてSnetryを運用しています。今回Spring BootバージョンアップしたマイクロサービスではSentry Legacy SDK(1.7系)を利用していましたが、Spring Boot 3系のバージョンアップ時にjavax->jakartaのパッケージ

元記事を表示

java入門その2 forとかifとか

この記事は、[【完走したい】楽しくいろいろやる Advent Calendar 2023](https://qiita.com/advent-calendar/2023/notbeginner)の19日目です。
javaの使い方や書き方について学んだので、ifで条件分岐とか繰り返しとか基本的な部分を学習しようとおみます。
# if
javaの条件式は、kotlinと同じように()の中に条件を入れ、その後の{}の中に行いたい処理を書くようです。
kotlinと同じく、countに10代入⇒もし10ならOKを出力、違っていたらNGを出力
“`
public class Adokare {
public static void main(String[] args){
int count=10;
if(count==10){
System.out.println(“OK”);
}
else{
System.out.println(“NG”);
}

元記事を表示

【Spring Data JPA】導入方法

# Spring Data JPA
`Spring Data JPA`の導入方法
**Gradle**の場合は
“`gradle:build.gradle
dependencies {
implementation ‘org.springframework.boot:spring-boot-starter-data-jpa’
}
“`
**Maven**の場合は
“`xml:pom.xml

org.springframework.boot
spring-boot-starter-data-jpa

“`
と記述する

元記事を表示

Springで作るWebアプリ作成の流れ(0)前提知識

## 目的
 この記事シリーズではSpringで簡単なTODOアプリを作ってWeb作成の流れを整理と復習していくものです。本記事では、Springなど具体的な話に入る前に必要なWebでのデータのやりとりの仕方がどのようになっているかなどを書いていきます。

## サイトにつながるまで
![Spitz.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2850098/418d49ab-3290-004c-c268-1d044af71c60.gif)
 私たちが普段使っているWebサイトはブラウザを介して接続しています。
 私たちが何か調べたいとき、ワードで検索してそれに合ったサイトをクリックしてページを表示させます。(写真はスピッツを検索したとき)

#### この時に何が起こっているのか
 この時、リンクをクリックしてからサイトが表示されるまでにどのような処理がされているのでしょうか。

 結論としてはURL(リンク)をサーバーに送り、そのURLに合わせた返しをプログラムによって決めています。

元記事を表示

java入門 その1 

この記事は[【完走したい】楽しくいろいろやる Advent Calendar 2023](https://qiita.com/advent-calendar/2023/notbeginner)の18日目の記事です。
AndroidStudioを使いたいので、ちょっと学びます。
できるようになったらなんか作ります。
# java
androidのアプリ開発に使われる言語のようです。
kotlinがjavaといい感じの関係らしいです。
# 書き方

まずはここから!Javaの「Hello World」の書き方

このサイトを参考に、文法を学びます。
“`
public class HelloWorld{
public static void main(String[] args){
System.out.println(“Hello World!!”);
}
}
“`

### public class 名前
publicなclassで、動かすものの塊です。public classの横の名前を入力することでプログラムを実行できます。
実行するプ

元記事を表示

Azure OpenAI機能と実装

# Azure OpenAIについて

## 目次
1. 概要
2. 機能/詳細
3. サンプルコード
4. まとめ

## 1. 概要
Azure OpenAIは、Microsoft Azureの一部として提供されるサービスであり、人工知能を活用した様々な機能を提供します。OpenAIは、機械学習や自然言語処理を含むAI関連のテクノロジーを提供しています。

## 2. 機能/詳細
Azure OpenAIは以下のような機能を提供しています。

– **GPT-3**: GPT-3(Generative Pre-trained Transformer 3)は、大規模なトランスフォーマーモデルを用いた自然言語処理のAIモデルです。GPT-3は他のAIモデルに比べて非常に高い性能を持ち、文章生成、翻訳、文章の要約などの様々なタスクに利用されます。

– **DALL-E**: DALL-Eは、画像生成に特化したAIモデルです。このモデルはテキストの説明に基づいて画像を生成することができ、独創的でクリエイティブな画像生成が可能です。DALL-Eは例えば、ある語句に基づいてそのイメージを生成

元記事を表示

Podmanを動かして学ぶ!rootlessコンテナ入門

## 目次
* はじめに
* 想定読者
* 環境
* コンテナエンジン(Docker,Podman)の違いについて
* Dockerとは何か
* では、Podmanとは何か
* rootlessコンテナについて
* rootコンテナのセキュリティリスク
* rootlessコンテナについて
* rootlessコンテナの設定方法
* ハンズオン手順
* ディレクトリ構造
* 工夫した点
* まとめ
* 参考文献

## はじめに
* 仮想化技術として、コンテナが主流となり、これまでコンテナに触れてこなかったアプリケーション開発者がコンテナを開発する機会も増えてきているのではないでしょうか。
* 今回はセキュアなコンテナの設計として重要な、rootlessコンテナの考え方を以下に整理しました!
* コンテナエンジンとしてのrootless
* コンテナイメージの実行ユーザーとしてのrootless
* 前者については、Dockerコマンドに類似するコマンドを、『デーモンレス

元記事を表示

【Spring Boot】Beanクラスの使い分けを理解して実装する

Java歴がもうすぐ2年になるため、普段曖昧にしていたBeanクラスの違い(DTO、From、Entity、Modelなど)を、正しく理解して実装してみようと思い、調べて実装してみました。

理解できると色々とスッキリするので、まだ違いがわからない方はしっかり理解しておくと良いと思います。

参考になりましたら幸いです。

間違っている箇所などがございましたら、ご指摘よろしくお願い致します。

https://taikis-blog.vercel.app/blog/Java

元記事を表示

Keycloakのカスタマイズ(Quarkus版)

# 記事の目的
* カスタマイズSPIの開発・デプロイ方法を把握できる
* 大体どういうカスタイマイズポイントがあり、OpenStandiaでのカスタマイズ事例を紹介してどういうことができるか把握できる(具体的な開発やサンプルの作成は別記事に任せる)

# 気をつけるポイント
* Quarkus版になって変わることを意識する過去記事から変わらない部分は流用する

# はじめに
Keycloakはアドオンで様々なカスタマイズを行うことができます。

2017年にKeycloakのカスタマイズ方法やカスタマイズポイントを紹介しましたが
KeycloakはJBossではなくQuarkusで動くようになり、OpenStandiaでは様々なカスタマイズ開発を行ってきました。

https://qiita.com/yoonis/items/298d580f7e93e56ddf6a#%E4%BB%8A%E6%97%A5%E3%82%84%E3%82%8B%E3%81%93%E3%81%A8

本記事は、最新情報を元に過去と同様のコンセプトでQuarkus版Keycloakのカスタマイズ方法とカスタマ

元記事を表示

Spring Bootのロギング警告

## はじめに

こんにちは、[@rs_tukki](https://twitter.com/rs_tukki)です。
これは[ラクス Advent Calendar 2023](https://qiita.com/advent-calendar/2023/rakus)の22日目の記事です。

皆さん、Spring Bootは使われていますでしょうか。
JavaでWebアプリケーションを作るとなれば真っ先に候補に挙がるフレームワークですが、今回はそのSpring Bootのバージョンアップ作業中に遭遇した警告についての話をします。

## Spring Bootのバージョンアップ

Spring Bootは、2022年11月に3.0.0へのメジャーバージョンアップが行われてから既に1年が経過しています。
3.0.0へのメジャーバージョンアップは破壊的変更も多く苦戦させられましたが、それ以降のバージョンアップでは大きな変更もなく、動作確認も順調に進んでいました。

そして2023年6月、3.1.1がリリースされたことを機に最新版へバージョンアップする作業を行っていたところ、

“`

元記事を表示

AppStore#verifyReceiptの代替対応

## はじめに
この記事は[フリューAdvent Calendar 2023](https://qiita.com/advent-calendar/2023/furyu)の22日目の記事となります。

フリュー株式会社スマートフォンゲーム部で、Webサーバーエンジニアをしている山根です。
AppStoreの消費型の課金処理で、レシートの検証として
[AppStore#verifyReceipt](https://developer.apple.com/documentation/appstorereceipts/verifyreceipt)
を使ってきましたが、ついに非推奨になってしまいました。
これに代わる対応について紹介していきたいと思います。

## 代替案
ドキュメントには、以下3つの代替案が記述されています。
1. [AppStoreServerAPI](https://developer.apple.com/documentation/appstoreserverapi)を使って、Apple署名付きトランザクション情報を取得、検証する
1. アプリが取得するAppTrans

元記事を表示

NullPointerExceptionを防ぐためInferをM1 Macで試してみた

これは [Java Advent Calendar 2023 シリーズ1](https://qiita.com/advent-calendar/2023/java) の22日目の記事です。

# 背景

Javaで開発をしていると、Null Pointer Exception(以下NPE)を発生させてしまうことがある。

`@Nullable`アノテーションなどを設定すれば、[Checkstyle](https://checkstyle.sourceforge.io/)等のツールでnullに対するチェックを行うことができるが、`@Nullable`アノテーションを導入していないコードベースには適用できない。

アノテーションを導入していなくてもNPEの発生を解析できるツールを調査したところ、Facebook社が公開している静的解析ツール[Infer](https://fbinfer.com/)を見つけた。

これを手元の環境であるM1 Macで動作させようと思ったが、Getting Started通りに実施しても利用できなかった。

そこで、本記事ではInferを利用したい方向けに、

元記事を表示

実装時遭遇エラー

実装時に遭遇したエラーについて、大小問わずメモ書きです。
随時更新できればと思います。

# SQLException: ORA-03115: サポートされていないネットワークのデータ型または表現があります
executeQueryに引数を入れてました。引数を消したら解決しました。
“`
resultSet rs = ps.executeQuery(sql); // 誤り
resultSet rs = ps.executeQuery(); // 正
“`
[java.sql.SQLException:ORA-03115:サポートされていないネットワークのデータ型または表現](https://www.web-dev-qa-db-ja.com/ja/sql/javasqlsqlexception%EF%BC%9Aora03115%EF%BC%9A%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%AA%E3%81%84%E3%83%8D%E3%83%83%E3%83%88%E3%8

元記事を表示

Material3なカルーセルを作る【Android Studio】【Java】

初心者です。
AndroidStudioでMaterial3なカルーセルを作りたああああああああああああああい!!
ということで作っていきます。

# 完成した物
![レコーディング-2023-12-21-223958.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3634181/f4aca775-79d7-55fa-6064-f27d5f9daf79.gif)
https://github.com/SousiOmine/Material3_Carousel_demo

# 参考にした資料

Atriiという方の解説動画です
https://github.com/material-components/material-components-android/blob/master/docs/components/Carousel.md
公式ドキュメントです

# コピペで作っていく

元記事を表示

OTHERカテゴリの最新記事