草庐IT

hibernate-postgresql

全部标签

java - 在 PostgreSQL 中使用模式的 Hibernate 和 Multi-Tenancy 数据库

背景我正在开发一个future的Multi-TenancyWeb应用程序,该应用程序需要支持数以千计的用户。该应用程序是在基于Java的Play之上构建的!使用JPA/Hibernate和postgreSQL的MVC框架。我看了GuyNaor在WritingMulti-tenantApplicationsinRails上的演讲他在其中谈到了几种Multi-Tenancy方法(数据隔离随着列表的向下移动而降低):每个客户都有一个单独的数据库一个数据库,每个客户都有单独的模式和表(表命名空间)。一个数据库,其中包含一组包含客户ID列的表。我选择了方法#2,其中某种用户ID从请求中解析出来,

java - Hibernate postgresql 通知功能

我正在编写一个使用hibernate+JPA作为ORM和postgresql9.3作为数据库后端的应用程序,我需要使用一些java代码对一些数据库事件使用react。更准确地说,我想构建一个触发器,在向表中插入新行时使用pg_notify()。我已经阅读过相关内容,但所有教程都是直接连接jdbc而不是通过hibernate。我(认为我)不能使用hibernate事件,因为行不是通过hibernate插入的,而是通过第3方应用程序插入的。有什么方法可以通过hibernate接收使用pg_notify发送的通知吗?--更新现在我有一个classCastException:java.lang

java - JPA, hibernate : OneToOne mapping with foreign key only

环境:hibernate4.1.6.finalSpring3.1.2.发布SpringJPA1.1.0.releasePostgreSQL9.1-901-1.jdbc4我决定改写问题。有2张表:publiccompany{privateLongid;privateLongname;privateaddresstable_address;}publicaddress{privateLongid;privateStringaddress;privateLongcompany_id;}注意:两个表id是连续的,没有关联。除了table.address.company_id是公司的外键。如何做

java - hibernate JTA : Read DB connection parameters per environment

我正在使用hibernate编写一个javaEE应用程序。该应用程序将在多个环境(dev、qa、prod等)上运行,并且每个环境都有单独的数据库。我想为每个环境分别设置jdbc-url、用户名、密码等hibernate属性。我当前的persistence.xml看起来像:org.hibernate.ejb.HibernatePersistenceCALLBACK我在我的java代码中使用如下持久性单元:@PersistenceContext(unitName="PU")privateEntityManagerem;有没有一种方法可以将存储在单独属性文件中的hibernate属性注入(i

java - 如何更改 Hibernate CharacterTypeDescriptor 以处理空列值

我们的问题是由于源自Hibernate的字符类型描述符。我们想更改Hibernate的行为以正确解析空字符串。示例数据:1,'Berlin',17277,'','aUser'2,'London',17277,'','anotherUser'我们将hibernate与javax.persistence.Query结合使用。Stringsql="SELECT*FROMtable";Queryquery=entityManager.createNativeQuery(sql);ListresultList=query.getResultList();这会导致StringIndexOutOfB

java - Hibernate:session.load 与 session.get

我的印象是session.load()在缓存中加载代理对象,而session.get()总是访问数据库,但之后我很困惑观看JavaBrainsvideo.根据这个视频,当我们调用下面的get方法时,它正在内存中加载UserDetails的代理对象。user=(UserDetails)session.get(UserDetails.class,1);UserDetails的结构是在评论区,有人评论道:thereisnoproxyofUserclass,insteadtheproxyobjectofthecollectioniscreated.现在这里有两个问题。1st:Relatedto

java - 是否可以在没有密码的情况下创建 jdbc 连接(使用 postgresql 'trust' )?

我正在使用jdbc连接到java应用程序中的postgresql数据库(实际上该应用程序是用Groovy编写的)。我已将postgresql设置为使用“信任”身份验证方法。是否可以在不指定密码的情况下打开jdbc连接?当我尝试使用带有空白密码的普通构造函数时,它失败并显示Exceptioninthread"Thread-2"org.postgresql.util.PSQLException:FATAL:passwordauthenticationfailedforuser"myuser"即使在命令行中,这也能正常工作psql-UmyusermydatabaseWelcometopsql

java - 如何使用 Hibernate/JPA 2 实现 Spring Security 用户/权限?

我正在尝试实现DAO以在Hibernate/JPA2中使用SpringSecurity数据库身份验证。Spring使用以下关系和关联来表示用户和角色:表示为postgresql创建查询:CREATETABLEusers(usernamecharactervarying(50)NOTNULL,"password"charactervarying(50)NOTNULL,enabledbooleanNOTNULL,CONSTRAINTusers_pkeyPRIMARYKEY(username));CREATETABLEauthorities(usernamecharactervarying(

java - 如何使用 Hibernate 注释在连接表上创建索引?

我使用Hibernate注释有如下关系,这是我尝试过的:publicclassJob{...@OneToMany(cascade=CascadeType.ALL)@JoinTable(name="jobs_resource_locations")@ForeignKey(name="job_inputs_fk")@Index(name="job_inputs_fk")privateListinputs;这种事情在ManyToOne上工作得很好,就像这样:@ManyToOne@JoinColumn(name="service_call_id",referencedColumnName="i

java - 具有 JPA、PostgreSQL 和 NULL 值的 JodaTime

我正在尝试使用JPA将JodaTimeDateTime字段持久保存到PostgreSQL,但遇到了指向数据库NULL值的空指针的问题。我正在使用NetBeans7beta2IDE。持久性实现是EclipseLink2.2.0,我正在使用EclipseLink转换器来使映射工作。这是我的领域的声明:@Converter(name="dateTimeConverter",converterClass=ejb.util.DateTimeConverter.class)@Column(columnDefinition="TIMESTAMPWITHTIMEZONE")@Convert("date