2010-11-30 86 views
1

我有一個具有一組Product對象的實體Upgrade。我想要一個像findProductsByUpgrade_Name(String name)這樣的finder對象,但我想我需要自己創建這個,因爲我找不到如何做到這一點。任何人都可以給我任何指點或指向正確的方向嗎?如何使用spring roo創建自定義查找器

升級:

package com.company.pr.domain; 

import org.springframework.roo.addon.javabean.RooJavaBean; 
import org.springframework.roo.addon.tostring.RooToString; 
import org.springframework.roo.addon.entity.RooEntity; 
import com.company.pr.domain.UpgradeType; 
import javax.persistence.ManyToOne; 
import java.util.Set; 
import com.company.pr.domain.Product; 
import java.util.HashSet; 
import javax.persistence.ManyToMany; 
import javax.persistence.CascadeType; 

@RooJavaBean 
@RooToString 
@RooEntity 
public class Upgrade { 

    private String name; 

    @ManyToOne 
    private UpgradeType upgrade_type; 

    @ManyToMany(cascade = CascadeType.ALL) 
    private Set<Product> products = new HashSet<Product>(); 

    private String description; 
} 

產品:

package com.company.pr.domain; 

import org.springframework.roo.addon.javabean.RooJavaBean; 
import org.springframework.roo.addon.tostring.RooToString; 
import org.springframework.roo.addon.entity.RooEntity; 
import com.company.pr.domain.PackageType; 
import javax.persistence.ManyToOne; 

@RooJavaBean 
@RooToString 
@RooEntity 
public class Product { 

    private String product_id; 

    private String product_name; 

    private String ca_product; 

    @ManyToOne 
    private PackageType packageType; 

    private String description; 
} 

回答

2

不知道原產地規則可以爲您生成這樣的取景器 - 如果你還沒有嘗試過的取景器列表命令這就是要走的路。

如果您需要創建自己的HQL/JPQL等,那麼你應該按照該建議的模式,看Roo - add custom finder

希望幫助你提前一小步。

2

你需要你的維吾爾語的另一個方向:

@ManyToMany(cascade = CascadeType.ALL, mappedBy = "products") 
private Set<Upgrade> upgradets = new HashSet<Upgrade>(); 

那麼你可以讓取景器取景器添加findProduckByUpgrades

HF