首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java-ee编程;与2个表的JPA混淆

Java-ee编程;与2个表的JPA混淆
EN

Stack Overflow用户
提问于 2012-05-18 06:30:43
回答 1查看 95关注 0票数 0

我使用JPA来持久化数据。我是整个Java-ee编程的新手,所以如果我做错了,请让我知道。我有两个对象。活动和门票。用户将添加新事件,并将选择该事件的门票数量。然后,我将在事件表中创建一个条目。另外,根据该事件的门票数,我将在门票表中创建许多条目。我感到困惑的是,在创建事件时创建票证的逻辑应该在servlet中还是在会话bean中。对于事件和票证,我有单独的会话bean。我不确定是应该有2个会话bean,还是只有1个bean。这方面的任何建议都会很有帮助。

代码

代码语言:javascript
复制
@Entity
public class Event {    
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long eventId;
private String name;
@OneToMany(mappedBy = "event", cascade = CascadeType.ALL)
private Set<Ticket> tickets;

    //getter and setters here
}    

@Entity
public class Ticket {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long ticketId;
@ManyToOne
@JoinColumn(name = "event_id", nullable=false)
private Event event;

//getters and setters
 }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-18 06:50:15

您的主要逻辑应该在EJB中,而不是在控制器/servlet中。EJB应该为您的主要用例提供方法。您应该只将表示逻辑放在servlet中,格式化用于显示和处理用户操作的数据。

另请参阅:Session Facade pattern

至于bean的数量,这是您的选择,您可以从一个开始,如果它变得太乱,则进行重构。

此外,我不确定您是否应该在创建活动时创建票证。一个事件可以有一个字段来说明有多少门票可用,当用户购买它时,您可以创建一个门票,或者类似的东西。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10644369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档