2010-11-30 21 views
1

私はProductオブジェクトのセットを持つエンティティアップグレードを持っています。 findProductsByUpgrade_Name(String name)のようなファインダオブジェクトが必要ですが、これを行う方法がわからないので、自分自身を作成する必要があると思います。誰でも私に指針を与えたり、正しい方向に私を向けることができますか?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; 
} 

製品:

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.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

わからない - あなたが移動するための方法thatsのファインダーリストコマンドを試していない場合。

あなたは、あなたがあなたの先に小さなステップを助けRoo - add custom finder

希望を参照して、そのための推奨パターンに従ってください、あなた自身のHQL/JPQLなどを作成する必要がある場合。

2

あなたのrealtionの他の方向を必要とする:

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

、あなたはファインダーファインダーはfindProduckByUpgrades

HF

を追加することができます
関連する問題