Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Map<String, String> properties = new HashMap<>();
- properties.put("provider", "org.hibernate.ejb.HibernatePersistence");
- properties.put("hibernate.show_sql", "true");
- properties.put("hibernate.format_sql", "true");
- properties.put("hibernate.dialect", "org.hibernate.dialect.MySQLDialect");
- properties.put("hibernate.connection.driver_class", "com.mysql.jdbc.Driver");
- properties.put("hibernate.connection.username", "username");
- properties.put("hibernate.connection.password", "password");
- properties.put("hibernate.connection.url", "jdbc:mysql://<hostname>:3306/<schema>");
- Persistence.createEntityManagerFactory("localDB", properties);
- compile group: 'org.hibernate', name: 'hibernate-core', version: '5.4.3.Final'
- Caused by: javax.persistence.PersistenceException: No Persistence provider for EntityManager named localDB
- public class PersistenceUnitInfoImpl implements PersistenceUnitInfo {
- public static final String JPA_VERSION = "2.1";
- private final String persistenceUnitName;
- private PersistenceUnitTransactionType transactionType = PersistenceUnitTransactionType.RESOURCE_LOCAL;
- private final List<String> managedClassNames;
- private final List<String> mappingFileNames = new ArrayList<>();
- private final Properties properties;
- private DataSource jtaDataSource;
- private DataSource nonJtaDataSource;
- public PersistenceUnitInfoImpl(
- String persistenceUnitName,
- List<String> managedClassNames,
- Properties properties) {
- this.persistenceUnitName = persistenceUnitName;
- this.managedClassNames = managedClassNames;
- this.properties = properties;
- }
- @Override
- public String getPersistenceUnitName() {
- return persistenceUnitName;
- }
- @Override
- public String getPersistenceProviderClassName() {
- return HibernatePersistenceProvider.class.getName();
- }
- @Override
- public PersistenceUnitTransactionType getTransactionType() {
- return transactionType;
- }
- @Override
- public DataSource getJtaDataSource() {
- return jtaDataSource;
- }
- public PersistenceUnitInfoImpl setJtaDataSource(
- DataSource jtaDataSource) {
- this.jtaDataSource = jtaDataSource;
- this.nonJtaDataSource = null;
- transactionType = PersistenceUnitTransactionType.JTA;
- return this;
- }
- @Override
- public DataSource getNonJtaDataSource() {
- return nonJtaDataSource;
- }
- public PersistenceUnitInfoImpl setNonJtaDataSource(
- DataSource nonJtaDataSource) {
- this.nonJtaDataSource = nonJtaDataSource;
- this.jtaDataSource = null;
- transactionType = PersistenceUnitTransactionType.RESOURCE_LOCAL;
- return this;
- }
- @Override
- public List<String> getMappingFileNames() {
- return mappingFileNames;
- }
- @Override
- public List<URL> getJarFileUrls() {
- return Collections.emptyList();
- }
- @Override
- public URL getPersistenceUnitRootUrl() {
- return null;
- }
- @Override
- public List<String> getManagedClassNames() {
- return managedClassNames;
- }
- @Override
- public boolean excludeUnlistedClasses() {
- return false;
- }
- @Override
- public SharedCacheMode getSharedCacheMode() {
- return SharedCacheMode.UNSPECIFIED;
- }
- @Override
- public ValidationMode getValidationMode() {
- return ValidationMode.AUTO;
- }
- public Properties getProperties() {
- return properties;
- }
- @Override
- public String getPersistenceXMLSchemaVersion() {
- return JPA_VERSION;
- }
- @Override
- public ClassLoader getClassLoader() {
- return Thread.currentThread().getContextClassLoader();
- }
- @Override
- public void addTransformer(ClassTransformer transformer) {
- }
- @Override
- public ClassLoader getNewTempClassLoader() {
- return null;
- }
- }
- Properties properties = new Properties();
- properties.put("hibernate.show_sql", "true");
- properties.put("hibernate.format_sql", "true");
- properties.put("hibernate.dialect", "org.hibernate.dialect.MySQLDialect");
- properties.put("hibernate.connection.driver_class", "com.mysql.jdbc.Driver");
- properties.put("hibernate.connection.username", "username");
- properties.put("hibernate.connection.password", "password");
- properties.put("hibernate.connection.url", "jdbc:mysql://<hostname>:3306/<schema>");
- List<String> entitesClass = new ArrayList<>();
- entitesClass.add("com.company.entities.Foo");
- entitesClass.add("com.company.entities.Bar");
- PersistenceUnitInfoImpl punit = new PersistenceUnitInfoImpl("localDB", entitesClass , properties);
- PersistenceProvider provider = new HibernatePersistenceProvider();
- EntityManagerFactory emf= provider.createContainerEntityManagerFactory(punit, properties);
- EntityManager em = emf.createEntityManager();
- //blablblabl
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement