我是编程新手,我想问:如果我有一个托管Bean(具有不同的特征(,并且我想添加不同的类别,并在xhtml页面上显示它们。 如何将这些类别与managedBean和xhtml绑定,并在用户添加产品后将产品放在正确的类别中?
这是我的XHTML代码的一部分:
<ui:define name="content">
<h2>New auction</h2>
<h:form>
<h:panelGrid columns="2">
<h:outputLabel value="Name:" />
<h:inputText value="#{newAuctionWizard.auction.name}" />
<h:outputLabel value="Description:" />
<h:inputTextarea value="#{newAuctionWizard.auction.description}" />
<h:commandButton value="Cancel" action="#{newAuctionWizard.cancel()}" />
<h:commandButton value="Details" action="newAuctionDetails" />
</h:panelGrid>
<h:messages style="color: red" />
</h:form>
</ui:define>
和部分 Java 代码:
private static final long serialVersionUID = -38089703767395198L;
private Long id;
@Size(min=2, max=30, message = "The auction's name: minim {min} and maximum {max} caractere")
private String name;
@Size(max=1000, message = "The auction's description must be of maximum {max} characters")
private String description;
@Min(value = 1, message = "Original price should be at least 1 RON")
@NotNull(message = "Highest Bid")
private Long originalPrice;
private String location;
private User owner;
private Bid highestBid;
private List<Bid> bids = new ArrayList<Bid>();
我希望用户能够在添加拍卖时选择一个类别并将其产品放在正确的类别中..对于每个类别,我应该创建一个Java类吗?
谢谢
在这篇文章中,我将尝试回答您的问题(即使对我来说不是很清楚(
在您的类别实体中,您将使要使用的产品列表如下所示
类别实体.java
@Entity
@EntityListeners(QuerySessionLog.class)
@Table(name = "category")
....
@OneToMany(mappedBy = "category", fetch = FetchType.LAZY , cascade = CascadeType.ALL ,orphanRemoval = true)
private List<productEntity> listProducts ;
不要忘记列表的获取者和设置者
在您的产品实体中,它将看起来像这样
产品实体.java
...
@JoinColumn(name = "category")
@ManyToOne(fetch = FetchType.LAZY)
private categoryEntity category;
再一次不要忘记吸气者和二传手
并且您可以访问此数据抛出category.listProducts
要显示您的信息,您可以在Primefaces网站Primefaces网站中找到各种示例,例如dataTable ...
希望对您有所帮助。