2017年4月20日 星期四

關閉PostgreSQL閒置連線

Refer:

How to close idle connections in PostgreSQL automatically?

http://stackoverflow.com/questions/12391174/how-to-close-idle-connections-in-postgresql-automatically
 
WITH inactive_connections AS (
    SELECT
        pid,
        rank() over (partition by client_addr order by backend_start ASC) as rank
    FROM 
        pg_stat_activity
    WHERE
        -- Exclude the thread owned connection (ie no auto-kill)
        pid <> pg_backend_pid( )
    AND
        -- Exclude known applications connections
        application_name !~ '(?:psql)|(?:pgAdmin.+)'
    AND
        -- Include connections to the same database the thread is connected to
        datname = current_database() 
    AND
        -- Include connections using the same thread username connection
        usename = current_user 
    AND
        -- Include inactive connections only
        state in ('idle', 'idle in transaction', 'idle in transaction (aborted)', 'disabled') 
    AND
        -- Include old connections (found with the state_change field)
        current_timestamp - state_change > interval '5 minutes' 
)
SELECT
    pg_terminate_backend(pid)
FROM
    inactive_connections 
WHERE
    rank > 1 -- Leave one connection for each application connected to the database

 

Get all procedural , user defined functions

Refer: http://stackoverflow.com/questions/16632117/get-all-procedural-user-defined-functions

select 
    pp.proname,
    pl.lanname,
    pn.nspname,
    pg_get_functiondef(pp.oid)
from pg_proc pp
inner join pg_namespace pn on (pp.pronamespace = pn.oid)
inner join pg_language pl on (pp.prolang = pl.oid)
where pl.lanname NOT IN ('c','internal') 
  and pn.nspname NOT LIKE 'pg_%'
  and pn.nspname <> 'information_schema';

2017年4月18日 星期二

取得使用者自訂Function

Refer:

http://stackoverflow.com/questions/16632117/get-all-procedural-user-defined-functions


PostgreSQL 取得自訂的Functions, procedures
select 
    pp.proname,
    pl.lanname,
    pn.nspname,
    pg_get_functiondef(pp.oid)
from pg_proc pp
inner join pg_namespace pn on (pp.pronamespace = pn.oid)
inner join pg_language pl on (pp.prolang = pl.oid)
where pl.lanname NOT IN ('c','internal') 
  and pn.nspname NOT LIKE 'pg_%'
  and pn.nspname <> 'information_schema';

2017年4月7日 星期五

Web JAVA出現『應用程式已被安全設定值封鎖(或過期)等』問題,該如何排除?

Refer:

http://www1.jihsun.com.tw/QA/java.htm

http://www1.jihsun.com.tw/QA/java-2.htm

問題:執行Web Java Applet出現「您的安全設定值讓應用程式無法在過時或過期的Java版本執行」

(只要設定好,再重開瀏覽器,就可以執行了,不需要重新開機。)

解決方式,可請參考日盛網頁排除方式。

排除方式二:請參照下方步驟1.2

步驟1:[控制台][程式集] → 開啟JAVA控制面板

點選[一般]頁籤,按[關於(B)],確認JAVA版本是不是JAVA 8 UPDATE 25

步驟2:點選[一般]頁籤,按[設定值(S)],『在我的電腦上保留暫存檔案(K)』不勾,再點
『刪除檔案』,僅勾『追蹤和記錄檔案』,在按確認兩次回到『一般』頁籤。

點選[安全]頁籤,將安全層次調整為『高』,再點『編輯網站清單(S)』,依序將以下六組網址複製(CTRL+C),貼上(CTRL+V)『新增』清單內。

http://jsjustweb.jihsun.com.tw
http://rt.moneydj.com.tw
http://www.jihsun.com.tw
http://www.moneydj.com
http://rt2.moneydj.com.tw
https://jfeclweb.jihsun.com.tw/

點選[進階]頁籤,勾選下圖紅框處,按套用,再按確定。

以上動作完畢,請關機重新啟動電腦~

2017年4月5日 星期三

Jasper Reports Embedding Images 嵌入圖片

Refer:

http://dltj.org/article/embedding-graphics-in-jaspersoft-report-files/

http://wiki.emprisecorporation.com/images/f/fb/Emprise-jasper-reports-images.pdf

在調色板加入新圖, Expression Class 為 java.lang.String ,Image Expression 輸入如下:


newjava.io.StringBufferInputStream(neworg.w3c.tools.codec.Base64Decoder($V{IMAGE_BYTES}).processString())

這不需要另外 import 其他的 Base64 Decoder,ireport lib裡已有。