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

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

2024年 Eclipse 使い方(ダウンロード→画面に「Hello World」表示まで)丁寧に順序立てて説明 (画像付き)

# 1.Eclipseのダウンロード(Javaを使う前提で進めます。)
Eclipseのダウンロードは以下のURLからダウンロードしてください。
・[Pleiades All in One](https://willbrains.jp/)
 ※ちなみに「Pleiades All in One」はEclipse 本体に、日本語化を行うための Pleiades プラグイン、その他プラグインをまとめたパッケージ(つまりはEclipseと便利なツールが入ってるソフトである)
# 2.Eclipse起動
① ダウンロードしたフォルダを見つけて(自分は「C:\pleiades\2023-06\eclipse」の中にあった)以下の画像のファルダ内にある「eclipse.exe」をクリックすると「Eclipse」が起動できる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3484022/1c5069dd-1865-0b55-8e4d-d9ed05e5d1f9.png)
② 「eclipse.exe」

元記事を表示

[合格体験記] JavaSilver 受験費用を抑えるコツ

はじめまして。文系新卒入社3年目の白田です。
JavaSilver試験を受験し、合格したので情報共有します。
私は「受験費用を抑えるコツ」についてご紹介します。
できるだけ安く受験したい方に向けての解説です。
試験対策については、他の方の合格体験記を参考にしてください。

# 結論
・再受験無料の期間内に申し込め!
・公式から購入するな!
 の2点です。順に解説します。

# 再受験無料の期間内に申し込め!
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3736349/41acd9a6-6c7e-c148-f300-e4d061e63481.png)

プロモコード「RETAKE24JP」を入力して受験すれば、一度不合格でも再受験の際に受験料を払う必要がなくなります。
一度不合格でも大丈夫、と思えるのは安心感が段違いです。力試し的な受験ができます。

キャンペーンは通年3月から5月の間に実施されることが多いようです。

https://www.pearsonvue.co.jp/Clie

元記事を表示

[BigQuery API(V2)] JavaでBigQuery ML モデルの情報を取得する

BigQuery API V2(Java)を使用して、
BigQueryMLモデルの情報を取得する方法
についてご紹介します。

**BigQuery ML**
BigQuery上で機械学習モデル(ML)を作成、評価、実行ができるサービスです。
専門知識がなくとも機械学習ができるようになっています。

MLモデル取得にはデータセットに対しIAM権限が付与されている必要があります。

権限付与に関しては
[⧉[BigQuery API(V2)] JavaでBigQueryを使う(2.権限付与)](https://qiita.com/doran/items/8b7ba29672527426e88d#2-権限付与)
を参照ください。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[BigQuery API(V2)] JavaでBigQueryを使う](https://qiita.com/doran/items/8b7ba29672527426e88d)
を参照ください。
:::

|No||目次|
|—|—|—|
|1

元記事を表示

はじめてのWebサーバ構築(centOS Stream 9, Java 11, tomcat 9, サーブレット)

# はじめてのWebサーバ構築

## 1\. 前提条件
### 済ませておくこと
– さくらのVPS [サーバ申込を済ませておく]
– お名前.com [ドメイン申込を済ませておく]
※さくらVPSサーバのグローバルIPが分かり次第Aレコードの設定を済ませておく]
– Tera Term 5 [インストールを済ませておく]

### このページで設定するもの
– centOS Stream 9
– javaEE 11
– tomcat 9.0.88

## 2\. VPSサーバの設定

