Passo-a-passo hibernate tomcat mysql tutorial

objetos de dados persistentes são um componente fundamental da maioria dos programas de software.

Hibernate é um framework open-source que suporta a persistência de objetos de dados de camada intermediária escritos em Java. Um objeto de camada intermediária é uma unidade de código de programa que reside na camada de arquitetura de software entre a interface de usuário e o armazenamento de dados. Muitas vezes, o armazenamento de dados é uma base de dados relacional como MySQL, mas também pode ser um ficheiro de texto formatado. Os objetos de dados de camada intermediária fornecem uma maneira conveniente para escrever lógica de nível superior para manipular e utilizar as informações do aplicativo. Eles também permitem que o mecanismo de armazenamento subjacente para mudar sem a necessidade de modificações no código em camadas de arquitetura mais elevados. Configurando estrutura de aplicação Tomcat da Apache para incorporar Hibernate é um processo simples depois de ter pré-instalado os componentes necessários.

Coisas que você precisa

  • Instalado servidor de aplicativos Apache Tomcat e suas dependências, incluindo componentes Java
  • banco de dados mySQL instalado
  • instalado Hibernate
  • Instalado Apache Ant
  • Editor de texto

Conectar o MySQL para Apache

  • Baixar Connector / J, o conector Java Database Connectivity (JDBC) para o banco de dados MySQL.

  • Extraia o arquivo .jar Connector / J para a "WEB-INF / lib" diretório onde as bibliotecas do Tomcat e Hibernate residem.

  • Crie um "aulas" diretório e um "aulas / src" diretório para armazenar seus arquivos de código fonte de texto Java no diretório WEB-INF. O seu script de construção ant criará um "aulas / bin" diretório para manter os objetos binários produzidos a partir de sua fonte, neste mesmo diretório.

  • Crie um arquivo build.xml para o Apache Ant para realizar as operações básicas necessárias para compilar e executar um programa Java. Cada comando chamado especificado pode ser chamado de forma independente, mas eles também formam uma hierarquia de dependências, que permitam atingir um objectivo nível mais elevado. O objetivo final final é "corre" o programa, que depende de compilação após arquivos necessários são copiados e objetos compilados mais antigos são excluídos.

    destdir ="$ {} Targetdir"

    classpathref ="bibliotecas"gt;

Configurar o Hibernate

  • Criar um banco de dados MySql com um nome de usuário e senha que tenha acesso root. Este exemplo assume que o nome do banco de dados é "hibernar" com o nome de usuário "uname" e senha "mypwd."

  • Criar um arquivo de texto chamado hibernate.cfg.xml no seu diretório src. Comece por criar o shell XML básica em que você vai escrever suas configurações específicas:

    -// Hibernate / Hibernate Configuração DTD // PT

    https://hibernate.sourceforge.net/hibernate-configuration-3.0.dtdgt;

  • Adicione as seguintes linhas ao elemento session-factory para configurar o banco de dados MySQL, fornecendo o nome de banco de dados apropriado, ID de usuário e senha:

    jdbc: mysql: // localhost / hibernação

    uname

    mypwd

    com.mysql.jdbc.Driver

    org.hibernate.dialect.MySQLDialect

  • Adicionar configuração para o pacote de pool de conexão C3P0 que é distribuído com o Hibernate, adicionando as seguintes linhas para o elemento session-factory:

    3

    5

    1800

    fio

  • Desativar o cache de segundo nível do Hibernate para evitar possíveis problemas de sincronização quando se usa com o Tomcat:

    org.hibernate.cache.NoCacheProvider

    falso

    falso

    3

  • Defina as seguintes propriedades para que você possa testar a sua configuração:

    verdade

    verdade

    crio

Criar uma classe Java para Testes

  • Escrever uma classe Java simples e salvar em seu diretório diretório do pacote. Para este exemplo, o nome do arquivo de classe será MyClass.java no src / com / ehow / seunome diretório:

    pacote com.ehow.yourname- / substituir com seu nome e domínio /

    import java.util.Date;

    Public class MyClass {

    ID- longo privado / * um identificador exclusivo para o objeto * /

    myProperty private String;

    pública de longo getId () {

    retornar id;

    }

    setId public void (Long id) {



    this.id = id;

    }

    Cadeia getMyProperty pública () {

    voltar this.myProperty;

    }

    setMyProperty public void (prop String) {

    this.myProperty = prop;

    }

    }

  • Crie um arquivo MyClass.hbm.xml no diretório do pacote onde você salvou o arquivo MyClass.java associado. Criar um elemento de propriedade para todos os seus membros de dados MyClass que serão salvos em um myclass tabela de banco de dados chamado:

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

     "- // Hibernate / mapeamento Hibernate DTD 3.0 // PT"

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

  • Adicione uma entrada no elemento session-factory do seu arquivo .xml para associar o arquivo de configuração de mapeamento MyClass com Hibernate:

  • Execute o arquivo de construção Ant. Se não houver erros, você deve ver que um novo registro foi adicionado ao banco de dados MySQL:

    $ Ant run

    Buildfile: build.xml

Iniciar Hibernate

  • Criar uma classe auxiliar para implementar uma fábrica de sessão e guardá-lo como HibernateUtil.java em sua "WEB-INF / classes" diretório. Importar seu pacote e criar uma função principal para testar a configuração:

    importação org.hibernate.SessionFactory;

    importação org.hibernate.Session;

    importação org.hibernate.Transaction;

    importação org.hibernate.cfg.Configuration;

    importação com.ehow.yourname.MyPackage- / necessário para a função teste só /

    classe pública HibernateUtil {

    private static final SessionFactory sessionFactory;

    estática {

    experimentar {

    // Inicializa fábrica usando conteúdo de hibernate.cfg.xml

    sessionFactory = new Configuration () configure () buildSessionFactory ()..;

    } Catch (ex Throwable) {

    System.err.println ("criação SessionFactory inicial falhou." + Ex);

    throw new ExceptionInInitializerError (ex);

    }

    }

    public static SessionFactory getSessionFactory () {

    voltar sessionFactory;

    }

    main (String [] args) public static void {

    MyClass myCls = new MyClass ();

    / * O campo id vontade auto-incremento para um valor único, que irá distinguir registros * /

    mycls.setMyProperty ("Minha propriedade");

    Session session = getSession ();

    transaction Transação = session.beginTransaction ();

    session.save (blog);

    transaction.commit () - / * Se este teste for bem-sucedido, você vai encontrar um novo recorde em seu banco de dados MySQL * /

    }

    }

  • Criar uma classe de ouvinte que vai começar Hibernate e gerenciar a persistência de suas classes de dados mapeados. Salve a classe como HibernateListener.java em sua "WEB-INF / classes" diretório:

    classe pública HibernateListener implementa ServletContextListener {

    public void contextInitialized (evento ServletContextEvent) {

    HibernateUtil.getSessionFactory () - // cria uma fábrica

    }

    public void contextDestroyed (evento ServletContextEvent) {

    HibernateUtil.getSessionFactory () Close () -. // Recursos livres

    }

    }

  • Adicione a seguinte linha para o arquivo web.xml no seu diretório WEB-INF. Este associar sua classe ouvinte com a sua aplicação:

    com.ehow.yourname.HibernateListener
  • Em um tipo de janela de console "ant run" para executar o script ant.

De esta maneira? Compartilhar em redes sociais:

LiveInternet