Сопоставить роль пользователя при создании менеджера сущностей
Map properties = new HashMap();
properties.put("javax.persistence.jdbc.driver", "org.firebirdsql.jdbc.FBDriver");
properties.put("javax.persistence.jdbc.url", "jdbc:firebirdsql://localhost:3050/" + DBpath);
properties.put("javax.persistence.jdbc.user", "dbuser");
properties.put("javax.persistence.jdbc.password","dbpassword");
Persistence.createEntityManagerFactory("DB_manager", properties);
DB_ondulatiPUEntityManager = Persistence.createEntityManagerFactory("DB_manager",properties).createEntityManager();
Я могу правильно создать Entity Manager, проблема в том, что пользователь, которому я пользуюсь, назначил определенную роль в БД, как я могу указать эту роль в свойствах? В противном случае я получаю сообщение об ошибке "нет разрешения на чтение / выбор доступа к TABLE..."
1 ответ
Решение
Вы можете добавить их в URL, так же, как и при создании соединения напрямую через DriverManager
:
properties.put("javax.persistence.jdbc.url",
"jdbc:firebirdsql://localhost:3050/" + DBpath + "?roleName=myrole");