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

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

Strutsの「Auto growth collection limit(Collectionの要素数が256を超えるとエラーになる)の回避方法

# 問題の事象
StrutsではDOS攻撃対策として要素数が256件を超えるCollection型の項目をPOSTするとエラーが発生する。

“`java:HelloAction.java
public class HelloAction extends ActionSupport {
private List addresses;

public List getAddresses() {
return this.addresses;
}

public setAddresses(List addresses) {
this.addresses = addresses;
}

public String execute() {
if (this.addresses.isEmpty()) {
for (int i = 0; i < 300; i++) { this.addresses.a

元記事を表示

Gradleビルド実行後、何が行われるか?

Gradleでビルドを実行した際には、複数のタスクが自動的に処理され、最終的に成果物(アプリケーションやライブラリ)が生成されます。以下では、Gradleビルドの基本的な流れと、それぞれのステップで何が起きるのかを説明します。

### 1. **Gradleビルドの基本ステップ**
Gradleのビルドは、通常、以下の3つのフェーズを経て進行します。

1. **Initialization(初期化)フェーズ**
2. **Configuration(設定)フェーズ**
3. **Execution(実行)フェーズ**

### 1. **Initializationフェーズ(初期化フェーズ)**
このフェーズでは、Gradleがプロジェクトの設定を読み込み、どのプロジェクトがビルドに含まれるかを決定します。プロジェクトがシングルプロジェクトなのか、マルチプロジェクトなのかもここで判定されます。

#### 主な処理:
– `settings.gradle` ファイルが読み込まれ、どのプロジェクトが参加するかが判断されます。
– マルチプロジェクト構成の場合は、すべてのプロ

元記事を表示

Java Gold SE11対策 ネストしたクラスシリーズ①インナークラスについて

## はじめに

Java Goldの「クラスとインターフェイス」という単元では、
クラス内に定義したクラスを差す「ネストしたクラス」についての問題が出題される。

試験で問われるネストしたクラスには下記の4つがある。

・インナークラス
・staticインナークラス
・ローカルクラス
・匿名クラス

学習していてこれらがどうもごっちゃになり紛らわしい。

そこで、このシリーズではキチンと整理して理解するために、これらについてまとめていく。
現在の自分のようにJava Goldの学習をされる方のお役に立てると嬉しい。

## インナークラスとはクラスの中に定義したクラス

まずは、インナークラスの例をみていただきたい。

“`Outer.java
public class Outer {
class Inner {
// 何らかの処理
}
}
“`

Outerクラスの中にInnerというクラスが存在する。
このInnerクラスのように、クラスの中に定義したクラスを **「インナークラス」** と呼ぶ。

このインナークラスに対して、「外側」にあたる

元記事を表示

Spring Securityについて理解する②(ユーザ名とパスワードを使用した認証)

## ユーザ名とパスワードを使用した認証
以下の設定をSecurityConfig.javaに記載するだけで「ユーザー名」と「パスワード」を使用した基本的な認証ロジックを実装できる。

>“`SecurityConfig.java
>@Configuration
>@EnableWebSecurity
>public class SecurityConfig {
>
> @Bean
> public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
> http
> .authorizeHttpRequests((authorize) -> authorize
> .anyRequest().authenticated()
> )
> .httpBasic(Customizer.withDefaults())
> .formLogin(Customizer.withDefaults());
>
> return http.build();
> }
>
>

元記事を表示

String型の空文字判定とNULL判定

## 1.StringUtils.isEmpty()
isEmpty() は、null または空文字(長さが0)の場合に true を返します。

“`java:
import org.apache.commons.lang3.StringUtils;

public class StringCheck {
public static void main(String[] args) {
String str = null; // ここに対象の文字列をセット

if (StringUtils.isEmpty(str)) {
System.out.println(“String is null or empty”);
} else {
System.out.println(“String is not null and not empty”);
}
}
}
“`
### 実行結果:
“`
String is null or empty
“`

## 2.

元記事を表示

MybatisのSQLで不等号を記載する方法

Mybatisを用いた開発の場合、基本的にMapperXMLにSQLを記載することになる。
しかし、XMLファイルでは、不等号を表すのに利用する“<``や``>“は特別な意味を持ち、タグの開始や終了として解釈されてしまう。

## 改善策1.使用箇所をCDATAセクションで囲む
CDATAとは、「Character Data(文字データ)」の略で、CDATAセクション内の内容は通常のXMLパースルールを無視して、そのまま文字列として扱われる。

例:価格が300円未満の商品を抽出する
“`xml:

“`
## 改善策2.SQL全体をCDATAセクションで囲む
“`xml:

OTHERカテゴリの最新記事