您好,登錄后才能下訂單哦!
本篇內容主要講解“SpringBoot+JPA+Intersystems Caché數據庫的介紹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“SpringBoot+JPA+Intersystems Caché數據庫的介紹”吧!
對于Intersystems的Caché數據庫也是第一次使用,說是后關系型數據庫(Post Relational database)中的領頭羊,這個數據庫在國外貌似還挺有名,在美國和歐洲的HIS系統(醫療衛生管理信息系統)中,Caché數據庫所占的比例是最大的,被醫療界公認為首選數據庫。
Spring Data JPA 其實是由hibernate實現,那么要整合這個數據庫,其實就和平常連接mysql數據庫一樣,主要配置相對應的數據庫url、驅動、方言(在大多數情況下,Hibernate能夠根據url正確地確定使用哪種方言)等這些參數就行。
可以直接去Intersystems的官網去找例子,在官網找的了給的hibernate用例的Github地址: https://github.com/intersystems/quickstarts-java
查看hibernate配置
lib里有所需要Caché數據庫連接的jar,該jar由Intersystems廠商提供,由于maven中央庫沒有這兩個jar包,所以可以安裝到私服庫或本地庫。
org/hibernate包里面提供了 hibernate 的 Dialect 數據庫方言實現類、AbstractSQLExceptionConversionDelegate異常實現類、以及ANSIJoinFragment實現類
可以將這個org/hibernate包直接放入項目中或者打成本地jar導入,不過最好修改一下包名,防止和hibernate的包名重復。
最終得到SprinBoot的配置:
spring.datasource.url=jdbc:IRIS://127.0.0.1:1972/XXX spring.datasource.username=xxx spring.datasource.password=xxx spring.datasource.driver-class-name=com.intersystems.jdbc.IRISDriver spring.jpa.show-sql=true spring.jpa.hibernate.ddl-auto=none spring.jpa.properties.hibernate.format_sql=true spring.jpa.properties.hibernate.max_fetch_depth=1 spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.InterSystemsIRISDialect spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults=false
hibernate.dialect指定方言,如果修改過上面方言實現類的包名,要指定為改過的包名路徑。
如果出現 Disabling contextual LOB creation as createClob() method threw error : java.lang.reflect.InvocationTargetException 這個異常,要將hibernate.temp.use_jdbc_metadata_defaults 設置為 false,至于這個屬性的具體作用還沒有深究過。
配置完成以后除了自定義SQL,其余就是Spring Data JPA開發了。
到此,相信大家對“SpringBoot+JPA+Intersystems Caché數據庫的介紹”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。