gpt4 book ai didi

mysql - 如何使用 Spring MVC 在给定条件下从 mysql 获取数据

转载 作者:行者123 更新时间:2023-11-29 17:20:17 28 4
gpt4 key购买 nike

这是我的服务实现方法:

@Override
public List<Question> getQuestion(Long questionId, int page, int records, String organizationId) throws InvalidIdException {

Organization existingOrganization=organizationRepository.findOne(siteUtil.getDecryptedId(organizationId));
Pageable pageInfo=new PageRequest(page-1,records);
Page<com.oAssessment.entity.Question> existingQuestions=questionRepository.findAllByOrganizationAndDeleted
(existingOrganization,false,pageInfo);
List<Question> existingQuestion = new ArrayList<>();
if(existingQuestions.hasContent()) {
Iterator<com.oAssessment.entity.Question> existingQustionIterator = existingQuestions.iterator();
while(existingQustionIterator.hasNext()) {
com.oAssessment.entity.Question newQuestion = existingQustionIterator.next();
Question question = new Question();
if(newQuestion.getPkQuestionId()!=null) {
question.setSerialNo(newQuestion.getSerialNo());
question.setQuestionText(newQuestion.getText());
question.setDifLevel(newQuestion.getDifLevel());
question.setTypeOfquestion(newQuestion.getTypeOfQuestion());
existingQuestion.add(question);
}
}
}
return existingQuestion;
}

jpa 存储库就像

@Repository
public interface QuestionRepository extends JpaRepository<Question, Long> {

Page<Question> findAllByOrganizationAndDeleted(Organization existingOrganization, boolean b, Pageable pageInfo);

}

至此,所有数据都来自数据库。但我只是想设置一些条件来过滤掉数据。就像我想从数据库中获取给定主题的一些问题一样,没有问题,问题难度级别是这样的。但数据应该来自数据库随机。请帮帮我。

最佳答案

如果您想过滤 Spring Data 中的数据,可以使用 SpecificationsQuery by ExampleQuerydsl Extension 我建议选择Specifications,因为我认为它更强大。您可以看一下Spring Data JPA - Reference Documentation了解更多信息。

对于随机排序数据,我认为您无法在 Spring Data 中做到这一点,因为据我所知,并非所有数据库都具有该功能。首先找到过滤问题的总数,然后查询其中的随机页面怎么样?

关于mysql - 如何使用 Spring MVC 在给定条件下从 mysql 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51299383/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com