Step-by - Step Hibernate Tomcat MySQL opetusohjelma

Pysyvät datan osat ovat olennainen osa useimmissa ohjelmissa . Tšad Baker / Photodisc / Getty Images

Hibernate on avoimen lähdekoodin puitteet joka tukee pysyvyys keskimmäisen tason dataobjektit Javalla.Keskimmäisen tason esine on yksikkö ohjelmakoodia, joka asuu ohjelmistoarkkitehtuurin kerroksen välillä käyttöliittymä ja tietovarasto.Usein tietovaraston on relaatiotietokanta, kuten MySQL, mutta se voi myös olla muotoiltu tekstitiedosto.Keskimmäisen tason dataobjekteja tarjota kätevä tapa kirjoittaa korkeamman tason logiikka manipuloida ja käyttää sovellusta tiedot.Ne mahdollistavat myös taustalla varastointi mekanismi muuttaa ilman muutoksia koodiin suuremmilla arkkitehtuurin kerroksia.Määrittäminen Apachen Tomcat hakemus järjestelmään sisällytetään Hibernate on yksinkertainen prosessi, kun olet esiasennettu tarvittavat komponentit.

mitä tarvitset

  • Asennettu Apache Tomcat sovelluspalvelin ja sen riippuvuudet, kuten Java komponentit
  • Asennettu MySQL-tietokannan
  • Asennettu Hibernate
  • Asennettu Apache Ant
  • tekstieditori

Yhdistä MySQL Apache

  1. Lataa Connector / J,Java Database Connectivity (JDBC) Liitin MySQL-tietokantaan.

  2. Pura Connector / J .jar tiedosto on "WEB-INF / lib" hakemistoon missä Tomcat ja Hibernate kirjastot asuvat.

  3. Luo "luokkiin" hakemistoon ja "luokat / src" -hakemiston Java tekstin lähdekoodi tiedostot WEB-INF-hakemistoon.Sinun muurahainen rakentaa skripti luo "luokkia / bin" -hakemiston binary esineitä tuotettu lähde tässä samassa hakemistossa.

  4. Luo build.xml tiedoston Apache Ant suorittaa perustoimintoja tarvitaan kääntää ja ajaa Java-ohjelma.Jokainen nimetty komento määritetty voidaan kutsua itsenäisesti, mutta ne myös muodostavat hierarkian riippuvuuksia että saavuttaa korkeampi tavoite.Lopullinen päämäärä tavoitteena on "ajaa" ohjelma, joka riippuu koota jälkeen tarvittavat tiedostot on kopioitu ja vanhemmat koottu esineet poistetaan.

    & lt; projektin nimi = "hibernate-to-sql" default = "koota" & gt;

    & amp; lt; ominaisuuden nimi = "sourcedir" value = "WEB-INF / classes / src" / & gt;

    & amp; lt; ominaisuuden nimi = "TARGETDIR" value = "WEB-INF / classes / bin" / & gt;

    & amp; lt; ominaisuuden nimi = "librarydir" value = "WEB-INF / lib" / & gt;

    & amp; lt; polku id = "kirjastot" & gt;

    & amp; lt; fileset dir = "$ {librarydir}" & gt;

    & amp; lt; sisältää name = "*. Jar" / & gt;

    & amp; lt; / fileset & gt;

    & amp; lt; / polku & gt;

    & amp; lt; tavoite name = "puhdas" & gt;

    & amp; lt; poistaa dir = "$ {TARGETDIR}" / & gt;

    & amp; lt; mkdir dir = "$ {TARGETDIR}" / & gt;

    & amp; lt; / kohde & gt;

    & amp; lt; tavoite name = "koota" riippuu = "puhdas, copy-resursseja" & gt;

    & amp; lt; javac srcdir = "$ {sourcedir}"

    destdir = "$ {TARGETDIR}"

    classpathref = "kirjastot" & gt;

    & amp; lt; compilerarg value = "- Xlint" / & gt;

    & amp; lt; / javac & gt;

    & amp; lt; / kohde & gt;

    & amp; lt; tavoite name = "copy-resursseja" & gt;

    & amp; lt; copy todir = "$ {TARGETDIR}" & gt;

    & amp; lt; fileset dir = "$ {sourcedir}" & gt;

    & amp; lt; sulkea name = "** / *. Java" / & gt;

    & amp; lt; / fileset & gt;

    & amp; lt; / kopioi & gt;

    & amp; lt; / kohde & gt;

    & amp; lt; tavoite name = "run" riippuu = "koota" & gt;

    & amp; lt; java haarukka = "true" classname = "events.EventManager" classpathref = "kirjastot" & gt;

    & amp; lt; luokkapolku polku = "$ {TARGETDIR}" / & gt;

    & amp; lt; arg value = "$ {toiminta}" / & gt;

    & amp; lt; / java & gt;

    & amp; lt; / kohde & gt;

    & lt; / hankkeen & gt;

