如何使用 spring roo 创建自定义查找器

发布于 2024-10-05 23:40:38 字数 1469 浏览 9 评论 0原文

我有一个实体升级,其中有一组产品对象。我想要一个像 findProductsByUpgrade_Name(String name) 这样的查找器对象,但我认为我需要自己创建它,因为我不知道如何做到这一点。谁能给我任何指示或指出我正确的方向?

升级:

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;
}

I have an entity Upgrade which has a set of Product objects. I want a finder object like findProductsByUpgrade_Name(String name), but I think I need to create this myself as I can't find out how to do this. Can anyone give me any pointers or point me in the right direction?

Upgrade:

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;
}

Product:

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;
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

甜味超标? 2024-10-12 23:40:38

不确定 ROO 是否可以为您生成这样的查找器 - 如果您还没有尝试过 finder list 命令,那就可以了。

如果您需要创建自己的 HQL/JPQL 等,那么您应该遵循推荐的模式,请参阅 Roo -添加自定义查找器

希望能帮助您向前迈出一小步。

Not sure if ROO could generate such a finder for you - if you have not tried the finder list command thats the way to go.

If you need to create your own HQL/JPQL etc then you should follow the recommended pattern for that, see Roo - add custom finder

Hope that helps you a little step ahead.

挽容 2024-10-12 23:40:38

你需要你的realtion的另一个方向:

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

然后你可以让finder finder添加findProduckByUpgrades

HF

You need the other direction of your realtion:

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

then you can make the finder finder add findProduckByUpgrades

HF

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文