<?xml version="1.0" encoding="UTF-8"?>
<!--
Document : Carro.hbm.xml
Created on : 29 de Março de 2008, 00:15
Author : cliente
Description:
Purpose of the document follows.
-->
<!DOCTYPE arg PUBLIC '-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN' ''>
<arg>
</arg>
Eu to usando o servidor tomcat para trabalhar na web. Neste segundo codigo por acaso eu tenho que declarar onde está o arquivo Hibernate Mapping DTD 3.0 dentro do meu projeto?
grato pela ajuda.
t+
Cara, essas duas comparações não são tão relevantes assim.
Trata-se de XMLs diferentes em aplicações diferentes. Cada aplicação (Framework’s, Jar’s, war’s, ear’s, JPA’s, hibernate’s, etc…) tem seus XML’s próprios com suas particularidades no cabeçalhos. Tudo o que você precisa saber, em uma dada aplicação, quais as exigencias em termos declarações no XML para ela se comportar adequadamente. Essa informações normalmente vem em especificações, documentação, códigos modelos e etc.
No caso do Hibernate, você nao precisa informar onde está o DTD real, mas exige a declaração do cabeçalho.
A propósito, se você está usando o hibernate 3.2 ou superior, você nao precisa fazer esse tipo de declaração:
Essa declarações, torna a manutenção do seu sistema muito custosa. Qualquer Refactoringque você fizer na sua classe, você tem que sair alterando no XML também. É um saco. Basta somente isso:
<mapping class="carro.Carro"/>
Ai, qualquer informação da sua classe de negócio (Carro) com relação ao BD, você utiliza as anotações da JPA + Hibernate. A manutenção do sistema torna-se instantânea e sem riscos de você esquecer uma “/” sem fechar a tag XML adequadamente.