yanmin

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

          #

          // 焦點(diǎn)
          window.CommonPatPersonSearchFrame.document.CommonPatPersonSearchForm.txtSearchCode.focus();
          posted @ 2006-09-01 17:14 yanmin 閱讀(468) | 評論 (1)編輯 收藏

          function AddItem(setter,dropdownValue){
          ??// obtain the dropdownlist control
          ??var ct1 = null;
          ??if (setter == "OperateDoctor1"){
          ???ctl = document.OTRequestForm.ddOperateDoctor1Subspecialty;
          ??}
          ??if (setter == "OperateDoctor2"){
          ???ctl = document.OTRequestForm.ddOperateDoctor2Subspecialty;
          ??}
          ??if (setter == "RequestDoctor"){
          ???ctl = document.OTRequestForm.ddRequestDoctorSubspecialty;
          ??}
          ??if (ctl != null){
          ???clearDropdown(ctl);
          ??}
          ??// get the text and value
          ??var subSpecInfo =? dropdownValue.split("&&");
          ??for (i=0; i<subSpecInfo.length; i++){
          ???// create a new option
          ???var newOpt = document.createElement("option");
          ???var subSpec = subSpecInfo[i].split("|");
          ???newOpt.text = subSpec[1];
          ???newOpt.value = subSpec[0];
          ???ctl.add(newOpt);
          ??}
          ???
          }
          posted @ 2006-09-01 17:11 yanmin 閱讀(536) | 評論 (0)編輯 收藏

          得到CVS里所有文件清單

          用WINCVS 不能得到所有CVS里的文件清單,以EXCEL形式。

          現(xiàn)介紹用這個方法:

          1: check out? 最新CVS所有文件。
          2: 用批處理刪除其中的CVS目錄和一些無用的class 文件和其他一些文件。
          3: 用ultraEdit 軟件, 多文件查找,只填寫目錄和選中搜索子目錄,和保存到新文件。


          此批處理文件用來參數(shù)CVS目錄和一些有標(biāo)志的文件或目錄

          @echo On
          @Rem 刪除CVS版本控制目錄

          @REM 刪除所有有規(guī)律的目錄
          @for /r . %%a in (.) do @if exist "%%a\CVS" rd /s /q "%%a\CVS"

          @REM 刪除所有有規(guī)律的文件
          @for /r . %%a in (.) do @if exist "%%a\EJS*.*" del /f /s /q "%%a\EJS*.*"

          @for /r . %%a in (.) do @if exist "%%a\_*.*" del /f /s /q "%%a\_*.*"

          @Rem for /r . %%a in (.) do @if exist "%%a\CVS" @echo "%%a\CVS"

          @echo Mission Completed.
          @pause

          posted @ 2006-09-01 17:09 yanmin 閱讀(354) | 評論 (0)編輯 收藏

          進(jìn)入首頁立刻會彈出一個窗口,或者按一個連接或按鈕彈出,通常在這個窗口里會顯示一些注意事項(xiàng)、版權(quán)信息 、警告、歡迎光顧之類的話或者作者想要特別提示的信息。只要往該頁面的HTML里加入幾段Javascript代碼即可實(shí)現(xiàn).

          ????? window.open ('page.html', 'newwindow', 'height=100, width=400, top=0,
          ????? left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=n o,
          ????? status=no') //這句要寫成一行


          參數(shù)解釋:
            
            <SCRIPT LANGUAGE="javascript"> js腳本開始;
            window.open 彈出新窗口的命令;
            'page.html' 彈出窗口的文件名;
            'newwindow' 彈出窗口的名字(不是文件名),非必須,可用空''代替;
            height=100 窗口高度;
            width=400 窗口寬度;
            top=0 窗口距離屏幕上方的象素值;
            left=0 窗口距離屏幕左側(cè)的象素值;
            toolbar=no 是否顯示工具欄,yes為顯示;
            menubar,scrollbars 表示菜單欄和滾動欄。
            resizable=no 是否允許改變窗口大小,yes為允許;
            location=no 是否顯示地址欄,yes為允許;
            status=no 是否顯示狀態(tài)欄內(nèi)的信息(通常是文件已經(jīng)打開),yes為允許;
            </SCRIPT> js腳本結(jié)束


          【1、最基本的彈出窗口代碼】
          ?????   
          ?????   <SCRIPT LANGUAGE="javascript">
          ?????   <!--
          ?????   window.open ('page.html')
          ?????   -->
          ?????   </SCRIPT>
          ?????   
          ?????   因?yàn)橹且欢蝚avascripts代碼,所以它們應(yīng)該放在<SCRIPT
          ????? LANGUAGE="javascript">標(biāo)簽和</script>之間。<!-- 和
          ????? -->是對一些版本低的瀏覽器起作用,在這些老瀏覽器中不會將標(biāo)簽中的代碼作為文本顯示出來。要養(yǎng)成這個好習(xí)慣啊。window.open
          ????? ('page.html')
          ????? 用于控制彈出新的窗口page.html,如果page.html不與主窗口在同一路徑下,前面應(yīng)寫明路徑,絕對路徑(http://)和相對路徑(../)均可。用單引號和雙引號都可以,只是不要混用。這一段代碼可以加入HTML的任意位置,<head>和</head>之間可以,<body>間</body>也可以,越前越早執(zhí)行,尤其是頁面代碼長,又想使頁面早點(diǎn)彈出就盡量往前放。
          ?????  
          ?????   【2、經(jīng)過設(shè)置后的彈出窗口】
          ?????   
          ?????   下面再說一說彈出窗口的設(shè)置。只要再往上面的代碼中加一點(diǎn)東西就可以了。
          我們來定制這個彈出的窗口的外觀,尺寸大小,彈出的位置以適應(yīng)該頁面的具體情況。
          ?????   
          ?????   <SCRIPT LANGUAGE="javascript">
          ?????   <!--
          ?????   window.open ('page.html', 'newwindow', 'height=100, width=400, top=0,
          ????? left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=n o,
          ????? status=no') //這句要寫成一行
          ?????   -->
          ?????   </SCRIPT>
          ?????   ?????   
          ?????   【3、用函數(shù)控制彈出窗口】
          ?????   
          ?????   下面是一個完整的代碼。
          ?????   <html>
          ?????   <head>
          ?????   <script LANGUAGE="JavaScript">
          ?????   <!--
          ?????   function openwin() {
          ?????   window.open ("page.html", "newwindow", "height=100, width=400, toolbar
          ????? =no, menubar=no, scrollbars=no, resizable=no, location=no, status=no")
          ????? //寫成一行
          ?????   }
          ?????   //-->
          ?????   </script>
          ?????   </head>
          ?????   <body onload="openwin()">
          ?????   任意的頁面內(nèi)容...
          ?????   </body>
          ?????   </html>
          ?????   這里定義了一個函數(shù)openwin(),函數(shù)內(nèi)容就是打開一個窗口。在調(diào)用它之前沒有任何用途。怎么調(diào)用呢?

          ?????   方法一:<body onload="openwin()"> 瀏覽器讀頁面時彈出窗口;
          ?????   方法二:<body onunload="openwin()"> 瀏覽器離開頁面時彈出窗口;
          ?????   方法三:用一個連接調(diào)用:
          ?????   <a href="#" onclick="openwin()">打開一個窗口</a>
          ?????   注意:使用的“#”是虛連接。
          ?????   方法四:用一個按鈕調(diào)用:
          ?????   <input type="button" onclick="openwin()" value="打開窗口">
          ?????  
          ?????  
          ?????   【4、同時彈出2個窗口】
          ?????   
          ?????    對源代碼稍微改動一下:
          ?????   
          ?????   <script LANGUAGE="JavaScript">
          ?????   <!--
          ?????   function openwin() {
          ?????   window.open ("page.html", "newwindow", "height=100, width=100, top=0,
          ????? left=0,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=n o,
          ????? status=no")//寫成一行
          ?????   window.open ("page2.html", "newwindow2", "height=100, width=100, top=1
          ????? 00, left=100,toolbar=no, menubar=no, scrollbars=no, resizable=no, loca
          ????? tion=no, status=no")//寫成一行
          ?????   }
          ?????   //-->
          ?????   </script>
          ?????   為避免彈出的2個窗口覆蓋,用top和left控制一下彈出的位置不要相互覆蓋即可 。最后用上面說過的四種方法調(diào)用即可。
          ?????   注意:2個窗口的name(newwindows和newwindow2)不要相同,或者干脆全部為空。
          ??????
          ?????   【5、主窗口打開文件1.htm,同時彈出小窗口page.html】

          ?????   如下代碼加入主窗口<head>區(qū):
          ?????   <script language="javascript">
          ?????   <!--
          ?????   function openwin() {
          ?????   window.open("page.html","","width=200,height=200")
          ?????   }
          ?????   //-->
          ?????   </script>
          ?????   加入<body>區(qū):
          ?????   <a href="1.htm" onclick="openwin()">open</a>即可。
          ??????
          ?????   【6、彈出的窗口之定時關(guān)閉控制】
          ?????   
          ?????   下面我們再對彈出的窗口進(jìn)行一些控制,效果就更好了。如果我們再將一小段
          ????? 代碼加入彈出的頁面(注意是加入page.html的HTML中,可不是主頁面中,否則 ...),讓它10秒后自動關(guān)閉是不是更酷了?
          ????? 首先,將如下代碼加入page.html文件的<head>區(qū):
          ?????   <script language="JavaScript">
          ?????   function closeit()
          ?????   {
          ?????   setTimeout("self.close()",10000) //毫秒
          ?????   }
          ?????   </script>
          ?????   然后,再用<body onload="closeit()">
          ????? 這一句話代替page.html中原有的<BODY>這一句就可以了。(這一句話千萬不要忘記寫啊!這一句的作用是調(diào)用關(guān)閉窗
          ????? 口的代碼,10秒鐘后就自行關(guān)閉該窗口。)
          ?????   【7、在彈出窗口中加上一個關(guān)閉按鈕】

          ?????   <FORM>
          ?????   <INPUT TYPE='BUTTON' VALUE='關(guān)閉' onClick='window.close()'>
          ?????   </FORM>
          ?????   呵呵,現(xiàn)在更加完美了!

          ?????   【8、內(nèi)包含的彈出窗口-一個頁面兩個窗口】
          ?????   上面的例子都包含兩個窗口,一個是主窗口,另一個是彈出的小窗口。通過下面的例子,你可以在一個頁面內(nèi)完成上面的效果。

          ?????   <html>
          ?????   <head>
          ?????   <SCRIPT LANGUAGE="JavaScript">
          ?????   function openwin()
          ?????   {
          ?????   OpenWindow=window.open("", "newwin", "height=250, width=250,toolbar=no
          ????? ,scrollbars="+scroll+",menubar=no");
          ?????   //寫成一行
          ?????   OpenWindow.document.write("<TITLE>例子</TITLE>")
          ?????   OpenWindow.document.write("<BODY BGCOLOR=#ffffff>")
          ?????   OpenWindow.document.write("<h1>Hello!</h1>")
          ?????   OpenWindow.document.write("New window opened!")
          ?????   OpenWindow.document.write("</BODY>")
          ?????   OpenWindow.document.write("</HTML>")
          ?????   OpenWindow.document.close()
          ?????   }
          ?????   </SCRIPT>
          ?????   </head>
          ?????   <body>
          ?????   <a href="#" onclick="openwin()">打開一個窗口</a>
          ?????   <input type="button" onclick="openwin()" value="打開窗口">
          ?????   </body>
          ?????   </html>
          ?????   看看OpenWindow.document.write()里面的代碼不就是標(biāo)準(zhǔn)的HTML嗎?只要按照
          ????? 格式寫更多的行即可。千萬注意多一個標(biāo)簽或少一個標(biāo)簽就會出現(xiàn)錯誤。記得用 OpenWindow.document.close()結(jié)束啊。
          ?????   【9、終極應(yīng)用--彈出的窗口之Cookie控制】
          ?????   回想一下,上面的彈出窗口雖然酷,但是有一點(diǎn)小毛病(沉浸在喜悅之中,一定
          ????? 沒有發(fā)現(xiàn)吧?)比如你將上面的腳本放在一個需要頻繁經(jīng)過的頁面里(例如首頁),那么每次刷新這個頁面,窗口都會彈出一次,是不是非常煩人?:-(
          ?????   有解決的辦法嗎?Yes! ;-) Follow me.我們使用cookie來控制一下就可以了。
          ?????   首先,將如下代碼加入主頁面HTML的<HEAD>區(qū):
          ?????   <script>
          ?????   function openwin(){
          ?????   window.open("page.html","","width=200,height=200")
          ?????   }
          ?????   function get_cookie(Name) {
          ?????   var search = Name + "="
          ?????   var returnvalue = "";
          ?????   if (document.cookie.length > 0) {
          ?????   offset = document.cookie.indexOf(search)
          ?????   if (offset != -1) {
          ?????   offset += search.length
          ?????   end = document.cookie.indexOf(";", offset);
          ?????   if (end == -1)
          ?????   end = document.cookie.length;
          ?????   returnvalue=unescape(document.cookie.substring(offset, end))
          ?????   }
          ?????   }
          ?????   return returnvalue;
          ?????   }  
          ?????   function loadpopup(){
          ?????   if (get_cookie('popped')==''){
          ?????   openwin()
          ?????   document.cookie="popped=yes"
          ?????   }
          ?????   }
          ?????   </script>
          ?????   然后,用<body
          ????? onload="loadpopup()">(注意不是openwin而是loadpop啊!)替換主頁面中原有的<BODY>這一句即可。你可以試著刷新一下這個頁面或重新進(jìn)
          ????? 入該頁面,窗口再也不會彈出了。真正的Pop-Only-Once!
          ?????   寫到這里彈出窗口的制作和應(yīng)用技巧基本上算是完成了

          posted @ 2006-05-25 11:11 yanmin 閱讀(269) | 評論 (1)編輯 收藏


          最近做項(xiàng)目發(fā)現(xiàn)很多SQL沒有優(yōu)化: 現(xiàn)在總結(jié)幾種優(yōu)化方式.
          ?首先先了解一個SQL語句的執(zhí)行過程分3步: 語法分析(parase)與編譯,執(zhí)行,取數(shù)據(jù).
          1: 在語法分析與編譯時:oracle 使用哈希函數(shù)為SQL語句在庫緩存中分配一個SQL區(qū),
          首先檢查語句是否存在,若在,則查詢數(shù)據(jù)庫字典、檢查必須的權(quán)限。
          若無,需要語法分析與編譯。所以SQL語句存在與內(nèi)存中,將減少分析,編譯時間。
          SQL語句的分析與編譯占整個語句運(yùn)行過程的60%的時間,SQL優(yōu)化的目標(biāo)就是減少分析與編譯的時間,共享代碼。

          查詢SQL語句分析與編譯的時間:
          select * from v$sysstat
          where name in ('parse time cpu','parse time elapsed','parse count (hard)')

          一個SQL語句的響應(yīng)時間(elapsed time )應(yīng)該是服務(wù)時間+等待時間.
          服務(wù)時間= CPU執(zhí)行時間.
          等待時間 可以從v$system_event
          select total_waits, total_timeouts, time_waited, average_wait ,event
          from v$system_event
          where event='latch free'
          所以解析一個SQL語句的平均等待時間是"等待時間/parse count" 這個值接近0
          通過數(shù)據(jù)字典v$sqlare,可以查詢到頻繁被分析與編譯的SQL語句.應(yīng)該減少SQL語句的分析與編譯的次數(shù).

          2: 將常用的實(shí)體駐留內(nèi)存.
          為了減少分析與編譯時間,可以將常用的的實(shí)體如: 存儲過程,包等,盡可能駐留在內(nèi)存區(qū)域.
          ?1)預(yù)留內(nèi)存空間. sql> show parameter shared_pool_reserved_size
          ?????? 2)將頻繁使用的實(shí)體駐留在內(nèi)存中. 在使用DBMS_SHARED_POOL程序包前,必須首先運(yùn)行系統(tǒng)提供的程序包: dbmspool.sql 和prvtpool.plb
          ?在加載這兩個程序包后,自動生成所需的包.
          ????? 加載: sql> @/u01/app/oracle/product/8.17/rdbms/admin/dbmspool.sql
          ?????????? sql> @/u01/app/oracle/product/8.17/rdbms/admin/prvtpool.sql
          ????? 包DBMS_SHARED_POOL包含以下存儲過程.
          ????? dbms_shared_pool.keep 用于將實(shí)體保存內(nèi)存. dbms_shared_pool.keep(object in varchar2,[type in char default p]);
          ???????????????????????????? object 表示參數(shù)名, type 表示被駐留內(nèi)存的實(shí)體類型;P 表示存儲過程,C表示光標(biāo),R表示觸發(fā)器,默認(rèn)P
          ???????
          ????? dbms_shared_pool.unkeep 用于取消被設(shè)置進(jìn)入內(nèi)存的實(shí)體. dbms_shared_pool.unkeep(object in varchar2,[type in char default p]);
          ???????????????????????????? object 表示參數(shù)名, type 表示被駐留內(nèi)存的實(shí)體類型;P 表示存儲過程,C表示光標(biāo),R表示觸發(fā)器,默認(rèn)P
          ?????
          ????? dbms_shared_pool.size(minsize in number)

          ????? select name ,type ,source_size+code_size+parsed_size+error_size "total bytes"
          ????? from dba_object_size
          ????? where owner='SCOTT'

          3: 創(chuàng)建索引.
          ?? select index_name,table_owner, table_name, tablespace_name from all_indexes
          ??
          ?? select user_indexes.TABLE_NAME, user_indexes.INDEX_NAME,uniqueness, column_name
          ?? from user_ind_columns ,user_indexes
          ?? where user_ind_columns.INDEX_NAME=user_indexes.INDEX_NAME
          ?? and user_ind_columns.TABLE_NAME=user_indexes.TABLE_NAME
          ?? order by user_indexes.TABLE_TYPE,user_indexes.TABLE_NAME,user_indexes.INDEX_NAME,user_ind_columns.COLUMN_POSITION

          4: 創(chuàng)建聚簇(cluster): 是一組存儲在一起的有共同列或經(jīng)常一起使用的表,被聚簇的兩個表只有一個數(shù)據(jù)段.聚簇表在存儲時,在物理層將子表合并到父表中,這樣就少了表的連接時間.

          5: 創(chuàng)建哈希索引.
          ?
          6: SQL優(yōu)化器: 基于成本的優(yōu)化器CBO(cose_based)和基于規(guī)則RBO(rule_based)
          ?? sql> show parameter OPTIMIZER_MODE
          ?? 可以修改參數(shù)文件: initSID.ora,增加: optimizer_Mode={CHOOSE| RULE| FIRST_ROWS|ALL_ROWS}
          ? all_rows , first_rows(n)基于成本; rule 基于規(guī)則,choose基于規(guī)則、成本。
          ? /*+ ordered*/
          ? /*+ rule */
          ? /*+ first_rows(50) */

          ? /*+ordered star*/
          ? 寫發(fā):?
          ? alter system flush shared_pool;
          select /*+ rule */ aa from visit

          posted @ 2006-03-20 15:28 yanmin 閱讀(1069) | 評論 (1)編輯 收藏

          今天弄程序,發(fā)現(xiàn)XML中一個很陌生的東東---CDATA, 問了同事他們也不知道,只有自己查資料,后來發(fā)現(xiàn)原來很簡單的東西.

          在XML文檔中的所有文本都會被解析器解析。 
           只有在CDATA部件之內(nèi)的文本會被解析器忽略。

           下面是五個在XML文檔中預(yù)定義好的實(shí)體:
                            &lt;<小于號
                            &gt;>大于號
                            &amp;&和
                            &apos;'單引號
                            &quot;"雙引號

          實(shí)體必須以符號"&"開頭,以符號";"結(jié)尾。
                      注意: 只有"<" 字符和"&"字符對于XML來說是嚴(yán)格禁止使用的。剩下的都是合法的,為了減少出錯,使用實(shí)體是一個好習(xí)慣。

          CDATA部件
                      在CDATA內(nèi)部的所有內(nèi)容都會被解析器忽略。
                      如果文本包含了很多的"<"字符和"&"字符——就象程序代碼一樣,那么最好把他們都放到CDATA部件中。
                      一個 CDATA 部件以"<![CDATA[" 標(biāo)記開始,以"]]>"標(biāo)記結(jié)束,注意"]]>"中間沒有空格

          例如:
           <![CDATA[
                   UPDATE USERMSTR SET LOGON_SUCCESS_COUNTER = 0
                ]]>

          posted @ 2005-12-26 13:46 yanmin 閱讀(1386) | 評論 (2)編輯 收藏

          僅列出標(biāo)題
          共2頁: 上一頁 1 2 
          主站蜘蛛池模板: 家居| 鹰潭市| 蒙阴县| 肇源县| 徐水县| 安顺市| 鲜城| 宁德市| 娄底市| 越西县| 焉耆| 稻城县| 吉木萨尔县| 瓮安县| 保山市| 民权县| 辽阳县| 娄烦县| 民勤县| 紫金县| 昆山市| 镇康县| 上蔡县| 陈巴尔虎旗| 永清县| 通江县| 河北省| 宝丰县| 延寿县| 天等县| 吉木乃县| 清新县| 米脂县| 沁源县| 德兴市| 安福县| 孟州市| 凤山县| 雅安市| 綦江县| 道孚县|