Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    378

    [Java] Hibernate errore in SQL syntax

    Ciao a tutti sono agli inizi con hibernate e sono già bloccato, non capisco perchè mi dia come errore: "error in your SQL syntax"

    Ho creato un DB di nome "libreria" e una tabella di nome "libri"

    Ho configurato il file hibernate.cfg.xml e sembra che si connetta (se metto parametri da sbagliati da errori....)
    Codice PHP:
    <?xml version='1.0' encoding='utf-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
    <hibernate-configuration>
        <session-factory>
            
            <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
            <property name="connection.url">jdbc:mysql://127.0.0.1/libreria</property>
            <property name="connection.username">libreria</property>
            <property name="connection.password"></property>
            
            <property name="connection.pool_size">2</property>
            
            <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
            
            <property name="current_session_context_class">thread</property>
            
            <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
            
            <property name="show_sql">false</property>
            <mapping resource="it/dominio/Libri.hbm.xml"/>
        </session-factory>
    </hibernate-configuration>
    Ho creato il file Libri.hbm.xml
    Codice PHP:
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

    <hibernate-mapping schema="hibernate" package="it.dominio">

        <class name="it.dominio.Libri" table="libri" catalog="libreria" lazy="false">
            
            <id name="id" type="java.lang.Integer">
                <column name="ID"/>
                <generator class="identity"/>
            </id>
            
            <property name="isbn" type="string">
                <column name="ISBN" length="255" not-null="false"/>
            </property>    
            
            <property name="titolo" type="string">
                <column name="TITOLO" length="255" not-null="false"/>
            </property>
            
            <property name="autore" type="string">
                <column name="AUTORE" length="255" not-null="false"/>
            </property>
            
            <property name="categoria" type="string">
                <column name="CATEGORIA" length="255" not-null="false"/>
            </property>
            
        </class>

    </hibernate-mapping>
    Ho creato il Bean Libri.java
    Codice PHP:
    package it.dominio;

    import java.io.*;

    public class 
    Libri  implements Serializable{
        
        private 
    Integer id;
        private 
    String isbn;
        private 
    String titolo;
        private 
    String autore;
        private 
    String categoria;
        
        public 
    Libri(){}
        
        public 
    Libri(String isbnString titoloString autoreString categoria){
            
    this.isbn isbn;
            
    this.titolo titolo;
            
    this.autore autore;
            
    this.categoria categoria;
            }

        public 
    Integer getId() {
            return 
    id;
            }

        public 
    void setId(Integer id) {
            
    this.id id;
            }

        public 
    String getIsbn() {
            return 
    isbn;
            }

        public 
    void setIsbn(String isbn) {
            
    this.isbn isbn;
            }

        public 
    String getTitolo() {
            return 
    titolo;
            }

        public 
    void setTitolo(String titolo) {
            
    this.titolo titolo;
            }

        public 
    String getAutore() {
            return 
    autore;
            }

        public 
    void setAutore(String autore) {
            
    this.autore autore;
            }

        public 
    String getCategoria() {
            return 
    categoria;
            }
        
        public 
    void setCategoria(String categoria) {
            
    this.categoria categoria;
            }
        

    e in fine un main di prova per vedere se funziona
    Codice PHP:
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.cfg.Configuration;

    import it.dominio.Libri;

    public class 
    TestDB {

        public static 
    void main(String[] argv){
                
            try{
                
    SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
                
    Session session sessionFactory.getCurrentSession();
                
                
    session.beginTransaction();
                
    Libri libro = new Libri();
                
    libro.setAutore("Pippo");
                
    libro.setCategoria("Categoria libro");
                
    libro.setIsbn("123456");
                
    libro.setTitolo("Titolo libro");
            
                
    session.save(libro);
                
    session.getTransaction().commit();
                }
            catch(
    Exception err){
                
    //err.printStackTrace();
                
    System.out.println("---------------------->> errore!!");
                }
            }
        

        } 

    Quando tento di eseguire mi da sempre l'errore:
    Codice PHP:
    GRAVEYou have an error in your SQL syntaxcheck the manual that corresponds to your MySQL server version for the right syntax to use near '.libri (ISBN, TITOLO, AUTORE, CATEGORIA) values ('123456', 'Titolo libro', 'Pipp' at line 1 

    Qualcuno che usa Hibernate può darmi una mano ??? grazie....

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    378
    ..nessuno ha idea di cosa potrebbe essere ?? grazie...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.