<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java%2FHibernate%2FHibernate_Session</id>
		<title>Java/Hibernate/Hibernate Session - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java%2FHibernate%2FHibernate_Session"/>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java/Hibernate/Hibernate_Session&amp;action=history"/>
		<updated>2026-04-23T02:03:03Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java/Hibernate/Hibernate_Session&amp;diff=7859&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java/Hibernate/Hibernate_Session&amp;diff=7859&amp;oldid=prev"/>
				<updated>2010-06-01T06:51:18Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 06:51, 1 июня 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java/Hibernate/Hibernate_Session&amp;diff=7858&amp;oldid=prev</id>
		<title> в 18:01, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java/Hibernate/Hibernate_Session&amp;diff=7858&amp;oldid=prev"/>
				<updated>2010-05-31T18:01:45Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Session Disconnect And Reconnect ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
/////////////////////////////////////////////////////////////////////////&lt;br /&gt;
import java.util.*;&lt;br /&gt;
import java.sql.*;&lt;br /&gt;
import org.hibernate.*;&lt;br /&gt;
import org.hibernate.cfg.*;&lt;br /&gt;
import org.hibernate.criterion.*;&lt;br /&gt;
public class Main {&lt;br /&gt;
  &lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    HibernateUtil.setup(&amp;quot;create table Supplier ( id int, name VARCHAR);&amp;quot;);&lt;br /&gt;
    HibernateUtil.setup(&amp;quot;create table Product ( id int, name VARCHAR, description VARCHAR, price double,supplierId int);&amp;quot;);&lt;br /&gt;
    &lt;br /&gt;
    prepareData();&lt;br /&gt;
        SessionFactory factory = new Configuration().configure().buildSessionFactory();&lt;br /&gt;
        Session session = factory.openSession();&lt;br /&gt;
        Query query = session.createQuery(&amp;quot;from Product order by name&amp;quot;);&lt;br /&gt;
        List list = query.list();&lt;br /&gt;
        Iterator i = list.iterator();&lt;br /&gt;
        while(i.hasNext()) {&lt;br /&gt;
           Product p = (Product)i.next();&lt;br /&gt;
           System.out.println(p.getName());&lt;br /&gt;
        }&lt;br /&gt;
        System.out.println(&amp;quot;Step 1.&amp;quot;);&lt;br /&gt;
        //session.close();&lt;br /&gt;
        &lt;br /&gt;
        session.disconnect();&lt;br /&gt;
        session.reconnect();&lt;br /&gt;
        query = session.createQuery(&amp;quot;from Product order by name&amp;quot;);&lt;br /&gt;
        list = query.list();&lt;br /&gt;
        i = list.iterator();&lt;br /&gt;
        while(i.hasNext()) {&lt;br /&gt;
           Product p = (Product)i.next();&lt;br /&gt;
           System.out.println(p.getName());&lt;br /&gt;
        }&lt;br /&gt;
        System.out.println(&amp;quot;Step 2.&amp;quot;);&lt;br /&gt;
    &lt;br /&gt;
        HibernateUtil.checkData(&amp;quot;select * from Supplier&amp;quot;);&lt;br /&gt;
        HibernateUtil.checkData(&amp;quot;select * from Product&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
    static public void displaySupplierList(List list) {&lt;br /&gt;
        Iterator iter = list.iterator();&lt;br /&gt;
        if (!iter.hasNext()) {&lt;br /&gt;
            System.out.println(&amp;quot;No suppliers to display.&amp;quot;);&lt;br /&gt;
            return;&lt;br /&gt;
        }        &lt;br /&gt;
        while (iter.hasNext()) {&lt;br /&gt;
            Supplier supplier = (Supplier) iter.next();&lt;br /&gt;
            String msg = supplier.getName();&lt;br /&gt;
            System.out.println(msg);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
  private static void prepareData(){&lt;br /&gt;
        Session session = HibernateUtil.currentSession();&lt;br /&gt;
        Supplier supplier1 = new Supplier();&lt;br /&gt;
        supplier1.setName(&amp;quot;Supplier Name 1&amp;quot;);&lt;br /&gt;
        session.save(supplier1);&lt;br /&gt;
        &lt;br /&gt;
        Supplier supplier2 = new Supplier();&lt;br /&gt;
        supplier2.setName(&amp;quot;Supplier Name 2&amp;quot;);&lt;br /&gt;
        session.save(supplier2);        &lt;br /&gt;
        &lt;br /&gt;
        Product product1 = new Product(&amp;quot;Product 1&amp;quot;,&amp;quot;Name for Product 1&amp;quot;, 2.0);&lt;br /&gt;
        product1.setSupplier(supplier1);&lt;br /&gt;
        supplier1.getProducts().add(product1);&lt;br /&gt;
        session.save(product1);&lt;br /&gt;
        &lt;br /&gt;
        Product product12 = new Product(&amp;quot;Product 2&amp;quot;,&amp;quot;Name for Product 2&amp;quot;, 22.0);&lt;br /&gt;
        product12.setSupplier(supplier1);&lt;br /&gt;
        supplier1.getProducts().add(product12);        &lt;br /&gt;
        session.save(product12);&lt;br /&gt;
        &lt;br /&gt;
        Product product2 = new Product(&amp;quot;Product 3&amp;quot;, &amp;quot;Name for Product 3&amp;quot;, 30.0);&lt;br /&gt;
        product2.setSupplier(supplier2);&lt;br /&gt;
        supplier2.getProducts().add(product2);&lt;br /&gt;
        session.save(product2);&lt;br /&gt;
        &lt;br /&gt;
        session.flush();&lt;br /&gt;
        HibernateUtil.closeSession();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/////////////////////////////////////////////////////////////////////////&lt;br /&gt;
public class Product&lt;br /&gt;
{&lt;br /&gt;
    private int id;&lt;br /&gt;
    private Supplier supplier;&lt;br /&gt;
    &lt;br /&gt;
    private String name;&lt;br /&gt;
    private String description;&lt;br /&gt;
    private double price;&lt;br /&gt;
    &lt;br /&gt;
    public Product()&lt;br /&gt;
    {&lt;br /&gt;
        super();&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    public Product(String name, String description, double price)&lt;br /&gt;
    {&lt;br /&gt;
        super();&lt;br /&gt;
        this.name = name;&lt;br /&gt;
        this.description = description;&lt;br /&gt;
        this.price = price;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    public String getDescription()&lt;br /&gt;
    {&lt;br /&gt;
        return description;&lt;br /&gt;
    }&lt;br /&gt;
    public void setDescription(String description)&lt;br /&gt;
    {&lt;br /&gt;
        this.description = description;&lt;br /&gt;
    }&lt;br /&gt;
    public int getId()&lt;br /&gt;
    {&lt;br /&gt;
        return id;&lt;br /&gt;
    }&lt;br /&gt;
    public void setId(int id)&lt;br /&gt;
    {&lt;br /&gt;
        this.id = id;&lt;br /&gt;
    }&lt;br /&gt;
    public String getName()&lt;br /&gt;
    {&lt;br /&gt;
        return name;&lt;br /&gt;
    }&lt;br /&gt;
    public void setName(String name)&lt;br /&gt;
    {&lt;br /&gt;
        this.name = name;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    public Supplier getSupplier()&lt;br /&gt;
    {&lt;br /&gt;
        return supplier;&lt;br /&gt;
    }&lt;br /&gt;
    public void setSupplier(Supplier supplier)&lt;br /&gt;
    {&lt;br /&gt;
        this.supplier = supplier;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    public double getPrice()&lt;br /&gt;
    {&lt;br /&gt;
        return price;&lt;br /&gt;
    }&lt;br /&gt;
    public void setPrice(double price)&lt;br /&gt;
    {&lt;br /&gt;
        this.price = price;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/////////////////////////////////////////////////////////////////////////&lt;br /&gt;
import java.util.ArrayList;&lt;br /&gt;
import java.util.List;&lt;br /&gt;
public class Supplier&lt;br /&gt;
{&lt;br /&gt;
    private int id;&lt;br /&gt;
    private String name;&lt;br /&gt;
    private List products = new ArrayList();&lt;br /&gt;
    &lt;br /&gt;
    public int getId()&lt;br /&gt;
    {&lt;br /&gt;
        return id;&lt;br /&gt;
    }&lt;br /&gt;
    public void setId(int id)&lt;br /&gt;
    {&lt;br /&gt;
        this.id = id;&lt;br /&gt;
    }&lt;br /&gt;
    public String getName()&lt;br /&gt;
    {&lt;br /&gt;
        return name;&lt;br /&gt;
    }&lt;br /&gt;
    public void setName(String name)&lt;br /&gt;
    {&lt;br /&gt;
        this.name = name;&lt;br /&gt;
    }&lt;br /&gt;
    public List getProducts()&lt;br /&gt;
    {&lt;br /&gt;
        return products;&lt;br /&gt;
    }&lt;br /&gt;
    public void setProducts(List products)&lt;br /&gt;
    {&lt;br /&gt;
        this.products = products;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Use Two Sessions ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
/////////////////////////////////////////////////////////////////////////&lt;br /&gt;
import java.util.*;&lt;br /&gt;
import org.hibernate.*;&lt;br /&gt;
import org.hibernate.criterion.*;&lt;br /&gt;
public class Main {&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    HibernateUtil.setup(&amp;quot;create table EVENTS ( uid int, name VARCHAR, start_Date date, duration int);&amp;quot;);&lt;br /&gt;
    &lt;br /&gt;
    // hibernate code start&lt;br /&gt;
        HibernateFactory.buildSessionFactory();&lt;br /&gt;
        Session session = HibernateFactory.openSession();&lt;br /&gt;
        Session session2 = HibernateFactory.openSession();&lt;br /&gt;
        Event event = new Event();&lt;br /&gt;
        event.setName(&amp;quot;Name&amp;quot;);&lt;br /&gt;
        session.save(event);&lt;br /&gt;
        session.flush();&lt;br /&gt;
        Event event2 = (Event) session2.load(Event.class, event.getId());&lt;br /&gt;
        System.out.println(event2.getName());&lt;br /&gt;
        &lt;br /&gt;
        HibernateUtil.checkData(&amp;quot;select uid, name from events&amp;quot;);        &lt;br /&gt;
    // hibernate code end&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/////////////////////////////////////////////////////////////////////////&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE hibernate-mapping PUBLIC&lt;br /&gt;
        &amp;quot;-//Hibernate/Hibernate Mapping DTD 3.0//EN&amp;quot;&lt;br /&gt;
        &amp;quot;http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;hibernate-mapping &amp;gt;&lt;br /&gt;
    &amp;lt;class name=&amp;quot;Event&amp;quot; table=&amp;quot;events&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;id name=&amp;quot;id&amp;quot; column=&amp;quot;uid&amp;quot; type=&amp;quot;long&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;generator class=&amp;quot;increment&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/id&amp;gt;&lt;br /&gt;
        &amp;lt;property name=&amp;quot;name&amp;quot; type=&amp;quot;string&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;property name=&amp;quot;startDate&amp;quot; column=&amp;quot;start_date&amp;quot; type=&amp;quot;date&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;property name=&amp;quot;duration&amp;quot; type=&amp;quot;integer&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/class&amp;gt;&lt;br /&gt;
&amp;lt;/hibernate-mapping&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/////////////////////////////////////////////////////////////////////////&lt;br /&gt;
import java.io.Serializable;&lt;br /&gt;
import java.util.Date;&lt;br /&gt;
import java.util.Set;&lt;br /&gt;
import java.util.LinkedHashSet;&lt;br /&gt;
public class Event implements Serializable {&lt;br /&gt;
    private Long id;&lt;br /&gt;
    private int duration;&lt;br /&gt;
    private String name;&lt;br /&gt;
    private Date startDate;&lt;br /&gt;
    public Event() {&lt;br /&gt;
    }&lt;br /&gt;
    public Event(String name) {&lt;br /&gt;
        this.name = name;&lt;br /&gt;
    }&lt;br /&gt;
    /**&lt;br /&gt;
     * @hibernate.id generator-class=&amp;quot;native&amp;quot; column=&amp;quot;uid&amp;quot;&lt;br /&gt;
     * @return&lt;br /&gt;
     */&lt;br /&gt;
    public Long getId() { return id; }&lt;br /&gt;
    public void setId(Long id) { this.id = id; }&lt;br /&gt;
    /**&lt;br /&gt;
     * @hibernate.property column=&amp;quot;name&amp;quot;&lt;br /&gt;
     * @return&lt;br /&gt;
     */&lt;br /&gt;
    public String getName() { return name; }&lt;br /&gt;
    public void setName(String name) { this.name = name;   }&lt;br /&gt;
    /**&lt;br /&gt;
     * @hibernate.property column=&amp;quot;start_date&amp;quot;&lt;br /&gt;
     * @return&lt;br /&gt;
     */&lt;br /&gt;
    public Date getStartDate() { return startDate; }&lt;br /&gt;
    public void setStartDate(Date startDate) { this.startDate = startDate; }&lt;br /&gt;
    /**&lt;br /&gt;
     * @hibernate.property column=&amp;quot;duration&amp;quot;&lt;br /&gt;
     * @return&lt;br /&gt;
     */&lt;br /&gt;
    public int getDuration() { return duration; }&lt;br /&gt;
    public void setDuration(int duration) { this.duration = duration; }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/////////////////////////////////////////////////////////////////////////&lt;br /&gt;
/**&lt;br /&gt;
 * Represents Exceptions thrown by the Data Access Layer.&lt;br /&gt;
 */&lt;br /&gt;
public class DataAccessLayerException extends RuntimeException {&lt;br /&gt;
    public DataAccessLayerException() {&lt;br /&gt;
    }&lt;br /&gt;
    public DataAccessLayerException(String message) {&lt;br /&gt;
        super(message);&lt;br /&gt;
    }&lt;br /&gt;
    public DataAccessLayerException(Throwable cause) {&lt;br /&gt;
        super(cause);&lt;br /&gt;
    }&lt;br /&gt;
    public DataAccessLayerException(String message, Throwable cause) {&lt;br /&gt;
        super(message, cause);&lt;br /&gt;
    }&lt;br /&gt;
}           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>