

Spring
bootにてfindAllでExample.ofを用いており、Example.ofに渡すオブジェクトのプロパティがnullの場合はSQL検索条件から除外されるのですが、空文字の場合は除外されずSQL検索条件となってしまいます。

これを防ぐためにfindAll実行前に下記処理を行っており、空文字のプロパティにはnullを設定しているのですが、既存のExample機能を用いて同様の事を実現する方法や、その他良い方法があればご教授いただけますと幸いです。

[code]

    public static void emptyConvertNull(User user){
        Field[] fields = user.getClass().getDeclaredFields();
        for (Field field : fields) {
            field.setAccessible(true);
            Object value = field.get(user);
            // 値が空文字である場合
            if (value != null && value.equals("")) {
                // nullを設定
                field.set(user, null);
            }
        }
    }
    
[/code]


CC BY-SA 4.0
2023-02-15T09:48:57.103
93853
2023-02-16T09:00:25.157
2023-02-16T09:00:25.157
3060
7626
question
java spring-boot
findAllのExample機能で、空文字プロパティを検索条件から外したい