powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Hibernate + Session
3 сообщений из 28, страница 2 из 2
Hibernate + Session
    #33549719
Макарон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
по поводу закрытия сессии

тут код простой вроде, стандартные 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-) хочется побыстрее решить проблему
...
Рейтинг: 0 / 0
Hibernate + Session
    #33549988
Andrew Bykov_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Рецепт не на все случаи жизни и все же:
если веб апплихкуха - закрывай хибернейт сессии в конце реквеста.
Используй для этой цели фильтр.
...
Рейтинг: 0 / 0
Hibernate + Session
    #33550835
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrew Bykov_

imho лучше использовать для этого CallbackTemplate (см. реализацию подобного в Spring)
...
Рейтинг: 0 / 0
3 сообщений из 28, страница 2 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Hibernate + Session
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]