乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      java – Envers審計(jì)表中缺少屬性

       印度阿三17 2019-06-30

      我正在使用envers來審核我的ParameterToValue實(shí)體.它的屬性“containerId”,“containerType”,“parameterId”在映射的數(shù)據(jù)庫表“values_for_params”(常規(guī)Hibernate表)中顯示為列,在生成的“values_for_params_AUD”DB表中缺少.我需要能夠獲得給定的(containerId,containerType,parameterId)的歷史“值”.

      ParameterToValue類:

      @Audited
      public class ParameterToValue extends BasicValueHolder {
      private Long containerId;
      private ContainerType containerType;
      private Long parameterId;
      
      public ParameterToValue(ContainerID containerId, Long parameterId, Value value) {
          super(value);
          this.containerId = containerId.getContainerId();
          this.parameterId = parameterId;
          containerType = containerId.getContainerType();
      }
      
      ParameterToValue() {
      }
      
      public Long getParameterId() {
          return parameterId;
      }
      
      public void setParameterId(Long parameterId) {
          this.parameterId = parameterId;
      }
      
      public Value getValue() {
          return value;
      }
      
      public void setValue(Value value) {
          this.value = value;
      }
      
      public Long getContainerId() {
          return containerId;
      }
      
      public void setContainerId(Long containerId) {
          this.containerId = containerId;
      }
      
      public ContainerType getContainerType() {
          return containerType;
      }
      
      public void setContainerType(ContainerType containerType) {
          this.containerType = containerType;
      }
      }
      

      Hibernate映射定義:

      <class name="platform.server.dataservices.model.ParameterToValue" table="values_for_params">
          <cache usage="read-write" include="all" />
          <id name="id" column="ID">
              <generator class="native"/>
          </id>
          <properties name="uniqueProps" unique="true">
              <property name="containerId" index="ParamValsContainerIdIndx"/>
              <property name="parameterId" index="ParamValsParamIdIndx"/>
              <property name="containerType" column="CONTAINER_TYPE">
                  <type name="org.hibernate.type.EnumType">
                      <param name="enumClass">platform.server.dataservices.model.ContainerType</param>
                      <param name="type">4</param>
                      <!-- 12 = string, 5 = smallint, 4 = integer, default 4 -->
                  </type>
              </property>
          </properties>
      
          <many-to-one name="value" cascade="all" lazy="false" unique="true" index="PRM_VAL_IDX"/>
      </class>
      

      在MySQL中顯示CREATE TABLE values_for_params:

      CREATE TABLE `values_for_params` (
        ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `containerId` bigint(20) DEFAULT NULL,
        `parameterId` bigint(20) DEFAULT NULL,
        `CONTAINER_TYPE` int(11) DEFAULT NULL,
        `value` bigint(20) DEFAULT NULL,
      PRIMARY KEY (`ID`),
      UNIQUE KEY `value` (`value`),
      UNIQUE KEY `containerId` (`containerId`,`parameterId`,`CONTAINER_TYPE`),
      KEY `ParamValsParamIdIndx` (`parameterId`),
      KEY `ParamValsContainerIdIndx` (`containerId`),
      KEY `PRM_VAL_IDX` (`value`),
      KEY `FKE02CB4F981565307` (`value`),
      CONSTRAINT `FKE02CB4F981565307` FOREIGN KEY (`value`) REFERENCES `value` (`ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=utf8
      

      在MySQL中顯示CREATE TABLE values_for_params_AUD:

      CREATE TABLE `values_for_params_AUD` (
        `ID` bigint(20) NOT NULL,
        `REV` int(11) NOT NULL,
        `REVTYPE` tinyint(4) DEFAULT NULL,
        `value` bigint(20) DEFAULT NULL,
      PRIMARY KEY (`ID`,`REV`),
      KEY `FKE093BE4AEB88DFB` (`REV`),
      CONSTRAINT `FKE093BE4AEB88DFB` FOREIGN KEY (`REV`) REFERENCES `DesignRevisionEntity`     (`id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8
      

      解決方法:

      固定.如果有人需要答案:

      問題是,envers忽略了在properties標(biāo)簽內(nèi)寫的任何內(nèi)容.當(dāng)我以這種方式刪除標(biāo)簽時(shí):

      <properties name="uniqueProps" unique="true">
          <property name="containerId" index="ParamValsContainerIdIndx"/>
          <property name="parameterId" index="ParamValsParamIdIndx"/>
          <property name="containerType" column="CONTAINER_TYPE">
              <type name="org.hibernate.type.EnumType">
                  <param name="enumClass">platform.server.dataservices.model.ContainerType</param>
                  <param name="type">4</param>
              </type>
          </property>
      </properties>
      

      變成了:

      <property name="containerId" index="ParamValsContainerIdIndx"/>
      <property name="parameterId" index="ParamValsParamIdIndx"/>
      <property name="containerType" column="CONTAINER_TYPE">
        <type name="org.hibernate.type.EnumType">
          <param name="enumClass">platform.server.dataservices.model.ContainerType</param>
          <param name="type">4</param>
        </type>
      </property>
      

      這樣,所有屬性都被審計(jì),但我仍然需要三元組(containerId,parameterId,containerType)是唯一的.最終的解決方案是:

      <property name="containerId" index="ParamValsContainerIdIndx"/>
      <property name="parameterId" index="ParamValsParamIdIndx"/>
      <property name="containerType" column="CONTAINER_TYPE">
        <type name="org.hibernate.type.EnumType">
          <param name="enumClass">platform.server.dataservices.model.ContainerType</param>
          <param name="type">4</param>
        </type>
      </property>
      
      <properties name="uniqueProps" unique="true">
        <property name="containerId" insert="false" update="false"/>
        <property name="parameterId" insert="false" update="false"/>
        <property name="containerType" insert="false" update="false"/>
      </properties>
      
      來源:https://www./content-1-283951.html

        本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約