Я использую Hibernate для получения имен столбцов таблицы. Я создал один метод, и я передаю свой Имя таблицы этому методу Во время выполнения Я получаю это исключение: Нет Диалект отображение для типа JDBC: -1 Может ли один помочь мне out.ThanksНе удается получить имена столбцов таблицы с помощью Hibernate
Ниже Mycode:
Dao класса:
public class Dao {
public static void main(String[] args) {
Dao o=new Dao();
ArrayList list=o.getTableDesc("examtype");
System.out.println ("listlistlist"+list);
}
public ArrayList<String> getTableDesc(String tableName) {
System.out.println("getFieldNames:start" + tableName);
Object[] a;
List<Object[]> fieldNames = new ArrayList<Object[]>();
ArrayList<String> tabFieldNames = new ArrayList<String>();
Session ses = HibernateUtil.getSessionFactory().openSession();
try {
String queryStr = "DESCRIBE " + tableName;
fieldNames = (List<Object[]>) ses.createSQLQuery(queryStr).list();
System.out.println("fieldNamesfieldNames"+fieldNames);
for (int i = 0; i < fieldNames.size(); i++) {
a = fieldNames.get(i);
tabFieldNames.add(a[0].toString());
}
} catch (Exception e) {
e.printStackTrace();
System.out.println("exception " + e);
} finally {
ses.close();
}
System.out.println("getFieldNames:end" + tabFieldNames.toString());
return tabFieldNames;
}
}
hibernate.cfg.xml:
<hibernate-configuration>
<session-factory>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306treamisdemo</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password"></property>
<property name="hibernate.format_sql">true</property>
<property name="hibernate.connection.pool_size">30</property>
<property name="hibernate.jdbc.batch_size">100</property>
<!--<property name="hibernate.hbm2ddl.auto">update</property>-->
<property name="hibernate.connection.isolation">2</property>
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
</session-factory>
</hibernate-configuration>
Я не парень MySQL, но это может помочь вам [ссылка] (http://stackoverflow.com/questions/12985533/getting-org-hibernate-mappingexception-no-dialect-mapping-for-jdbc-type- 4-exc) –