|
|
|
Hibernate + Session
|
|||
|---|---|---|---|
|
#18+
по поводу закрытия сессии тут код простой вроде, стандартные POJO классы Customer и CustomerWebContact сгенерированые IDE... (ну там с гет/сет методами) на счет связи - сгенерировано вот так: private java.util.Set customerWebContactSet; public java.util.Set getCustomerWebContactSet() { return this.customerWebContactSet; } public void setCustomerWebContactSet(java.util.Set customerWebContactSet) { this.customerWebContactSet = customerWebContactSet; } в маппингах так написано: <?xml version="1.0" encoding='UTF-8'?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" > <class name="Customer" table="customer"> <id name="customerId" column="CUSTOMER_ID" type="java.lang.Integer"> <generator class="native"/> </id> ... ... ... <set name="customerWebContactSet" inverse="true" lazy="true" > <key column="CUSTOMER_ID"/> <one-to-many class="com.chooseyourgoose.persistence.model.CustomerWebContact"/> </set> ... ... ... </hibernate-mapping> _____________________________________________________________________ <?xml version="1.0" encoding='UTF-8'?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" > <class name="CustomerWebContact" table="customer_web_contact"> <id name="customerWebContactId" column="CUSTOMER_WEB_CONTACT_ID" type="java.lang.Integer"> <generator class="native"/> </id> <property name="numName" column="NUM_NAME" type="java.lang.String" /> <property name="otherWebContactDetails" column="OTHER_WEB_CONTACT_DETAILS" type="java.lang.String" /> <property name="webContactType" column="WEB_CONTACT_TYPE" type="java.lang.Short" /> <many-to-one name="customer" column="CUSTOMER_ID" class="com.chooseyourgoose.persistence.model.Customer" not-null="true" /> </class> </hibernate-mapping> _____________________________________________________________________ вот, проблема такая: Customer theCustomer = new Customer(); theCustomer = theCustomerManager.getCustomer(customer_id); //Это РАБОТАЕТ корректно, в theCustomer действительно то, что должно быть. Set result = theCustomer.getCustomerWebContactSet(); //тут тоже все ОК но далее я не могу сделать допустим так: System.out.println(result.size()); т.к. ексэпшп - сессия закрыта... 8-( З.Ы. Я очень извиняюсь за стиль написания, который неудобно читать... Еще не разобрался как на форуме в рамочки все красиво оформлять... 8-) хочется побыстрее решить проблему ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2006, 16:25 |
|
||
|
Hibernate + Session
|
|||
|---|---|---|---|
|
#18+
Рецепт не на все случаи жизни и все же: если веб апплихкуха - закрывай хибернейт сессии в конце реквеста. Используй для этой цели фильтр. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2006, 17:35 |
|
||
|
|

start [/forum/topic.php?fid=59&startmsg=33549719&tid=2150167]: |
0ms |
get settings: |
12ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
88ms |
get topic data: |
12ms |
get forum data: |
7ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 236ms |
| total: | 432ms |

| 0 / 0 |
