Bonjour à tous.
Je découvre hibernate ces derniers temps et ai un certain nombre de problèmes dont je n'arrive pas à trouver la solution dans ce forum ou ailleurs sur le web.
En fait j'essaie de faire du "reverse engineering" en utilisant "hibernate-tools" et je ne parviens pas à faire les chose suivantes :
- J'utilise une base oracle et hibernate-tools ne connait pas de base le type "varchar2", c'est gênant.
J'ai surchargé les classe "JDBCToHibernateTypeHelper" et "java.sql.Types" pour y remédier mais je ne parviens pas à savoir comment les utiliser, ni même s'il s'agit de la bonne méthode.
Dans "Middlegen" il existait une propriété "JavaTypeMapper" à mettre dans le fichier de config, un équivalent existe-t-il pour "hibernate-tools"?
Sinon quelle classe doit être modifiée pour que soit utilisée ma classe perso pour remplacer le "JDBCTypeHelper" de base, et peut-on spécifier dans la config que l'on veut utiliser cette classe au lieu de celle par défaut?
N'y a t-il pas un équivalent à "MySQL2Java" dans lequel je pourrais "setter" les types inconnus d'Hibernate?
- J'ai des problèmes avec la précision des décimaux.
Dans mon fichier SQL issue de l'export de la base j'ai cela :
Quote:
ARTPMTP number(19,2)
Et dans le fichier de mapping j'obtiens ceci :
Quote:
<property name="artpmtp" type="java.lang.Double">
<column name="ARTPMTP" precision="126" scale="0" />
</property>
Que se passe t-il? C'est le driver JDBC qui part en saucisse ou bien?
- Une petite question:
Dans la base sont associées aux tables et champs des descriptions, puis-je les récupérer pour obtenir quelque chose de ce genre ?
Quote:
<hibernate-mapping package="default.connection.art">
<class name="Art" table="ART">
<meta attribute="class-description"><![CDATA[Fichier stock article F-ART ]]></meta>
...
<property name="ARTENT" column="ARTENT" type="string" length="1">
<meta attribute="field-description"><![CDATA[Entreprise ]]></meta>
</property>
...
- Et pour finir, un truc un peu plus soft :
Je vois dans certians fichiers de mappinq ceci :
Quote:
<hibernate-mapping package="default.connection.art">
<class name="Art" table="ART">
hors moi j'ai ceci :
Quote:
<hibernate-mapping>
<class name="default.connection.art.Art" table="ART">
Je voudrais une présentation identique au premier exemple, comment que je dois faire svp?
Merci d'avance aux âmes charitables qui me répondront.
a+