リソースフォルダからSQLをロードする必要がある場合は、spring-data-sqlfileライブラリを試すことができます。リソースからのSQLクエリのロードをサポートします。したがって、SQLクエリをresourcesフォルダーに配置するだけで、SqlFromResourceアノテーションで参照できます:
@Repository
public interface UserRepository extends JpaRepository<User, Integer> {
@SqlFromResource(path = "select_user_by_id.sql")
User findById(int userId);
}
出力は次のようになります:
@Repository
public interface UserRepositoryGenerated extends JpaRepository<User, Integer> {
@Query(
value = "SELECT * FROM users WHERE id = :userId",
nativeQuery = true
)
User findById(int userId);
}