Määritä Hibernate

  1. Luo MySQL-tietokannan kanssa käyttäjätunnus ja salasana, jolla on pääkäyttäjän oikeudet.Tässä esimerkissä oletetaan, että tietokannan nimi on "lepotilaan" käyttäjätunnuksella "uname" ja salasana "mypwd."

  2. Luo tekstitiedosto nimeltä hibernate.cfg.xml teidän src hakemistoon.Aloita luomalla perus XML kuori, johon voit kirjoittaa sinun kokoonpanoissa:

    & lt;! DOCTYPE lepotilaan-kokoonpano JULKISEN

    - // Lepotila / Horrostila Configuration DTD // FI

    http://hibernate.sourceforge.net/hibernatekonfiguraatiossa-3.0.dtd & gt;

    & lt; lepotilaan-kokoonpano & gt;

    & amp; lt; istunto-tehdas & gt;

    & amp; lt; / kerta-tehdas & gt;

    & lt; / hibernate-kokoonpano & gt;

  3. Lisää seuraavat rivit istunto-tehdas elementti määrittää MySQL-tietokannan, toimittamalla asianmukaiset tietokannan nimi, käyttäjätunnus ja salasana:

    & lt; istunto-tehdas & gt;

    & amp; lt;! - Määritä MySQL - & gt;

    & amp; lt; ominaisuuden nimi = "connection.URL" & gt; jdbc: mysql: // localhost / lepotilassa & amp; lt; / kiinteistö & gt;

    & amp; lt; ominaisuuden nimi = "connection.username" & gt; uname & amp; lt; / kiinteistö & gt;

    & amp; lt; ominaisuuden nimi = "connection.password" & gt; mypwd & amp; lt; / kiinteistö & gt;

    & amp; lt; ominaisuuden nimi = "connection.driver_class" & gt; com.mysql.jdbc.Driver & amp; lt; / kiinteistö & gt;

    & amp; lt; ominaisuuden nimi = "murre" & gt; org.hibernate.dialect.MySQLDialect & amp; lt; / kiinteistö & gt;

    & lt; / kerta-tehdas & gt;

  4. Lisää kokoonpano C3P0 yhteys altaan paketti, joka jaetaan Hibernate lisäämällä seuraavat rivit istunto-tehdas elementti:

    & lt;! - C3P0 Connection Pool - & gt;

    & lt; ominaisuuden nimi = "c3p0.min_size" & gt; 3 & lt; / kiinteistö & gt;

    & lt; ominaisuuden nimi = "c3p0.max_size" & gt; 5 & lt; / kiinteistö & gt;

    & lt; ominaisuuden nimi = "c3p0.timeout" & gt; 1800 & lt; / kiinteistö & gt;

    & lt; ominaisuuden nimi = "current_session_context_class" & gt; kierre & lt; / kiinteistö & gt;

  5. Poista Hibernate toiseksi tason välimuisti voidaan välttää mahdolliset synkronointi kysymyksiä käytettäessä kanssa Tomcat:

    & lt;! - Poista toisen tason välimuisti.- & Gt;

    & lt; ominaisuuden nimi = "cache.provider_class" & gt; org.hibernate.cache.NoCacheProvider & lt; / kiinteistö & gt;

    & lt; ominaisuuden nimi = "cache.use_query_cache" & gt; vääriä & lt; / kiinteistö & gt;

    & lt; ominaisuuden nimi = "cache.use_minimal_puts" & gt; vääriä & lt; / kiinteistö & gt;

    & lt; ominaisuuden nimi = "max_fetch_depth" & gt; 3 & lt; / kiinteistö & gt;

  6. Aseta seuraavat ominaisuudet, jotta voit testata kokoonpano:

    & lt;! - Tulosta SQL vakiotulosteeseen ja luo kun rakennus - & gt;

    & lt; ominaisuuden nimi = "show_sql" & gt; totta & lt; / kiinteistö & gt;

    & lt; ominaisuuden nimi = "format_sql" & gt; totta & lt; / kiinteistö & gt;

    & lt; ominaisuuden nimi = "hbm2ddl.auto" & gt; luoda & lt; / kiinteistö & gt;

