[解決済み] Spring JPAの@QueryとLIKE
2022-10-22 22:11:42
質問
CrudRepositoryで、入力パラメータがLIKEであるユーザーのリスト(始まりだけでなく、それを含む)を取得できるメソッドを作ろうとしています。私はメソッドを使用しようとしました
"findUserByUsernameLike(@Param("username") String username)"
というメソッドを使おうとしたのですが、Springのドキュメントにあるように、このメソッドは
となります。
where user.username like ?1
となります。私はすでにユーザー名に...を含むすべてのユーザーを取得しようとしていると述べたように、これは私にとって良いことではありません。
私はメソッドにクエリを書きましたが、それさえもデプロイされません。
@Repository
public interface UserRepository extends CrudRepository<User, Long> {
@Query("select u from user u where u.username like '%username%'")
List<User> findUserByUsernameLike(@Param("username") String username);
}
誰かこれを手伝ってくれませんか?
どのように解決するのですか?
以下の方法を試してみてください(私の場合はうまくいきました)。
@Query("SELECT u.username FROM User u WHERE u.username LIKE CONCAT('%',:username,'%')")
List<String> findUsersWithPartOfName(@Param("username") String username);
お知らせです。JPQLのテーブル名は大文字で始めなければなりません。
関連
-
実行中にEclipseがポップアップする A Java Exception has occurred
-
[解決済み] Spring Data JPAにおけるCrudRepositoryとJpaRepositoryのインターフェースの違いは何ですか?
-
Java JDKのダイナミックプロキシ(AOP)の使用と実装の原理分析
-
WeChat小プログラム Bluetooth通信 Bluetoothモジュールデモ
-
[解決済み] jQueryでチェックボックスに "checked "を設定する
-
[解決済み] jQueryでページを更新するにはどうすればよいですか?
-
[解決済み] jQueryで要素にスクロールする
-
[解決済み] jQueryで入力を無効化/有効化する?
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み】SQL Serverで既存のテーブルにデフォルト値を持つカラムを追加する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Solve モジュールのビルドに失敗しました。Error: ENOENT: no such file or directory エラー
-
名前 'XXX' を持つ Bean の作成に失敗しました。自動依存関係の注入に失敗しました 解決方法
-
java -jarコマンドでパッケージを実行すると、無効または破損したjarfile xxxx.jarが表示される。
-
List list = new ArrayList(); Error: ArrayList は型に解決できません。
-
Junitのユニットテストエラー
-
eclipse にリソースリーク:'in' が閉じない
-
eclipse 実行 Java、エラー: 選択を起動できず、レシーバーもありません。
-
Java:未解決コンパイル問題の解決方法
-
Java JDKのダイナミックプロキシ(AOP)の使用と実装の原理分析
-
IDEAError:javaの依存性エラー。Annotation processing is not supported for module cycles...(アノテーション処理はモジュールサイクルではサポートされていません。