<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    czmchen

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      17 隨筆 :: 0 文章 :: 24 評論 :: 0 Trackbacks

    2009年12月17日 #

    web.xml加入
    <taglib>
        <taglib-uri>/WEB-INF/c.tld</taglib-uri>
        <taglib-location>/WEB-INF/c.tld</taglib-location>
    </taglib>

    c.tld一般在jstl JAR里面可以找到!

    在JSP中加入文件頭
    <%
    @ taglib  uri="/WEB-INF/c.tld" prefix="c"%>
    <%@ page isELIgnored="false" %>

    接著就可以使用EL表達式了
    posted @ 2010-04-19 17:33 陳周敏 閱讀(577) | 評論 (0)編輯 收藏

    SQL語句:
    1 select * from tableName where tableName.id in (select max(tableName.id) from tableName group by tableName.name having count(tableName.id) >1 )


    posted @ 2010-04-15 16:23 陳周敏 閱讀(289) | 評論 (0)編輯 收藏

    標(biāo)記下,總結(jié)下經(jīng)驗


    select清空option
    1 document.getElementById("type").options.length = 0;
    select創(chuàng)建option
    1 
    2 function addOption(objSelect,optionVal,optionText)      {
    3                 var   _o = document.createElement("option"); 
    4                  _o.text = optionText;
    5                  _o.value = optionVal;
    6                  objSelect.add(_o);
    7  }
    8 


    posted @ 2010-04-06 17:52 陳周敏 閱讀(228) | 評論 (0)編輯 收藏

    由于開發(fā)的需要,要用到xfire,對于開發(fā)我比較關(guān)心的是安全和速度!所以就找了xfire中的ws-security,利用它的安全證書和key,安全足夠了

    先到網(wǎng)上下載最新版的xfire,一般都去官方網(wǎng)站下載,了解下詳情!其官網(wǎng)為http://xfire.codehaus.org
    現(xiàn)在最新版為1.2.6,把xfire-all-1.2.6.jar xfire-distribution-1.2.6.zip下載

    準備前,先看看ws-securitye的步驟,在http://xfire.codehaus.org/WS-Security里面可以看到,它提示我們installed Unlimited Strength Jurisdiction Policy Files,我就在http://java.sun.com/j2se/1.5.0/download.jsp里面下載兩個包,因為我安裝的是jdk1.6最新版,在http://java.sun.com/j2se/1.5.0/download.jsp最下面的Other Downloads的Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0,點擊下載,下載下來后,按照里面的步驟,把這兩個jar放到
    Java/jre6/lib/security里面,修改java.security,把
    security.provider.6=com.sun.security.sasl.Provider改為
    security.provider.6=org.bouncycastle.jce.provider.BouncyCastleProvider
    其效果為
    security.provider.1=sun.security.provider.Sun
    security.provider.2=sun.security.rsa.SunRsaSign
    security.provider.3=com.sun.net.ssl.internal.ssl.Provider
    security.provider.4=com.sun.crypto.provider.SunJCE
    security.provider.5=sun.security.jgss.SunProvider
    security.provider.6=org.bouncycastle.jce.provider.BouncyCastleProvider
    #security.provider.6=com.sun.security.sasl.Provider
    security.provider.7=org.jcp.xml.dsig.internal.dom.XMLDSigRI
    security.provider.8=sun.security.smartcardio.SunPCSC
    security.provider.9=sun.security.mscapi.SunMSCAPI



    準備工作做好后,解壓xfire-distribution-1.2.6.zip,然后你會看到xfire-1.2.6這個文件夾,進去,你會看到有個examples文件夾,再進去,你就發(fā)現(xiàn)很多demo啦,在這里就找到了ws-security的demo

    啟動Myeclipse,看到里面的.classpath和.project文件,這個是eclipse的項目!用myeclipse打開,你發(fā)現(xiàn)都不正確,這些錯誤我就不理!

    新建一個Web Progect項目,項目名隨你命名。設(shè)置下該項目,點擊該項目,右鍵,properties,找到Java Compiler,修改項目的jdk為1.5以上(里面用到的有注入)!解壓xfire-distribution-1.2.6.zip,進入ws-security文件夾下,進入src下,再進入main的文件夾,把里面的文件全部都拷貝到你新建的項目的src下。點中該項目,右鍵,新建Source Folder,命名為test。后退,找到test的文件夾,把里面的文件全部拷貝到項目test的文件夾下。后退,再把web-inf里面的web.xml拷貝到項目里面,替換。最后在項目中加入jar,在xfire-1.2.6根文件夾下面有個lib,把這些lib全部放到項目的web-inf下的lib文件夾中,把xfire-all-1.2.6.jar也加入到項目中。整個項目的結(jié)構(gòu)為:



    生成key:在ws-security根目錄下有個keys的文件夾,雙擊進去,運行g(shù)enerateServerKey.bat,將默認的key生成。里面的參數(shù)讓你們研究,很好用(上面我跳過不安裝j2se1.4就是因為有這個)!生成后,將serverKey.rsa和serverStore.jks扔到META-INF\xfire下,有個相同的那就替換,clientStore.jks同理

    修改服務(wù)器參數(shù):在org.codehaus.xfire.client下的BookClient.java,把變量SERVICE_NAMESPACE的值改為
    http://localhost:端口號/上下文路徑/BookService,下面的都同理。要修改到的文件META-INF\xfire下的services.xml。記得把http://xfire.codehaus.org修改為http://localhost:端口號/上下文路徑/BookService。因為http://xfire.codehaus.org不開放那些接口


    修改完畢后,把項目部署到tomcat,啟動服務(wù)器后,org.codehaus.xfire.client下運行BookClientEnc.java
    。運行后會報下面的錯誤
    Running client : Encryption Client
    Looking 
    for isbn : 0123456789 .Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xml/utils/URI$MalformedURIException
        at org.apache.ws.security.message.WSSecEncrypt.doEncryption(WSSecEncrypt.java:
    407)
        at org.apache.ws.security.message.WSSecEncrypt.doEncryption(WSSecEncrypt.java:
    399)
        at org.apache.ws.security.message.WSSecEncrypt.encryptForInternalRef(WSSecEncrypt.java:
    306)
        at org.apache.ws.security.message.WSSecEncrypt.build(WSSecEncrypt.java:
    264)
        at org.apache.ws.security.action.EncryptionAction.execute(EncryptionAction.java:
    62)
        at org.apache.ws.security.handler.WSHandler.doSenderAction(WSHandler.java:
    192)
        at org.codehaus.xfire.security.wss4j.WSS4JOutHandler.invoke(WSS4JOutHandler.java:
    158)
        at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:
    131)
        at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:
    79)
        at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:
    114)
        at org.codehaus.xfire.client.Client.invoke(Client.java:
    336)
        at org.codehaus.xfire.client.XFireProxy.handleRequest(XFireProxy.java:
    77)
        at org.codehaus.xfire.client.XFireProxy.invoke(XFireProxy.java:
    57)
        at $Proxy0.findBook(Unknown Source)
        at org.codehaus.xfire.client.BookClient.executeClient(BookClient.java:
    63)
        at org.codehaus.xfire.client.BookClientEnc.main(BookClientEnc.java:
    23)
    Caused by: java.lang.ClassNotFoundException: org.apache.xml.utils.URI$MalformedURIException
        at java.net.URLClassLoader$
    1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
         
    16 more

    這是因為你還沒把xalan.jar加入去,到http://www.apache.org/dyn/closer.cgi/xml/xalan-j 下載最新版
    ,現(xiàn)在最新去到2_7_1,找到xalan-j_2_7_1-bin.zip,把其下載后,添加xalan.jar到項目

    再運行,如果出現(xiàn)下面的結(jié)果,那就正常啦
    Running client : Encryption Client
    Looking for isbn : 0123456789 ....Using XFire : Dan Diephouse


    我的做好的示例文件在http://www.tkk7.com/Files/czmchen/ws-security.rar可以下載,下載后要做的事情就是把jar按上面的方法加進去,因為jar太大了,上傳不上!還有要改下tomcat的端口為8001,再部署項目

    posted @ 2010-01-15 09:51 陳周敏 閱讀(1575) | 評論 (0)編輯 收藏

    進入weblogic后臺,配置數(shù)據(jù)庫連接池。因為我的項目數(shù)據(jù)庫是ORACLE,那就以O(shè)racle的配置作為示例:

    我的示例weblogic是8.x,其他版本都同理,找到參數(shù)后即可

    進入后臺后,單擊左邊的mydomain—>Services—>JDBC—>Connection Pools
    新建我就不說了,在我的文章里面有weblogic的數(shù)據(jù)源連接create

    9.x的要解鎖,那就先解鎖。點擊你想設(shè)置的數(shù)據(jù)源的名稱進去。進去后點擊上面的菜單Connections

    看到參數(shù)設(shè)置了吧。

    Initial Capacity:100   (初始化容器的連接數(shù))
    Maximum Capacity:1000  (容器中最大的連接數(shù)1000,如果超過/還沒到1000就會報超出最大連接的錯誤,原因你的Oracle安裝數(shù)據(jù)庫的時候其池沒設(shè)置大小,現(xiàn)在你也可以設(shè)置。設(shè)置方法:找到Oracle的init.ora文件這個文件一般在oracle/admin/數(shù)據(jù)庫SID/pfile里面。找到large_pool_size這一句,把這一句刪除,那就不受限制了。注意:沒受限制的情況下不要調(diào)這個參數(shù)太大了,35000就OK了,太大的時候數(shù)據(jù)庫會承受不起)
    Capacity Increment:15   (一次增加多少個connection)
    Statement Cache Size:50 (緩存大小)

    按下下面的Advanced Options "Show",設(shè)置詳細的配置
    下面是JNDI的自動回收設(shè)置,比較重要,調(diào)幾個重要的參數(shù),其他的默認
    Test Frequency:3600(測試頻率,這個會消耗資源。這個看你的項目需要,一般代碼寫得比較好的可以設(shè)置長點時間
    把下面三個都打上勾。通過測試,發(fā)現(xiàn)連接沒關(guān)的就會被回收(詳細說明可以看下面的參數(shù)說明)
    Test Reserved Connections
    Test Created Connections
    Test Released Connections

    Inactive Connection Timeout:60(無效連接超時!這個會在指定的時間內(nèi),回收無效連接)

    網(wǎng)上有些人說設(shè)置這些參數(shù)后一定的時間會出現(xiàn)java.lang.OutOfMemoryError的錯誤
    解決的方法就是調(diào)大JVM的內(nèi)存,在啟動時對jvm設(shè)置內(nèi)存限度
    通過修改commom\bin\commEnv.cmd文件來增加內(nèi)存分配
    修改的部分如下:
    :bea
    if "%PRODUCTION_MODE%" == "true" goto bea_prod_mode
    set JAVA_VM=-jrockit
    set MEM_ARGS=-Xms768m -Xmx1024m
    set JAVA_OPTIONS=%JAVA_OPTIONS% -Xverify:none
    goto continue
    :bea_prod_mode
    set JAVA_VM=-jrockit
    set MEM_ARGS=-Xms768m -Xmx1024m//這些看你內(nèi)存定1G的就設(shè)置=-Xms256m -Xmx512m
    goto continue

    :sun
    if "%PRODUCTION_MODE%" == "true" goto sun_prod_mode
    set JAVA_VM=-client
    set MEM_ARGS=-Xms768m -Xmx1024m -XX:MaxPermSize=256m
    set JAVA_OPTIONS=%JAVA_OPTIONS% -Xverify:none
    goto continue
    :sun_prod_mode
    set JAVA_VM=-server
    set MEM_ARGS=-Xms768m -Xmx1024m -XX:MaxPermSize=256m//這個就解決了java.lang.OutOfMemoryError的錯誤
    goto continue
    將這里的內(nèi)存分配修改后見效。

    連接屬性參數(shù)說明:

      * Initial Capacity:創(chuàng)建連接池時所創(chuàng)建的數(shù)據(jù)庫連接的數(shù)目。
      * Maximum Capacity: 連接池中連接的最大數(shù)目。
      * Capacity Increment: 連接池容量在最大容量限制范圍內(nèi)的增量。
      * LoginDelay: 在創(chuàng)建每個物理數(shù)據(jù)庫連接之前要延遲的秒數(shù)。
      * Allow Shrinking: 將該項設(shè)置為true時,如果沒有使用額外的連接,則允許連接池把容量減小到InitialCapacity。
      * Shrink Frequency: 在減小連接池容量之前要等待的秒數(shù)。如果將Shrink Frequency設(shè)置為true,那么也必須將Allow Shrinking設(shè)置為true。
      * Test Frequency: 數(shù)據(jù)庫連接測試之間間隔的秒數(shù)。在每個Refresh Period時間間隔之后,如果設(shè)置了TestTableName,就會使用TestTableName測試未使用的數(shù)據(jù)庫連接。
      * Test Reserved Connections: 如果選擇了這個選項,服務(wù)器會在把連接提供給客戶端之前對其進行測試。
      * Test Created Connections: 如果選擇了這個選項,就會在創(chuàng)建一個JDBC連接之后和在把它添加到JDBC連接池中的可用連接列表之前,對該JDBC連接進行測試。
      * Test Released Connections: 如果選擇了這個選項,服務(wù)器就會在把連接返回給連接池之前對其進行測試。
      * Test Table Name: 用于JDBC連接測試的數(shù)據(jù)庫表名。如果指定了Test Frequency,并且選擇了Test Reserved Connections、Test Created Connections或Test Released Connections,則Table Name是必需的

    連接屬性參數(shù)說明來源于網(wǎng)上,大家從你項目角度設(shè)置
    最后別忘記點最下面的APPLY按鈕
    posted @ 2010-01-08 17:22 陳周敏 閱讀(2373) | 評論 (0)編輯 收藏

    最近開發(fā)用的Weblogic的JNDI數(shù)據(jù)源連接,可是JNDI沒有自動回收連接的功能!
    項目不知道哪里代碼寫的時候沒有關(guān)閉連接,造成有些連接是死連接
    這樣很容易造成數(shù)據(jù)庫崩潰或者沒連接

    我的思路就是想把這個項目的用戶都關(guān)閉,回收資源
    我的PL/SQL中運行命令
    SELECT s.Sid, s.Serial#,p.spid, s.USERNAME,s.OSUser,
    s.Program  
    FROM  V$Process p,V$session s WHERE p.addr=s.paddr(+ORDER BY s.Sid

    有人用

    alter system kill session 'sid,serial#' ;這個命令來殺死,可是資源不立刻回收


    運行下面的語句就可以回收資源
    查出連接用戶后,在CMD中輸入orakill 數(shù)據(jù)庫名 SPID(EXP:orakill orcl XXX)


    posted @ 2010-01-06 08:37 陳周敏 閱讀(7327) | 評論 (0)編輯 收藏

    記錄dom的學(xué)習(xí)經(jīng)驗。下次忘記的時候直接來拿

    <select id="typevalue" onChange="modifyType();">

    <option value="1" id="0">11</option>

    <option value="2" id="1">22</option>

    <option value="3" id="2">33</option>

    <option value="4" id="3">44</option>

    <option value="5" id="4">55</option>

    <option value="6" id="5">66</option>

    <option value="7" id="10">77</option>

    </select>



    獲取選中的option的text值
    var typevalue = document.getElementById("typevalue");
    var typevalueText = typevalue.options[typevalue.selectedIndex].text;

    獲取選中的option的ID值
    var typevalue = document.getElementById("typevalue");
    var typevalueId = typevalue.options[typevalue.selectedIndex].id;

    posted @ 2009-12-17 15:01 陳周敏 閱讀(875) | 評論 (0)編輯 收藏

    主站蜘蛛池模板: 国产AV无码专区亚洲AV手机麻豆| 亚洲美女视频网站| 日本免费A级毛一片| 亚洲熟妇色自偷自拍另类| 成人毛片免费播放| 特黄特色的大片观看免费视频| 亚洲av无码一区二区三区乱子伦 | 日韩亚洲国产二区| 午夜免费福利视频| 亚洲精品色在线网站| 亚洲va无码手机在线电影| 免费看片A级毛片免费看| 久久er国产精品免费观看2| 亚洲精品国产精品| 亚洲精品成人av在线| 亚洲第一永久AV网站久久精品男人的天堂AV | 亚洲av无码成人影院一区| 亚洲国产精品无码中文字| 日韩中文字幕在线免费观看| 无码av免费一区二区三区| 日本视频免费观看| 亚洲va成无码人在线观看| 国产AV无码专区亚洲AV漫画| 午夜毛片不卡高清免费| 7m凹凸精品分类大全免费| 香蕉视频免费在线播放| 亚洲AV色吊丝无码| 久久噜噜噜久久亚洲va久| 国产一级一片免费播放| 国产在线观看麻豆91精品免费| 亚洲一级片免费看| 国产精品国产亚洲区艳妇糸列短篇| 亚洲国产成人综合| 亚洲AV人无码激艳猛片| 亚洲精品自产拍在线观看| 国产a级特黄的片子视频免费 | 无码欧精品亚洲日韩一区| 亚洲精品456播放| 国产精品另类激情久久久免费| 1000部拍拍拍18勿入免费视频下载| 国产性生大片免费观看性|