Luo Java Class testaus

  1. Kirjoita yksinkertainen Java-luokka ja tallentaa paketin hakemistoon hakemistoon.Tässä esimerkissä luokan tiedoston nimi on MyClass.java vuonna src / com / olet lukenut / omanimi hakemistoon:

    paketti com.ehow.yourname;/ vaihda nimesi ja verkkotunnuksen /

    tuonti java.util.Date;

    public class MyClass {

    yksityinen Long id;/ * Yksilöllisen tunnuksen kohde * /

    yksityinen String myProperty;

    julkinen Long getId () {

    paluu id;

    }

    public void setId (Long id) {

    this.id = id;

    }

    public String getMyProperty () {

    palata this.myProperty;

    }

    public void setMyProperty (String potkuri) {

    this.myProperty = potkuri;

    }

    }

  2. Luo MyClass.hbm.xml tiedosto paketin hakemistoon, johon olet tallentanut liittyvät MyClass.java tiedosto.Luo kiinteistö osa kaikkien teidän MyClass tietojen jäsenille, että tallennetaan tietokantaan taulukon nimeltä MyClass:

    & lt;? Xml version = "1.0" encoding = "UTF-8"? & Gt;

    & lt;! DOCTYPE lepotilaan-kartoitus PUBLIC

    "- // Lepotila / Horrostila Mapping DTD 3,0 // FI"

    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" & gt;

    & lt; lepotilaan-kartoitus & gt;

    & amp; lt; luokan nimi = "com.ehow.yourname.MyClass" table = "MyClass" & gt;

    & amp; lt; id name = "id" sarake = "id" type = "java.lang.Long" & gt;

    & amp; lt; generaattori class = "lisäys" / & gt;

    & amp; lt; / id & gt;

    & amp; lt; ominaisuuden nimi = "myProperty" / & gt;

    & amp; lt; / luokka & gt;

    & lt; / hibernate-mapping & gt;

  3. Lisää merkintä istunnon tehtaalla osa sinun .xml tiedoston liittävät MyClass kartoitus asetustiedostoa kanssa Hibernate:

    & lt;! - Mapping tiedostot - & gt;

    & lt; kartoitus voimavara = "com.ehow.yourname.MyClass.hbm.xml" / & gt;

  4. Tee muurahainen rakentaa tiedosto.Jos virheitä ei ole, sinun pitäisi nähdä, että uusi ennätys on lisätty MySQL:

    $ muurahainen nousun

    Buildfile: build.xml

Käynnistä Hibernate

  1. Rakenna auttaja luokka toteuttaaistunto tehdas ja tallentaa sen HibernateUtil.java teidän "WEB-INF / classes" hakemistoon.Tuo paketti ja luoda päätehtävä testata kokoonpano:

    tuonti org.hibernate.SessionFactory;

    tuonti org.hibernate.Session;

    tuonti org.hibernate.Transaction;

    tuonti org.hibernate.cfg.Configuration;

    tuonti com.ehow.yourname.MyPackage;/ vaaditaan testi toiminto vain /

    public class HibernateUtil {

    yksityinen staattinen lopullinen SessionFactory sessionFactory;

    staattinen {

    try {

    // Alusta tehdas käyttäen sisällön hibernate.cfg.xml

    sessionFactory = uusi kokoonpano (). Määritä (). BuildSessionFactory ();

    } catch (Throwable ex) {

    System.err.println ("Alkuperäinen SessionFactory luominen epäonnistui." + Ex);

    heittää uusi ExceptionInInitializerError (ex);

    }

    }

    julkisen staattinen SessionFactory getSessionFactory () {

    palata sessionFactory;

    }

    public static void main (String [] args) {

    MyClass mycls = uusi MyClass ();

    / * id kenttä tulee automaattisesti lisäys on ainutlaatuista arvoa, joka erottaa kirjaa * /

    mycls.setMyProperty ("My Property");

    Session istunto = getSession ();

    Transaction kauppa = session.beginTransaction ();

    session.save (blogi);

    transaction.commit ();/ * Jos tämä testi onnistuu, löydät uuden ennätyksen MySQL-tietokannan * /

    }

    }

  2. Rakenna kuuntelija luokka, joka alkaa Lepotila ja hallita pysyvyys teidän kartoitettu tietojen luokat.Tallenna luokka HibernateListener.java omassa "WEB-INF / classes" hakemistoon:

    public class HibernateListener toteuttaa ServletContextListener {

    public void contextInitialized (ServletContextEvent tapahtuma) {

    HibernateUtil.getSessionFactory ();// Luoda tehdas

    }

    public void contextDestroyed (ServletContextEvent tapahtuma) {

    HibernateUtil.getSessionFactory (). Sulje ();// Vapaita resursseja

    }

    }

  3. Lisää seuraava rivi web.xml tiedosto Web-INF-hakemistoon.Tämä liittää kuunteleva luokan kanssa hakemuksesi:

    & lt; kuuntelija & gt;

    & amp; lt; kuuntelija luokan & gt; com.ehow.yourname.HibernateListener & amp; lt; / kuuntelija-luokka & gt;

    & lt; / kuulija & gt;

  4. Vuonna konsoli ikkuna tyyppi "ANT run" suorittaa muurahainen kirjoitus.

47
0
3
Php / My Sql Ohjelmointi