{"id":4144,"date":"2023-02-15T15:06:46","date_gmt":"2023-02-15T07:06:46","guid":{"rendered":"https:\/\/www.zeroheart.xyz\/wordpress\/?p=4144"},"modified":"2023-02-15T15:06:46","modified_gmt":"2023-02-15T07:06:46","slug":"jpa%e5%a2%9e%e5%8a%a0%e4%b8%80%e4%b8%aa%e6%8b%a6%e6%88%aa%e5%99%a8","status":"publish","type":"post","link":"https:\/\/www.zeroheart.xyz\/wordpress\/?p=4144","title":{"rendered":"jpa\u589e\u52a0\u4e00\u4e2a\u62e6\u622a\u5668"},"content":{"rendered":"\n<p>\u53c2\u8003\uff1a<a href=\"https:\/\/blog.csdn.net\/C_tongxue\/article\/details\/124621259\">(34\u6761\u6d88\u606f) Hibernate\u62e6\u622a\u5668\u5b57\u6bb5\u52a0\u5bc6\u89e3\u5bc6_\u6211\u662f\u5927\u5927\u5927\u5927\u5e08\u5144\u7684\u535a\u5ba2-CSDN\u535a\u5ba2_hibernate \u62e6\u622a\u5668<\/a><\/p>\n\n\n\n<p>1.\u589e\u52a0\u4e00\u4e2ajpa\u7684\u62e6\u622a\u5668<br>2.\u53c2\u8003\uff1ahttps:\/\/blog.csdn.net\/C_tongxue\/article\/details\/124621259<br>3.nacos \u589e\u52a0\u914d\u7f6e\u5982\u4e0b<br>spring:<br>\u00a0 jpa:<br>\u00a0\u00a0\u00a0 properties:<br>\u00a0\u00a0\u00a0\u00a0\u00a0 hibernate:<br>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 session_factory:<br>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 interceptor: xxx.xxx.xxx<\/p>\n\n\n\n<p>\u4ee3\u7801\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">package com.xxx.xxx;\n\nimport com.alibaba.fastjson.JSON;\nimport lombok.extern.slf4j.Slf4j;\nimport org.hibernate.EmptyInterceptor;\nimport org.hibernate.type.Type;\nimport org.springframework.stereotype.Component;\nimport java.io.Serializable;\n\/**\n * YqInterceptor\n *\n * @author zeroheart\n * @since 2023\/2\/15\n *\/\n@Component\n@Slf4j\npublic class YqInterceptor extends EmptyInterceptor {\n    \/**\n     * \u66f4\u65b0\u65f6\u8c03\u7528\n     *\n     * @param entity        \u5b9e\u4f53\u7c7b\n     * @param id            \u4e3b\u952e\n     * @param currentState  \u5f53\u524d\u5b9e\u4f53\u7c7b\u5bf9\u5e94\u7684\u503c\n     * @param previousState \u4fee\u6539\u524d\u5b9e\u4f53\u7c7b\u5bf9\u5e94\u7684\u503c\n     * @param propertyNames \u5b57\u6bb5\u540d\n     * @param types         \u5b9e\u4f53\u7c7b\u6bcf\u4e2a\u5c5e\u6027\u7c7b\u578b\u5bf9\u5e94hibernate\u7684\u7c7b\u578b\n     * @return true | false true\u624d\u4f1a\u4fee\u6539\u6570\u636e\n     *\/\n    @Override\n    public boolean onFlushDirty(Object entity, Serializable id, Object[] currentState, Object[] previousState, String[] propertyNames, Type[] types) {\n        log.error(\"onFlushDirty\");\n        log.error(\"propertyNames:\"+ JSON.toJSONString(propertyNames));\n        log.error(\"currentState:\"+JSON.toJSONString(currentState));\n        log.error(\"previousState:\"+JSON.toJSONString(previousState));\n        return super.onFlushDirty(entity, id, currentState, previousState, propertyNames, types);\n    }\n\n    \/**\n     * \u52a0\u8f7d\u65f6\u8c03\u7528\n     *\n     * @param entity        \u5b9e\u4f53\u7c7b\n     * @param id            \u4e3b\u952e\n     * @param state         \u5b9e\u4f53\u7c7b\u5bf9\u5e94\u7684\u503c\n     * @param propertyNames \u5b57\u6bb5\u540d\n     * @param types         \u5b9e\u4f53\u7c7b\u6bcf\u4e2a\u5c5e\u6027\u7c7b\u578b\u5bf9\u5e94hibernate\u7684\u7c7b\u578b\n     * @return true | false true\u624d\u4f1a\u4fee\u6539\u6570\u636e\n     *\/\n    @Override\n    public boolean onLoad(Object entity, Serializable id, Object[] state, String[] propertyNames, Type[] types) {\n        log.error(\"onLoad\");\n        log.error(\"propertyNames:\"+JSON.toJSONString(propertyNames));\n        log.error(\"state:\"+JSON.toJSONString(state));\n        return super.onLoad(entity, id, state, propertyNames, types);\n    }\n\n    \/**\n     * \u4fdd\u5b58\u65f6\u8c03\u7528\n     *\n     * @param entity        \u5b9e\u4f53\u7c7b\n     * @param id            \u4e3b\u952e\n     * @param state         \u5b9e\u4f53\u7c7b\u5bf9\u5e94\u7684\u503c\n     * @param propertyNames \u5b57\u6bb5\u540d\n     * @param types         \u5b9e\u4f53\u7c7b\u6bcf\u4e2a\u5c5e\u6027\u7c7b\u578b\u5bf9\u5e94hibernate\u7684\u7c7b\u578b\n     * @return true | false true\u624d\u4f1a\u4fee\u6539\u6570\u636e\n     *\/\n    @Override\n    public boolean onSave(Object entity, Serializable id, Object[] state, String[] propertyNames, Type[] types) {\n        log.error(\"onSave\");\n        log.error(\"propertyNames:\"+JSON.toJSONString(propertyNames));\n        log.error(\"state:\"+JSON.toJSONString(state));\n        return super.onSave(entity, id, state, propertyNames, types);\n    }\n}\n<\/pre>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u53c2\u8003\uff1a(34\u6761\u6d88\u606f) Hibernate\u62e6\u622a\u5668\u5b57\u6bb5\u52a0\u5bc6\u89e3\u5bc6_\u6211\u662f\u5927\u5927\u5927\u5927\u5e08\u5144\u7684\u535a\u5ba2-CSDN\u535a\u5ba2_hibern [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,12],"tags":[273,272],"_links":{"self":[{"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/4144"}],"collection":[{"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4144"}],"version-history":[{"count":2,"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/4144\/revisions"}],"predecessor-version":[{"id":4146,"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/4144\/revisions\/4146"}],"wp:attachment":[{"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4144"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4144"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zeroheart.xyz\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4144"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}