View Javadoc

1   package com.salto.db.generator.plugin;
2   
3   import java.sql.DatabaseMetaData;
4   import java.sql.SQLException;
5   import java.util.HashMap;
6   import java.util.Map;
7   
8   /***
9    * @author remi
10   * 
11   */
12  public final class HibernateDialectHelper {
13  
14  	private static final Map dialects = new HashMap();
15  
16  	static {
17  		dialects.put("Oracle", "org.hibernate.dialect.OracleDialect");
18  		dialects.put("Microsoft SQL Server", "org.hibernate.dialect.SQLServerDialect");
19  		dialects.put("PostgreSQL", "org.hibernate.dialect.PostgreSQLDialect");
20  		dialects.put("HypersonicSQL", "org.hibernate.dialect.HSQLDialect");
21  		
22  	}
23  
24  	public final String getHibernateDialect(DatabaseMetaData metaData) throws SQLException {
25  		if (metaData == null)
26  			return null;
27  
28  		
29  		if (metaData.getDatabaseProductName().equals("MySQL")) {
30  			if (metaData.getDatabaseMajorVersion() >= 5) {
31  				return "org.hibernate.dialect.MySQL5Dialect";
32  			}
33  			return "org.hibernate.dialect.MySQLDialect";
34  		} else
35  			return (String) dialects.get(metaData.getDatabaseProductName());
36  
37  	}
38  
39  }