2013-06-25 4 views
0
public class EntParent{ 
@OneToMany 
List<Ent1> manyEnt1; 
} 



public class Ent1 { 

Field1 
Field2 

@ManyToOne 
EntParent dad; 

getField1 
setField1 

getField2 
setField2 

getDad 
setDad 

} 


public class Ent1ManagerEJB{ 


} 

в этом сценарии, который (ent1 или Ent1ManagerEJB или EntParent) должны иметь методы для выполнения следующегоМетоды EJB против методов сущности, у кого должны быть какие методы?

1) манипулировании полями в Ent1

2) выборки полого Ent1 с некоторой логикой

3) Извлеките еще одну Сущность в зависимости от некоторой логики, которая работает с значениями полей в Ent1, если EntParent и отображения отсутствуют

4) Извлеките другую Сущность в зависимости от некоторой логики, которая работает на val ЕЭС полей в Ent1, если Ent1 в @OneToMany отображения с каким-либо другим Entity eg EntParent contains Ent1 in array

также, если возможно, указывают на какой-то ресурс, который учит меня о таких паттернов/проблем ..

ответ

0

объекты домена представляют собой важные понятия в целевой области и поэтому часто должны быть постоянными. API Java Persistence API (JPA) оказывается достаточно гибким для отображения объектов богатого домена в реляционные таблицы. Чем сложнее логика, которую вам нужно реализовать, тем легче поддерживать и развивать объектно-ориентированное настойчивость.

Реальная проблема со сложной логикой, реализуемой с анемичными структурами, - это различия типов в сервисном слое. Для различения типов объектов могут потребоваться массивные if-утверждения. Каждое введение нового подкласса или даже изменение существующей бизнес-логики требует, чтобы вы находили, улучшали и проверяли эти проверки типов.

                  Admam Bien 

вы можете воспользоваться концепциями "Домен-Driven Design", который Адам Bien говорил в своей статье:

http://www.javaworld.com/javaworld/jw-05-2009/jw-05-domain-driven-design.html?page=2?