Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
302 views
in Technique[技术] by (71.8m points)

spring - How to put method to @Query

there is typical jpa interface

public interface AnswerPollsRepository extends JpaRepository<EAnswerPoll, Long>{

default String getQuery(Map<String,String>map,Long pollId){
    String sql="select a.* from answer_poll a where a.poll_id ="+pollId;
  return sql+map.entrySet().stream()
        .filter(x->!x.getKey().equals("mail")&&x.getKey().equals("name"))
        .map(x->"and a.parameters->>"+x.getKey()+" like "+x.getValue())
      .collect(Collectors.joining(" "));

 @Query( value = "#{@.getQuery(#id,#map)}" ,nativeQuery = true)
  List<Long>findAllByCustomFilter(@Param("id") Long pollId,@Param("map") Map<String,String>map);

how to put getQuery to @Query?or it is impossible? this does not work

@Query( value = "#{@.getQuery(#id,#map)}" ,nativeQuery = true)
question from:https://stackoverflow.com/questions/66065233/how-to-put-method-to-query

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...