List of usage examples for org.hibernate.cfg Configuration addAnnotatedClass
@SuppressWarnings({ "unchecked" }) public Configuration addAnnotatedClass(Class annotatedClass)
From source file:com.egreen.tesla.server.api.database.RepositoryConfig.java
public SessionFactory init(List<Class> classes) { // Create the SessionFactory from hibernate.cfg.xml Configuration configuration = new AnnotationConfiguration(); configuration.setProperty("hibernate.connection.url", url); configuration.setProperty("hibernate.connection.username", username); configuration.setProperty("hibernate.connection.password", password); configuration.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQLDialect"); configuration.setProperty("hibernate.connection.driver_class", JDBC_DRIVER); configuration.setProperty("hibernate.show_sql", "true"); configuration.setProperty("hibernate.hbm2ddl.auto", "update"); for (Class class1 : classes) { configuration = configuration.addAnnotatedClass(class1); }/* w ww. j av a 2s. co m*/ //ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry(); return configuration.buildSessionFactory(); }
From source file:com.evolveum.midpoint.repo.sql.SpringApplicationContextTest.java
License:Apache License
private void addAnnotatedClasses(String packageName, Configuration configuration) throws ClassNotFoundException { Set<Class> classes = ClassPathUtil.listClasses(packageName); for (Class clazz : classes) { configuration.addAnnotatedClass(clazz); }/*from ww w. j a v a 2 s . co m*/ }
From source file:com.flipkart.fdp.migration.db.DBInitializer.java
License:Apache License
private SessionFactory buildSessionFactory() { try {/*from ww w . j av a 2 s . c om*/ Configuration configuration = new Configuration(); configuration.setProperties(getHibernateProperties()); configuration.addAnnotatedClass(Batch.class); configuration.addAnnotatedClass(BatchRun.class); configuration.addAnnotatedClass(MapperDetails.class); StandardServiceRegistryBuilder serviceRegistryBuilder = new StandardServiceRegistryBuilder(); serviceRegistryBuilder.applySettings(configuration.getProperties()); ServiceRegistry serviceRegistry = serviceRegistryBuilder.build(); sessionFactory = configuration.buildSessionFactory(serviceRegistry); return sessionFactory; } catch (Throwable e) { System.err.println("Initial SessionFactory creation failed." + e); throw new ExceptionInInitializerError(e); } }
From source file:com.flipkart.flux.guice.module.HibernateModule.java
License:Apache License
/** * Adds annotated classes and custom types to passed Hibernate configuration. *//*from w w w .j a v a2 s . co m*/ private void addAnnotatedClassesAndTypes(Configuration configuration) { //register hibernate custom types configuration.registerTypeOverride(new BlobType(), new String[] { "BlobType" }); configuration.registerTypeOverride(new StoreFQNType(), new String[] { "StoreFQNOnly" }); configuration.registerTypeOverride(new ListJsonType(), new String[] { "ListJsonType" }); //add annotated classes to configuration configuration.addAnnotatedClass(AuditRecord.class); configuration.addAnnotatedClass(Event.class); configuration.addAnnotatedClass(State.class); configuration.addAnnotatedClass(StateMachine.class); }
From source file:com.flipkart.flux.redriver.boot.RedriverModule.java
License:Apache License
private void addAnnotatedClassesAndTypes(Configuration configuration) { configuration.addAnnotatedClass(ScheduledMessage.class); }
From source file:com.foilen.smalltools.tools.Hibernate4Tools.java
License:Open Source License
/** * Generate the SQL file. This is based on the code in {@link LocalSessionFactoryBuilder#scanPackages(String...)} * * @param dialect/*w ww .j a v a 2s.c o m*/ * the dialect (e.g: org.hibernate.dialect.MySQL5InnoDBDialect ) * @param outputSqlFile * where to put the generated SQL file * @param useUnderscore * true: to have tables names like "employe_manager" ; false: to have tables names like "employeManager" * @param packagesToScan * the packages where your entities are */ @SuppressWarnings("deprecation") public static void generateSqlSchema(Class<? extends Dialect> dialect, String outputSqlFile, boolean useUnderscore, String... packagesToScan) { // Configuration Configuration configuration = new Configuration(); if (useUnderscore) { configuration.setNamingStrategy(new ImprovedNamingStrategy()); } Properties properties = new Properties(); properties.setProperty(AvailableSettings.DIALECT, dialect.getName()); // Scan packages Set<String> classNames = new TreeSet<String>(); Set<String> packageNames = new TreeSet<String>(); try { for (String pkg : packagesToScan) { String pattern = ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + ClassUtils.convertClassNameToResourcePath(pkg) + RESOURCE_PATTERN; Resource[] resources = resourcePatternResolver.getResources(pattern); MetadataReaderFactory readerFactory = new CachingMetadataReaderFactory(resourcePatternResolver); for (Resource resource : resources) { if (resource.isReadable()) { MetadataReader reader = readerFactory.getMetadataReader(resource); String className = reader.getClassMetadata().getClassName(); if (matchesEntityTypeFilter(reader, readerFactory)) { classNames.add(className); } else if (className.endsWith(PACKAGE_INFO_SUFFIX)) { packageNames .add(className.substring(0, className.length() - PACKAGE_INFO_SUFFIX.length())); } } } } } catch (IOException ex) { throw new MappingException("Failed to scan classpath for unlisted classes", ex); } try { for (String className : classNames) { configuration.addAnnotatedClass(resourcePatternResolver.getClassLoader().loadClass(className)); } for (String packageName : packageNames) { configuration.addPackage(packageName); } } catch (ClassNotFoundException ex) { throw new MappingException("Failed to load annotated classes from classpath", ex); } // Exportation SchemaExport schemaExport = new SchemaExport(configuration, properties); schemaExport.setOutputFile(outputSqlFile); schemaExport.setDelimiter(";"); schemaExport.setFormat(true); schemaExport.execute(true, false, false, true); }
From source file:com.football.site.db.HibernateUtil.java
private static SessionFactory getSessionFactory() { if (sessionFactory == null) { try {/*from w w w .j a v a 2 s. c o m*/ // loads configuration and mappings Configuration configuration = new Configuration().configure("hibernate.cfg.xml"); //TODO : yeni bir entity geldiinde ekleme yaplacak configuration.addAnnotatedClass(Fixtures.class); configuration.addAnnotatedClass(FixturesMatchResult.class); configuration.addAnnotatedClass(LeagueTableRows.class); configuration.addAnnotatedClass(LeagueTableTeamStatistics.class); configuration.addAnnotatedClass(Leagues.class); configuration.addAnnotatedClass(Leaguetable.class); configuration.addAnnotatedClass(Teams.class); configuration.addAnnotatedClass(Players.class); configuration.addAnnotatedClass(TokenInfo.class); configuration.addAnnotatedClass(UserInfo.class); configuration.addAnnotatedClass(FixturesTeam.class); configuration.addAnnotatedClass(FixturesTeamMatchResult.class); configuration.addAnnotatedClass(LeaguesCountry.class); ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .applySettings(configuration.getProperties()).build(); // builds a session factory from the service registry sessionFactory = configuration.buildSessionFactory(serviceRegistry); } catch (HibernateException ex) { HelperUtil.AddErrorLog(LOG, ex); } catch (Exception e) { HelperUtil.AddErrorLog(LOG, e); } } return sessionFactory; }
From source file:com.github.antennaesdk.messageserver.db.H2.H2Database.java
License:Apache License
public void generateSchemaAndCreateTables(SimpleDriverDataSource dataSource) { // Get the tables that are already in the DATABASE List<String> tables = new ArrayList<>(); try {/* w w w .j ava 2 s . co m*/ Connection connection = dataSource.getConnection(); DatabaseMetaData databaseMetadata = connection.getMetaData(); ResultSet resultSet = databaseMetadata.getTables(null, null, null, new String[] { "TABLE" }); while (resultSet.next()) { String table = resultSet.getString(3); logger.info("Table : " + table + " ... exists"); tables.add(table); } } catch (SQLException e) { e.printStackTrace(); } // Get the tables that are needed from Entity Classes List<Class> tablesToCreate = new ArrayList<>(); for (Class<?> c : entityClasses) { // get the table names Table table = c.getAnnotation(Table.class); logger.info("Entity: " + c.getName() + " , Table: " + table.name()); boolean isExisting = false; for (String dbTable : tables) { if (dbTable.equals(table.name())) { isExisting = true; break; } } if (!isExisting) { // these tables must be created tablesToCreate.add(c); } } // Check whether the tables need to be created... if (tablesToCreate.size() == 0) { logger.info("Tables already exist... "); return; } else { logger.info("Creating tables..."); } //create a minimal configuration org.hibernate.cfg.Configuration cfg = new org.hibernate.cfg.Configuration(); cfg.setProperty("hibernate.dialect", "org.hibernate.dialect.H2Dialect"); cfg.setProperty("hibernate.hbm2ddl.auto", "create"); // create a temporary file to write the DDL File ddlFile = null; try { File dir = getDirectoryFromClasspath(); ddlFile = File.createTempFile("H2_", ".SQL", dir); ddlFile.deleteOnExit(); } catch (IOException e) { e.printStackTrace(); } // add the tables to be created for (Class c : tablesToCreate) { cfg.addAnnotatedClass(c); } //build all the mappings, before calling the AuditConfiguration cfg.buildMappings(); cfg.getProperties().setProperty(AvailableSettings.HBM2DDL_IMPORT_FILES, ddlFile.getName()); cfg.getProperties().setProperty("hibernate.connection.driver_class", "org.h2.Driver"); cfg.getProperties().setProperty("hibernate.connection.url", dataSource.getUrl()); cfg.getProperties().setProperty("hibernate.connection.username", dataSource.getUsername()); cfg.getProperties().setProperty("hibernate.connection.password", dataSource.getPassword()); //execute the export SchemaExport export = new SchemaExport(cfg); export.setDelimiter(";"); export.setFormat(true); // create the tables in the DB and show the DDL in console export.create(true, true); }
From source file:com.googlecode.sarasvati.example.hib.HibTestSetup.java
License:Open Source License
public static void init(final boolean createSchema) throws Exception { final Configuration config = new Configuration(); if (createSchema) { config.setProperty(Environment.HBM2DDL_AUTO, "create-drop"); }//from w ww. j a va2 s .c o m HibEngine.addToConfiguration(config, false); config.addAnnotatedClass(HibExampleTaskNode.class); config.addAnnotatedClass(Task.class); config.addAnnotatedClass(InitNode.class); config.addAnnotatedClass(DumpNode.class); config.addAnnotatedClass(AsyncNode.class); URL url = HibTestSetup.class.getClassLoader().getResource("hibernate.cfg.xml"); if (url == null) { System.out.println("ERROR: No hibernate.cfg.xml found in classpath!\n" + "\tIn order to run the examples, you must create hibernate.cfg.xml in the examples/ directory.\n" + "\tYou can use the entries in conf/ as a starting point."); System.exit(-1); } config.configure(url); sessionFactory = config.buildSessionFactory(); }
From source file:com.googlecode.sarasvati.hib.HibEngine.java
License:Open Source License
public static void addToConfiguration(final Configuration config, final boolean enableCaching) { config.addAnnotatedClass(HibArc.class); config.addAnnotatedClass(HibArcToken.class); config.addAnnotatedClass(HibGraph.class); config.addAnnotatedClass(HibGraphListener.class); config.addAnnotatedClass(HibProcessListener.class); config.addAnnotatedClass(HibNode.class); config.addAnnotatedClass(HibNodeRef.class); config.addAnnotatedClass(HibNodeToken.class); config.addAnnotatedClass(HibGraphProcess.class); config.addAnnotatedClass(HibPropertyNode.class); config.addAnnotatedClass(HibCustomNodeWrapper.class); config.addAnnotatedClass(HibTokenSet.class); config.addAnnotatedClass(HibArcTokenSetMember.class); config.addAnnotatedClass(HibNodeTokenSetMember.class); config.addAnnotatedClass(HibNodeType.class); config.addAnnotatedClass(HibTokenSetMemberAttribute.class); config.addAnnotatedClass(HibExternal.class); if (enableCaching) { config.setCacheConcurrencyStrategy(HibGraph.class.getName(), "read-write"); config.setCollectionCacheConcurrencyStrategy(HibGraph.class.getName() + ".nodes", "read-write"); config.setCollectionCacheConcurrencyStrategy(HibGraph.class.getName() + ".arcs", "read-write"); config.setCollectionCacheConcurrencyStrategy(HibGraph.class.getName() + ".listeners", "read-write"); config.setCacheConcurrencyStrategy(HibGraphListener.class.getName(), "read-write"); config.setCacheConcurrencyStrategy(HibNode.class.getName(), "read-write"); config.setCacheConcurrencyStrategy(HibNodeRef.class.getName(), "read-write"); config.setCacheConcurrencyStrategy(HibArc.class.getName(), "read-write"); config.setCacheConcurrencyStrategy(HibExternal.class.getName(), "read-write"); config.setCacheConcurrencyStrategy(HibGraphProcess.class.getName(), "read-write"); config.setCollectionCacheConcurrencyStrategy(HibGraphProcess.class.getName() + ".listeners", "read-write"); config.setCollectionCacheConcurrencyStrategy(HibGraphProcess.class.getName() + ".activeArcTokens", "read-write"); config.setCollectionCacheConcurrencyStrategy(HibGraphProcess.class.getName() + ".activeNodeTokens", "read-write"); config.setCollectionCacheConcurrencyStrategy(HibGraphProcess.class.getName() + ".executionQueue", "read-write"); config.setCacheConcurrencyStrategy(HibProcessListener.class.getName(), "read-write"); config.setCacheConcurrencyStrategy(HibNodeToken.class.getName(), "read-write"); config.setCacheConcurrencyStrategy(HibArcToken.class.getName(), "read-write"); }// w ww .j ava 2s .c om }