sql >> データベース >  >> RDS >> PostgreSQL

JPAを使用したPostgreSQLでのUUIDの永続化

    PostgreSQL JDBCドライバーは、残念ながら非JDBC標準のタイプコードを表す方法を選択しました。それらはすべてTypes.OTHERにマップするだけです。簡単に言うと、UUIDマッピング(postgres固有のuuidデータ型の列への)を処理するための特別なHibernateタイプマッピングを有効にする必要があります:

    @Id
    @Column(name = "customer_id")
    @org.hibernate.annotations.Type(type="org.hibernate.type.PostgresUUIDType")
    private UUID id;
    

    以上簡潔に:

    @Id
    @Column(name = "customer_id")
    @org.hibernate.annotations.Type(type="pg-uuid")
    private UUID id;
    

    もう1つの(より良い)オプションは、java.util.UUIDとして公開されているすべての属性のデフォルトのHibernateタイプマッピングとしてorg.hibernate.type.PostgresUUIDTypeを登録することです。これについては、ドキュメント@ http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch06.html#types-registry

    で説明されています。

    1. PostgreSQLクエリは制限1で非常に遅い

    2. 開発プロジェクト中のミッションクリティカルなアクセスアプリケーションの特定と管理

    3. カンマ区切りの文字列を分割し、テーブルに挿入します(int)

    4. MySQLルートユーザーの完全な権限を復元するにはどうすればよいですか?