さくらのVPSサーバの設定は以下の通り。
![さくらのvps01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3781397/23bd34da-3017-90b6-b493-7aee68e3a4e8.png)
![さくらのvps02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3781397/9fa8e6ff-e48c-a8c3-

元記事を表示

java クラス 継承

## 継承
あるクラスの機能を引き継ぎながら新しいクラスを定義すること
元のクラスを「親クラス」「スーパークラス」などと呼び、新たに定義されるクラスを「子クラス」「サブクラス」という
#### 継承関係の表現方法
![627c7833da2b4a25ebd6adbece2a28ae.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3620446/11f40834-be39-c5c2-1825-da49acc00ed1.png)

1つのクラスをベースとして、複数の子クラスを定義することもできる。孫クラス、ひ孫クラスの定義もできる。
多重継承(複数のクラスを親として1つの子クラスを定義すること)はできない。

### 継承を用いたクラスの定義
“`
public class クラス名 extends 元となるクラス名 {
親クラスとの差分となるメンバ
}
“`
### オーバーライド
親クラスを継承して子クラスを宣言するさい、親クラスのメンバを子クラス側で上書きすること

“` Animal

元記事を表示

【しくじり】新人、○○不足で最弱Javaプログラムを作成する

## はじめに
エンジニア歴約5年程なのですが、心配性な性格のおかげ(?)で過去やらかした記憶があまりありません。
※もしかしたら記憶から抹消しただけかもしれない。

そんな私が唯一記憶に残っている、若干やらかしエピソードを記事に残そうと思います。
誰でも失敗は経験してるんだよ〜ということで、特に新人の方に読んでいただけたら嬉しいです。

:::note warn
実際のJavaコードはありませんので、予めご了承ください。
:::

## ○○不足でへなちょこプログラムを作成した
### – 新入社員研修まで遡る
かれこれ約6年前、新卒で入ったIT企業の新入社員研修のときです。
文系出身で情報系の知識はまっさらの状態でしたが、未知の世界にどっぷりハマり研修も楽しく過ごせました:relaxed:

特に研修最終段階で実施した、Javaのじゃんけんプログラム作成はボリュームが多かった分、有意義な時間でした。

研修外の時間は稼働をつけられませんでしたが、なんとしてでも良いプログラムを作りたい一心で、当時フォロー役として新人と一緒に研修に参加してくれた先輩のお力添えをいただきながら、研修後も

元記事を表示

[BigQuery API(V2)] JavaでBigQueryテーブルの情報を取得する

BigQuery API V2(Java)を使用して、
BigQueryテーブルの情報を取得する方法
についてご紹介します。

テーブルの情報を取得するには、
適切なIAM権限が付与されている必要があります。

権限付与に関しては
[⧉[BigQuery API(V2)] JavaでBigQueryを使う(2.権限付与)](https://qiita.com/doran/items/8b7ba29672527426e88d#2-権限付与)
を参照ください。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[BigQuery API(V2)] JavaでBigQueryを使う](https://qiita.com/doran/items/8b7ba29672527426e88d)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[テーブル一覧を取得](#1-テーブル一覧を取得)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポ

元記事を表示

Javaで「エスケープシーケンスを使った特殊な文字の表現」の動作を確認してみた

# 概要

Javaで「エスケープシーケンスを使った特殊な文字の表現」の動作を確認してみました。
以下のページを参考にしました。

https://www.javadrive.jp/start/num/index4.html

# 実装

以下のファイルを作成しました。
“`JSample4_1.java
class JSample4_1{
public static void main(String[] args){
System.out.println(‘\”);
System.out.println(“私の名前は\”鈴木\”です”);
System.out.println(“この魚の値段は\\250です”);
}
}
“`

以下のコマンドを実行しました。
“`
$ javac -encoding UTF-8 JSample4_1.java
$ java JSample4_1

私の名前は”鈴木”です
この魚の値段は\250です
“`

# まとめ

何かの役に立てばと。

元記事を表示

String型で等値判定(==)と等価判定(equals)を読み解く

## 等値判定と等価判定

“`Java:sample1
String a = “Hello”;
String b = new String(“Hello”);
if(a == b) System.out.println(“TRUE”);
else System.out.println(“FALSE”);
“`
早速ですが、上記のコードを実行すると何が出力されるでしょうか?
答えは**FALSE**です。

もやもやする方も納得のいく方も、次のコードを見てみてください。
“`Java:sample2
String a = “Hello”;
String b = “Hello”;
if(a == b) System.out.println(“TRUE”);
else System.out.println(“FALSE”);
“`

では、こちらのコードを実行すると何が出力されるでしょうか?
答えは**TRUE**です。

上記の2つの例を比べて、何か違和感を感じた方も多いのではないでしょうか。
`sample1/sample2`ともに、変数aと変数bに`Hello`を代入してい

元記事を表示

【Java・SpringBoot】ObjectMapperクラスでJSONオブジェクトをゼロから作成する方法

Javaのバックエンド処理内にて、JSONオブジェクトをプロパティ名も含めてゼロから作成するケースに遭遇した。
この場合、ObjectMapperクラスの「createObjectNode」メソッドを利用すると簡単に作れる。
備忘録のため以下にまとめておく。

## createObjectNodeメソッド ・使い方
以下のように記述することで、プロパティ名を含めて自由にJSONオブジェクトを作成できる。

“`java

public class Main {
public static void main(String[] args) throws Exception {

// ObjectMapperをインスタンス化する.
// enableメソッドはJSONオブジェクトをコンソールで出力する際に改行を加えて見やすくする呪文.
// 改行の必要性が無い場合は記述を省けばOK.
ObjectMapper objectMapper = new ObjectMapper()
.

元記事を表示

「StreamAPIとラムダ式」実務で活用してみた

# はじめに
こんにちは。

今回は実務で`Java8`の機能である**StreamAPI**と**ラムダ式**を活用し、既存のコードをリファクタリングしてみたので、その時の経験を皆さんに共有したいと思います。

最近、Javaの勉強中にStreamAPIとラムダ式で、古いコードをリファクタリングする[あるブログの記事](https://jojoldu.tistory.com/412 “韓国エンジニアのブログ”)を見かけました。
そのブログの事例を今回の自分の課題に積極的に活用してみました。

こういう使い方もあるんだな。。ぐらいで読んでいただければ幸いです。

> この記事で紹介される事例は各セクションを説明をするために作成されたものです。

# 事例1 – メモを職種別にグルーピングする

プロジェクトを進めてみると、多様な情報が混在しているデータの中で特定のキーワードがある情報だけを抽出する場合は頻繁にあると思います。

例えば、ある病院で作成された掲示板のメモの中で、**看護師が作成したメモを見たい**または**医師が作成したメモを見たい**など、職種別で作成されたメモを確認し

元記事を表示

ABC351A~Fの解答[Java]

## はじめに
今回はコンテスト中にEまで、コンテスト後にFが解けたのでそれを載せようと思います。

なお、僕のライブラリに関しては[提出結果](https://atcoder.jp/contests/abc351/submissions?f.Task=&f.LanguageName=Java&f.Status=AC&f.User=viral)をご覧ください。
では見ていきましょう。

## A – The bottom of the ninth
問題文は[こちら](https://atcoder.jp/contests/abc351/tasks/abc351_a)

$A$の総和から$B$の総和を引いて$1$加えた値が答えになるのでそれを求めました。
“`A.java
final class Main{
private static final boolean autoFlush = false;
private static final SimpleScanner sc = new SimpleScanner(System.in);
private static final

元記事を表示

ABC350A~Fの解答[Java]

## はじめに
今回はDまで、コンテスト後にEとFを解いたのでそれを載せようと思います。

なお、僕のライブラリは[提出結果](https://atcoder.jp/contests/abc350/submissions?f.Task=&f.LanguageName=Java&f.Status=AC&f.User=viral)よりご確認ください。
では、見ていきましょう。

## A – Past ABCs
問題文は[こちら](https://atcoder.jp/contests/abc350/tasks/abc350_a)

$S$の末尾$3$文字の数字だけ見れば良いので、substringで切り出して数値に変換し、条件を満たすか判定しました。
“`A.java
final class Main{
private static final boolean autoFlush = false;
private static final SimpleScanner sc = new SimpleScanner(System.in);
private static final S

元記事を表示

ABC349A~Fの解答[Java]

## はじめに
今回はコンテスト中にEまで、コンテスト後にFを解いたのでそれを載せようと思います。

なお、僕のライブラリは[提出結果](https://atcoder.jp/contests/abc349/submissions?f.Task=&f.LanguageName=Java&f.Status=AC&f.User=viral)よりご確認ください。
では、見ていきましょう。

## A – Zero Sum Game
問題文は[こちら](https://atcoder.jp/contests/abc349/tasks/abc349_a)

ゲームの前後で全員の持ち点の総和は変化しないので、$A$の総和が$0$であることから、$A_1~A_{N-1}$の総和の符号を反転したものが答えになります。
“`A.java
final class Main{
private static final boolean autoFlush = false;
private static final SimpleScanner sc = new SimpleScanner(System.i

元記事を表示

asdf-javaのJAVA_HOME切替スクリプトがzshの遅延に影響していた

# TL;DR
– zshのプロンプト表示に遅延が発生していた
– 原因:[asdf-java](https://github.com/halcyon/asdf-java)が提供する、`JAVA_HOME`切替スクリプトがprecmdフックにより毎回動いていたため
– [asdf](https://github.com/asdf-vm/asdf)が直接の原因ではないが、これをきっかけに[mise](https://github.com/jdx/mise)に移行した

# 環境
– macOS 13.1
– zsh 5.9 (x86_64-apple-darwin21.3.0)
– [asdf](https://github.com/asdf-vm/asdf) 0.11.0
– [asdf-java](https://github.com/halcyon/asdf-java)
– [mise](https://github.com/jdx/mise) 2024.5.2 macos-x64

# asdfとは
複数のツールのバージョンを管理してくれるCLI

https://github.

元記事を表示

【Kotlin】ロックフリー・一括生成に対してソート可能なUUID v7生成器を作った

# 状況
`ID`として`UUID v4`を使っているプロジェクトで、限定的な状況で`ID`をソート可能にしたくなりました。
`ULID`や`UUID v7`の生成をサポートするいい感じのライブラリを探しましたが、要件上ロック周り[^lock]が微妙っぽかったり、同一タイムスタンプで生成した場合に確率でエラーになりそう[^kakuritu]だったりと、採用できそうなライブラリを見つけられませんでした。

[^lock]: 作った方が早そうだったので厳密な検証はしていませんが、リアクティブスタックと`ReentrantLock`の相性が悪そうという点を気にしました。

[^kakuritu]: 具体的には`java-uuid-generator`を使おうとしていましたが、[シーケンシャルずらし処理がオーバーフローしうる](https://github.com/cowtowncoder/java-uuid-generator/blob/f59ec83a984a16898cb7b2d426392b5ed4e7d4d2/src/main/java/com/fasterxml/uuid/impl

元記事を表示

[BigQuery API(V2)] Javaでアクセス可能なプロジェクト一覧を取得する

BigQuery API V2(Java)を使用して、
BigQueryのアクセス可能なプロジェクト一覧を取得する方法
についてご紹介します。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[BigQuery API(V2)] JavaでBigQueryを使う](https://qiita.com/doran/items/8b7ba29672527426e88d)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[プロジェクト一覧を取得](#1-プロジェクト一覧を取得)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポンスの内容)|

## 1. プロジェクト一覧を取得
BigQueryで利用可能なプロジェクト一覧を取得します。
読み取りアクセス権以上があるプロジェクトのみ取得できます。

### 1.1. スコープ
このAPIを実行するには、以下のいずれかのスコープを指定してください。
“`
BigqueryScope

元記事を表示

nablarch: nablarch-example-batchをdockerコンテナにする方法

## はじめに
nablarch-example-batchは、nablarchフレームワークのバッチアプリケーション実装例である。

ただし、nablarch-example-batchはdocker用のexampleを提供していない。
このページでは、dockerコンテナでnablarch-example-batchを動かす方法を説明する。

### 結局、どうやったらできるのか

以下の通り。`mvn package`コマンドは[nablarch-example-batch手順](https://github.com/nablarch/nablarch-example-batch)に従って事前に実行する前提とする。

“`compose.yml
services:
backend:
build: .
“`

“`dockerfile:Dockerfile
# syntax=docker.io/docker/dockerfile:1
FROM amazoncorretto:8-alpine3.19-jre

WORKDIR /opt/app

# zipの中

元記事を表示

nablarch: nablarch-example-restをdockerコンテナにする方法

## はじめに:nablarch-example-restの課題

nablarch-example-restは、nablarchフレームワークのRESTアプリケーション実装例である。

ただし、nablarch-example-restはdocker用のexampleを提供していない。
かわりに[waitt(Web Application Integration Test Tool)](https://github.com/kawasima/waitt)ツールによるexampleが提供されているが、
waittは複数アプリの結合などを行うことが難しい上にメンテナンスされていないため、tomcatバージョンも変更困難である点が難点。

このページでは、より人気が高く機能も豊富であるdockerコンテナでnablarch-example-restを動かす方法を説明する。

## 前提条件

– docker(インストール手順は[こちら](https://qiita.com/KO_YAmajun/items/41ea85d30f143b25135c)を参照)
– jdk(8または17)

元記事を表示

tomcat: docker環境下で管理画面にアクセスするためのDockerfileは?

## はじめに:Tomcatとは

Apache Tomcat は、Java用のWebコンテナである。
war(Web Application Archive)ファイルを用いてWebページやRESTAPIを公開することができる。

## この記事でできること

dockerのTomcatイメージはデフォルトでは管理画面を提供しないので、利用にはひと手間が必要。
この記事では、docker環境下でtomcatの管理画面の利用方法を説明する。

:::note
– docker環境下で、`http://localhost:8080/manager/html` から tomcatの管理画面にアクセスできる
:::

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/161516/51afaf81-5384-b9cd-ee38-905953b91df6.png)

### 前置き

このページではdockerはセットアップできている前提とする。dockerのセットアップ方法はこちら

https:/

元記事を表示

OTHERカテゴリの最新記事