在 Roo 2.0 中,我想使用 JPA 查询方法
Posted
技术标签:
【中文标题】在 Roo 2.0 中,我想使用 JPA 查询方法【英文标题】:In Roo 2.0 I want to use JPA Query Method 【发布时间】:2018-01-19 10:59:38 【问题描述】:我打算写一个类似的查询方法
/**
* TODO Auto-generated method documentation
*
* @param entity
* @return EventExecute
*/
@Transactional
@Autowired
public EventExecute save(EventExecute entity)
String eventKey = entity.getEventKey();
StepDefinitionRepository sdRepository;
List<StepDefinition> stepDefinitions = sdRepository.findByEventKeyAllIgnoreCaseOrderBySequenceAsc(eventKey);
return getEventExecuteRepository().save(entity);
我想查找与事件键匹配的 StepDefintions。
我尝试按照 JPA 文档中的示例进行操作...
public class SomeClient
@Autowired
private PersonRepository repository;
public void doSomething()
List<Person> persons = repository.findByLastname("Matthews");
但是我的 sdRepository 抱怨它没有初始化。我在 ..ServiceImpl.aj 中找到了 getStepDefintionRepository() 但无法调用它。
有例子吗?
【问题讨论】:
那不是“JPA 文档”,而是“Spring Data JPA 文档”。 Spring Data JPA API!= JPA API。标签固定 【参考方案1】:好的,我发现了我的错误......这是有效的。
@Autowired
private StepDefinitionRepository sdRepository;
/**
* Overridden save method to intercept and process the dynamic steps before saving
*
* @param entity
* @return EventExecute
*/
@Transactional
public EventExecute save(EventExecute entity)
boolean keepGoing = true;
String eventKey = entity.getEventKey();
Set<NameValuePair> messageVariables = null;
String eventArguments = entity.getEventArguments();
List<NameValuePair> eventVariables = null;
if (!eventArguments.isEmpty())
eventVariables = _ExtractEventVariables(eventArguments);
List<StepDefinition> stepDefinitions = sdRepository.findByEventKeyAllIgnoreCaseOrderBySequenceAsc(eventKey);
for (Iterator<StepDefinition> iterator = stepDefinitions.iterator(); iterator.hasNext();)
【讨论】:
以上是关于在 Roo 2.0 中,我想使用 JPA 查询方法的主要内容,如果未能解决你的问题,请参考以下文章
使用 Springlets JPA 在 Spring Roo 中填充用户和角色