Samm -sammult Hibernate Tomcat MySQL Treening

Püsivad andmeobjektid on oluline osa enamik tarkvara . Chad Baker / Photodisc / Getty Images

Hibernate on avatud lähtekoodiga raamistik, mis toetab püsimine keskmise astme andmeobjektid kirjutatud Java.Keset astme objekti on üksuse programmi kood, mis elab tarkvara arhitektuur kihi vahel kasutajaliidese ja andmete poest.Sageli andmehoidlal on relatsiooniline andmebaas, nagu MySQL, kuid see võib olla ka vormindatud teksti faili.Keset astme andmeobjektid pakkuda mugavam kirjutada kõrgema taseme loogika manipuleerida ja kasutada taotluse andmed.Samuti võimaldavad aluseks salvestamise mehhanism muuta nõudmata muudatusi kood suurema arhitektuurilise kihid.Konfigureerimine Apache Tomcat rakenduse raamistikku lisada Hibernate on lihtne protsess, kui sul on eelinstallitud vajalikke komponente.

, mida te vajate

  • paigaldatud Apache Tomcat taotluse server ja oma sõltuvusi, sealhulgas Java komponendid
  • paigaldatud MySQL andmebaasi
  • Paigaldatud Hibernate
  • paigaldatud Apache Ant
  • Tekstiredaktor

Connect MySQL Apache

  1. Lae Connector / J,Java Database Connectivity (JDBC) Connector MySQL andmebaasi.

  2. Väljavõte Connector / J jar faili, et "WEB-INF / lib" kataloog, kus oma Tomcat ja talveuni raamatukogud elada.

  3. Loo "klassi" kataloog ja "tunnid / src" kataloog hoidke oma Java teksti lähtekoodi failid WEB-INF kataloog.Sinu ant ehitada skript loob "tunnid / bin" kataloog hoida binaarobjektid toodetud teie allikas selles samas kataloogis.

  4. Loo build.xml faili Apache Ant täitma põhilisi toiminguid vaja koguda ja kasutada Java programm.Iga nimega käsk on määramata võib nimetada iseseisvalt, kuid ka nemad moodustavad hierarhia sõltuvused, et saavutada kõrgem tase eesmärk.Ülim lõppsiht on "run" programmi, mis sõltub koostamisel pärast vajalikud failid kopeeritakse ja vanemad koostatud objekte kustutatakse.

    & lt; projekti name = "hibernate-to-sql" default = "koostama" & gt;

    & amp; lt; vara name = "sourcedir" value = "WEB-INF / tunnid / src" / & gt;

    & amp; lt; vara name = "targetdir" value = "WEB-INF / tunnid / bin" / & gt;

    & amp; lt; vara name = "librarydir" value = "WEB-INF / lib" / & gt;

    & amp; lt; teele id = "raamatukogud" & gt;

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

    & amp; lt; hulka name = "*. Purgi" / & gt;

    & amp; lt; / fileset & gt;

    & amp; lt; / tee & gt;

    & amp; lt; sihtmärk name = "puhas" & gt;

    & amp; lt; kustutada dir = "$ {targetdir}" / & gt;

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

    & amp; lt; / target & gt;

    & amp; lt; sihtmärk name = "koostama" sõltub = "puhas, kopeeri ressursid" & gt;

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

    sihtkataloog = "$ {targetdir}"

    classpathref = "raamatukogud" & gt;

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

    & amp; lt; / javac & gt;

    & amp; lt; / target & gt;

    & amp; lt; sihtmärk name = "koopia ressursid" & gt;

    & amp; lt; kopeerida todir = "$ {targetdir}" & gt;

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

    & amp; lt; välista name = "** / *. Java" / & gt;

    & amp; lt; / fileset & gt;

    & amp; lt; / kopeerida & gt;

    & amp; lt; / target & gt;

    & amp; lt; sihtmärk name = "run" sõltub = "koostama" & gt;

    & amp; lt; java kahvel = "true" classname = "events.EventManager" classpathref = "raamatukogud" & gt;

    & amp; lt; classpath path = "$ {targetdir}" / & gt;

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

    & amp; lt; / java & gt;

    & amp; lt; / target & gt;

    & lt; / projekti & gt;

