java中PL层_安装pljava - RuralHunter的个人空间 - OSCHINA - 中文开源技术交流社区
pljava是pgsql跟java的橋接,安裝以后就可以在pgsql里面調(diào)用java了。這里記錄一下我在ubuntu server下安裝的過程
1. 下載源碼編譯
很簡單,下載,解壓,設(shè)置一下JAVA_HOME(如果沒設(shè)的話),然后make
2. 把生成的build目錄里面的所有內(nèi)容安裝到任一地方,我的是/opt/PostgreSQL/pljava
$ ls -l /opt/PostgreSQL/pljava
總用量 212
drwxr-xr-x 5 test test 4096 2012-06-07 13:20 classes
-rw-r--r-- 1 test test 5258 2012-06-07 13:19 deploy.jar
-rw-r--r-- 1 test test 43281 2012-06-07 13:20 examples.jar
drwxr-xr-x 2 test test 4096 2012-06-07 13:19 jni
drwxr-xr-x 3 test test 4096 2012-06-07 13:20 objs
-rw-r--r-- 1 test test 150172 2012-06-07 13:19 pljava.jar
3. 將objs/pljava.so復(fù)制到$PG_INSTALL/lib/postgresql下面
4. jvm.so必須在系統(tǒng)lib路徑里,ubuntu下這么做:
cd /etc/ld.so.conf.d
vi java.conf
把包含jvm.so的目錄寫進(jìn)去,我這里是:/usr/lib/jvm/default-java/jre/lib/amd64/server
然后: ldconfig -v,應(yīng)該可以在輸出里看到j(luò)vm.so的裝入:
/usr/lib/jvm/default-java/jre/lib/amd64/server:
libjvm.so -> libjvm.so
5. 修改postgresql.conf并重啟pgsql
#------------------------------------------------------------------------------
# CUSTOMIZED OPTIONS
#------------------------------------------------------------------------------
custom_variable_classes = 'pljava' # list of custom variable class names
pljava.classpath = '/opt/PostgreSQL/pljava/pljava.jar'
6. 進(jìn)到源碼的src/sql下面
psql [your_db]
應(yīng)該可以看到相關(guān)函數(shù)安裝成功。另外一種辦法是直接用它提供的deploy.jar跑java,我沒用。
測試:
在psql中跑如下命令:
CREATE FUNCTION getsysprop(VARCHAR)
RETURNS VARCHAR
AS 'java.lang.System.getProperty'
LANGUAGE java;
SELECT getsysprop('user.home');
應(yīng)該可以看到通過java獲取的用戶路徑。
總結(jié)
以上是生活随笔為你收集整理的java中PL层_安装pljava - RuralHunter的个人空间 - OSCHINA - 中文开源技术交流社区的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 哪个银行保本理财收益最高?
- 下一篇: 北交所新股申购数量有上限吗?