seadistamine Hibernate

  1. luua MySQL andmebaasi kasutaja nimi ja parool, mis on root.See näide eeldab, et andmebaasi nimi on "hibernate" kasutaja nimi "uname" ja parool "mypwd."

  2. Loo tekstifail nimega hibernate.cfg.xml oma src kataloogi.Alusta luues põhilised XML kest, kuhu sa kirjutada oma erikoosseisudes:

    & lt;! DOCTYPE talveunne-konfiguratsiooni AVALIK

    - // Hibernate / Hibernate Configuration DTD // EN

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

    & lt; talveunne-konfiguratsiooni & gt;

    & amp; lt; seansi tehase & gt;

    & amp; lt; / session-tehase & gt;

    & lt; / hibernate-konfiguratsiooni & gt;

  3. Lisa järgmised read istungil tehase element seadistada MySQL andmebaasi, esitades vastava andmebaasi nimi, kasutajanimi ja parool:

    & lt; seansi tehase & gt;

    & amp; lt;! - Seadista MySQL - & gt;

    & amp; lt; vara name = "connection.URL" & gt; JDBC: mysql: // localhost / hibernate & amp; lt; / kinnisvara & gt;

    & amp; lt; vara name = "connection.username" & gt; uname & amp; lt; / kinnisvara & gt;

    & amp; lt; vara name = "connection.password" & gt; mypwd & amp; lt; / kinnisvara & gt;

    & amp; lt; vara name = "connection.driver_class" & gt; com.mysql.jdbc.Driver & amp; lt; / kinnisvara & gt;

    & amp; lt; vara name = "murre" & gt; org.hibernate.dialect.MySQLDialect & amp; lt; / kinnisvara & gt;

    & lt; / session-tehase & gt;

  4. Lisa konfiguratsiooni C3P0 ühendus bassein pakett, mis sisaldab endas Hibernate, lisades järgmised read istungil tehase element:

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

    & lt; vara name = "c3p0.min_size" & gt; 3 & lt; / kinnisvara & gt;

    & lt; vara name = "c3p0.max_size" & gt; 5 & lt; / kinnisvara & gt;

    & lt; vara name = "c3p0.timeout" & gt; 1800 & lt; / kinnisvara & gt;

    & lt; vara name = "current_session_context_class" & gt; thread & lt; / kinnisvara & gt;

  5. Keela Hibernate teise taseme vahemälu, et vältida võimalikke sünkroniseerimise küsimused kasutamisel koos Tomcat:

    & lt;! - Keela teise taseme vahemälu.- & gt;

    & lt; vara name = "cache.provider_class" & gt; org.hibernate.cache.NoCacheProvider & lt; / kinnisvara & gt;

    & lt; vara name = "cache.use_query_cache" & gt; false & lt; / kinnisvara & gt;

    & lt; vara name = "cache.use_minimal_puts" & gt; false & lt; / kinnisvara & gt;

    & lt; vara name = "max_fetch_depth" & gt; 3 & lt; / kinnisvara & gt;

  6. Set järgmised omadused, mis võimaldab teil testida oma konfiguratsiooni:

    & lt;! - Print SQL standard väljund ja uuesti, kui hoone - & gt;

    & lt; vara name = "show_sql" & gt; true & lt; / kinnisvara & gt;

    & lt; vara name = "format_sql" & gt; true & lt; / kinnisvara & gt;

    & lt; vara name = "hbm2ddl.auto" & gt; luua & lt; / kinnisvara & gt;

Loo Java klassi Katsetamise

  1. Kirjutage lihtne Java klassi ja säästa oma paketi kataloogi kataloogi.Selle näiteks klassi failinime MyClass.java on src / com / eHow / yourname kataloog:

    pakett com.ehow.yourname;/ asendada oma nime ja domeeni /

    import java.util.Date;

    public class MyClass {

    era- Long id;/ * Kordumatu tunnus teie objekti * /

    erasektori String myProperty;

    avaliku Long getId () {

    tagastamise id;

    }

    public void setId (Long id) {

    this.id = id;

    }

    avaliku String getMyProperty () {

    tagasi this.myProperty;

    }

    public void setMyProperty (String prop) {

    this.myProperty = prop;

    }

    }

  2. Loo MyClass.hbm.xml fail paketi kataloogi, kuhu on salvestatud seotud MyClass.java faili.Loo vara element kõik oma MyClass andmeid kohal, mis salvestatakse andmebaasi tabelisse nimega myclass:

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

    & lt;! DOCTYPE talveunne kaardistamise AVALIK

    "- // Hibernate / Hibernate Mapping DTD 3.0 // EN"

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

    & lt; talveunne kaardistamise & gt;

    & amp; lt; class name = "com.ehow.yourname.MyClass" table = "myclass" & gt;

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

    & amp; lt; generaator class = "juurdekasvu" / & gt;

    & amp; lt; / id & gt;

    & amp; lt; vara name = "myProperty" / & gt;

    & amp; lt; / klassi & gt;

    & lt; / hibernate kaardistamise & gt;

  3. Lisa kannet istungil tehasest osa oma xml faili seostada oma MyClass kaardistamine konfiguratsioonifaili Hibernate:

    & lt;! - Mapping Files - & gt;

    & lt; kaardistamine ressurss = "com.ehow.yourname.MyClass.hbm.xml" / & gt;

  4. Käivita oma ant ehitada faili.Kui ei ole vigu, peaksite nägema, et uus rekord on lisanud oma MySQL andmebaasi:

    $ ant perspektiivis

    Buildfile: build.xml

Start Hibernate

  1. Ehitamine abimees klassi rakendadaistungil tehases ja salvestage see HibernateUtil.java oma "WEB-INF / kursused" kataloog.Import oma pakett ning luua põhiülesanne seadistuste testimiseks:

    import org.hibernate.SessionFactory;

    import org.hibernate.Session;

    import org.hibernate.Transaction;

    import org.hibernate.cfg.Configuration;

    import com.ehow.yourname.MyPackage;/ Katsetamiseks vajalik funktsioon ainult /

    public class HibernateUtil {

    era- staatiline lõplik SessionFactory sessionFactory;

    staatiline {

    proovida {

    // Vorminda tehases, kasutades sisu hibernate.cfg.xml

    sessionFactory = new Configuration (). Konfigureerida (). BuildSessionFactory ();

    } catch (Throwable ex) {

    System.err.println ("Initial SessionFactory loomine ebaõnnestus." + Ex);

    heita ExceptionInInitializerError (ex);

    }

    }

    public static SessionFactory getSessionFactory () {

    tagasi sessionFactory;

    }

    public static void main (String [] args) {

    MyClass mycls = new MyClass ();

    / * ID väljale automaatselt juurdekasvu unikaalne väärtus, mis eristavad arvestust * /

    mycls.setMyProperty ("Minu Vara");

    Session istungil = getSession ();

    Tehing tehingu = session.beginTransaction ();

    session.save (blog);

    transaction.Commit ();/ * Kui see test õnnestub, leiad uue rekordi oma MySQL andmebaasi * /

    }

    }

  2. Ehitamine kuulaja klassi, mis hakkab Hibernate ja hallata püsimine oma kaardistatud andmeid klassid.Säästa klassi kui HibernateListener.java oma "WEB-INF / kursused" kataloog:

    public class HibernateListener rakendab ServletContextListener {

    public void contextInitialized (ServletContextEvent korral) {

    HibernateUtil.getSessionFactory ();// Luua tehases

    }

    public void contextDestroyed (ServletContextEvent korral) {

    HibernateUtil.getSessionFactory (). Lähedaste ();// Vabad vahendid

    }

    }

  3. Lisa järgmine rida web.xml faili veebi-INF kataloog.See siduda oma kuulaja klassi oma avalduses:

    & lt; kuulaja & gt;

    & amp; lt; kuulaja-klassi & gt; com.ehow.yourname.HibernateListener & amp; lt; / kuulaja-klassi & gt;

    & lt; / kuulaja & gt;

  4. In konsooliaknast tüüp "ant run" täitmiseks ant script.

309
0
3
Php / My Sql Programmeerimine