lizongbo 的 編程學習

          http://618119.com

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            23 Posts :: 1 Stories :: 78 Comments :: 0 Trackbacks

          #

               摘要: 新注冊了個獨立域名,使用獨立的blog了。

          http://618119.com

          新的blog rss訂閱地址: http://feed.feedsky.com/lizongbo

          從最早的 http://blog.csdn.net/lizongbo,

          到 http://blog.donews.com/lizongbo

          再到http://www.aygfsteel.com/lizongbo

          現在終于擁有自己的域名和獨立的blog了。  閱讀全文
          posted @ 2007-10-16 09:46 lizongbo 的編程學習| 編輯 收藏

          mysql 雙機熱備配置

          1.下載mysql-noinstall-5.0.45-win32.zip
          2.解壓到E:\mysql,然后將文件夾E:\mysql\mysql-noinstall-5.0.45-win32改為E:\mysql\master
          3.再解壓到E:\mysql,然后將文件夾E:\mysql\mysql-noinstall-5.0.45-win32改為E:\mysql\slave
          4.復制E:\mysql\master\my-small.ini為E:\mysql\master\my.ini
          編輯內容:,增加log-bin和binlog-do-db參數
          示例如下:
          #skip-networking
          server-id = 1

          # Uncomment the following if you want to log updates
          #log-bin=mysql-bin

          log-bin=mysql-bin
          binlog-do-db = testdb1 #需同步數據庫  testdb1
          binlog-do-db = testdb2 #需同步數據庫  testdb2

          5.復制E:\mysql\slave\my-small.ini為E:\mysql\slave\my.ini
          編輯內容:,修改端口,
          port  = 3310

          示例如下:

          [client]
          #password = your_password
          port  = 3310
          socket  = /tmp/mysql.sock

          # Here follows entries for some specific programs

          # The MySQL server
          [mysqld]
          port  = 3310
          socket  = /tmp/mysql.sock
          skip-locking
          key_buffer = 16K
          max_allowed_packet = 1M
          table_cache = 4
          sort_buffer_size = 64K
          read_buffer_size = 256K
          read_rnd_buffer_size = 256K
          net_buffer_length = 2K
          thread_stack = 64K


          #skip-networking
          server-id = 2

          # Uncomment the following if you want to log updates
          #log-bin=mysql-bin

          master-host=127.0.0.1
          master-user=root
          master-password=
          master-port=3306
          replicate-do-db=testdb1
          replicate-do-db=testdb2

          6.保存 E:\mysql\master\my.ini.和E:\mysql\slave\my.ini

          7.在命令行下運行E:\mysql\master\bin\mysqld.exe,

          Microsoft Windows XP [版本 5.1.2600]
          (C) 版權所有 1985-2001 Microsoft Corp.

          E:\mysql\master\bin>mysqld

          8.再新開命令行,運行E:\mysql\slave\bin\mysqld.exe

          Microsoft Windows XP [版本 5.1.2600]
          (C) 版權所有 1985-2001 Microsoft Corp.

          E:\mysql\slave\bin>mysqld
          071013 21:41:06 [Warning] The syntax for replication startup options is deprecat
          ed and will be removed in MySQL 5.2. Please use 'CHANGE MASTER' instead.

          9.用mysql 客戶端 HeidiSQL連接到 127.0.0.1的3306,創建數據庫testdb1和testdb2,
          并在數據庫中新建表,然后插入一些數據.

          10.客戶端連接 到 127.0.0.1的3310,可以看見數據庫testdb1和testdb2,且數據庫中的數據與master的數據庫數據一致.

          11.t查看 E:\mysql\master\data\mysql-bin.000001 和E:\mysql\master\data\mysql-bin.index,可以看到被記錄的sql操作,

           




          posted @ 2007-10-13 21:53 lizongbo 的編程學習| 編輯 收藏


          4.4.6  Tomcat HTTPS配置
          在server.xml里配置:
          tomcat普通的https配置
              <Connector port="8443"
                         maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                         enableLookups="false" disableUploadTimeout="true"
                         acceptCount="100" scheme="https" secure="true"
                         clientAuth="false" sslProtocol="TLS"
                     keystoreFile="conf/.keystore"
                     keystorePass="lizongbo">
              </Connector>


          Tomcat使用apr之后的ssl雙向認證配置如下:

             <Connector port="8443" maxHttpHeaderSize="8192" protocol="HTTP/1.1"
                        maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                        enableLookups="false" disableUploadTimeout="true"
                        acceptCount="100" scheme="https" secure="true"
                        clientAuth="true" <!--雙向驗證-->
                        SSLEngine="on" bufferSize="8192"
                        SSLEnabled="true"
                        SSLProtocol="all"
                        SSLCipherSuite="ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL"
                        SSLCertificateFile="..\conf\ca\www.crt"
                        SSLCertificateKeyFile="..\conf\ca\www.key"
                        SSLCACertificateFile="..\conf\ca\ca.crt"
                        SSLCACertificatePath="..\conf\ca"
                        SSLVerifyDepth="15"
                        SSLVerifyClient="require"
                         />

           

          4.6.6  Squid HTTPS
          squid.conf中加上:
          https_port 3443 cert=D:/ca/www.crt key=D:/ca/www.key


          4.7.6  LightTPD HTTPS
          首先使用copy命令把 key和crt合并為一個文件,
          D:\ca>copy /b www.key+www.crt www.pem

          然后配置如下:
          $SERVER["socket"] == ":443" {
          ssl.engine = "enable"
          ssl.pemfile = "D:/ca/www.pem"
          ssl.ca-file = "D:/ca/ca.crt"
          server.name = "www"
          server.document-root = "D:/httpsdosc"
          server.errorlog = "httpserror.log"
          accesslog.filename = "httpsaccess.log"
          }
          (下面的雙向驗證沒有測試是否可用)
          如需啟用雙向驗證,則還需下面的配置參數:
          ssl.verify-peer = "enable"
          ssl.verify-depth  = 1
          參考:http://trac.lighttpd.net/trac/ticket/921


           

          posted @ 2007-10-13 13:50 lizongbo 的編程學習| 編輯 收藏

               摘要: atj2135自帶的avi轉換工具 AVIConverter,
          采用炬力ATJ2135主控芯片mp4,支持播放的avi格式為xvid編碼,分辨率為320*240。
          而我用網上的其它轉換工具進行轉換得到的avi,用電腦里 播放器可以播放,而用2135的mp4無法播放,
          于是將2135自帶的轉換工具剝離出來了,放在網上,以作備份,方便avi轉換。
          工具名是:AVIConverter,下載地址為:
          http://www.aygfsteel.com/Files/lizongbo/2135AVIConverter.part1.rar
          http://www.aygfsteel.com/Files/lizongbo/2135AVIConverter.part2.rar

          Line:488
          Char:77
          Code:0
          Error:Automation 服務器不能創建對象
          網址:http://www.aygfsteel.com/lizongbo/admin/EditPosts.aspx
          無法發布正文,只好  閱讀全文
          posted @ 2007-10-10 09:26 lizongbo 的編程學習| 編輯 收藏

          1.取出discuz的當前文件夾路徑.
          2.根據php版本,對于小于4.1.0的php,設置相應的變量.
          3.載入全局函數庫 global.func.php
          4.判斷網頁機器人,對于不允許的機器人,返回403
          5.過濾cookie
          6.初始化變量
          $charset = $dbcharset = $forumfounders = $metakeywords = $extrahead = '';
          $plugins = $hooks = $admincp = array();
          7.載入全局配置 config.inc.php
          8.判斷 論壇防御級別 作處理.
          10.載入數據庫的class庫.
          11.生成網站路徑 boardurl
          12.獲取真實ip到 onlineip
          13.正則解析ip
          14.加載論壇配置參數緩存 /forumdata/cache/cache_settings.php
          15.將settings中的變量轉換為全局變量.
          16.判斷是否啟用gzip壓縮.
          17.判斷loadctrl負載參數,對于非windows下超過負載的 情況,返回系統忙錯誤.
          18.對于幾個固定的請求,加載已經生成的緩存數據.
          19.連接數據庫.
          20.判斷用戶的安全提問
          21.

           

           

          附件下載流程 attachment.php

          1.處理 common.inc.php 流程
          2.檢查Referer頭信息
          3.檢查每日下載限制時間  periodscheck
          4.查詢附件信息檢查附件是否存在
          5.判斷是否允許下載
          6.判斷是否已經購買
          7.執行購買操作.
          8.執行下載

          posted @ 2007-08-29 10:01 lizongbo 的編程學習| 編輯 收藏

          1.搭建php版運行環境,包括數據庫和discuz php版本的運行,用于觀察了解
          2.搭建java web應用基礎庫,
          3.對沒有主鍵的標增加主鍵,用工具生成dao 層代碼.(注意jdbc的url里需要寫上charset)
          4.生成logic層代碼
          5.對應每個控制層的php,轉換成對應的spring mvc中的controller. 先從簡單的faq.php做起
          action映射使用.php后綴.

          視圖層使用jsp+jstl.

           


           

          posted @ 2007-08-29 09:43 lizongbo 的編程學習| 編輯 收藏

          由于原有模板是以.htm方式存在的,
          在轉換成jsp方式時,對其中很多通用的代碼,可以通過替換的方式直接轉換為jstl語法的.
          步驟如下:

          1.首先將所有的htm文件名替換成jsp,
          在命令行下運行 rename *.htm *.jsp即可.

          2.將bbs\forumdata\cache\style_1.php中的css變量TABLEWIDTH等,
          替換成類似${crtStyles['TABLEWIDTH']}的jstl語法.
          全部只能手工替換

          3.將*.jsp中的{lang forum_favorite}等替換成類似 <fmt:message key="faq" bundle="${forum_favorite}"/>
          使用正則表達式進行替換:
          editplus中的 查找內容為: {lang (.+)},替換內容為:<fmt:message key="faq" bundle="${\1}"/>
          Jbuilder中的查找內容為 \{lang (.+)\},Pattern為:Regular Expressions,
          替換內容為:(暫時未寫出來,打算寫程序進行替換操作)

          用java程序替換的核心代碼為:

           //替換樣式變量
                       content = content.replaceAll("FORMHASH", "formhash");
                       //替換樣式變量 ${crtStyle['TABLEWIDTH']}
                 content = content.replaceAll("\\{([A-Z0-9]+)\\}", "\\${crtStyle\\['$1'\\]}");
                       //替換國際化定義
                       //content = content.replaceAll("\\{lang (.+?)\\}",
                       //                             "<fmt:message key=\"$1\" bundle=\"\\$\\{templates\\}\"/>");
                       //對標簽屬性里的值暫時不替換
                       content = content.replaceAll("([^\"])\\{lang (.+?)\\}",
                 "$1<fmt:message key=\"$2\" bundle=\"\\$\\{templates\\}\"/>");

                       //替換單層的屬性訪問
                       content = content.replaceAll("\\$([a-z]+?)\\[([a-z]+?)\\]",
                                             "\\$\\{$1\\['$2'\\]\\}");
                       //替換標題部分的聲明
                       content = content.replaceAll("\\{template header\\}",
                                             "<%@page pageEncoding=\"UTF-8\" " +
                                             "contentType=\"text/html;" +
                                             " charset=UTF-8\"%>\n"
                                             + "<%@include file=\"/WEB-INF/" +
                                             "inc/taglibs.jspf\"%>\n" +
                                             "<jsp:include flush=\"true\" " +
                                             "page=\"header.jsp\"/>\n");
                       ////替換底部部分的聲明
                       content = content.replaceAll("\\{template footer\\}",
                                             "\n<jsp:include flush=\"true\" " +
                                             "page=\"footer.jsp\"/>");

                       //替換其它引用聲明
                       content = content.replaceAll("\\{template (.+?)\\}",
                                             "\n<jsp:include flush=\"true\" " +
                                             "page=\"$1.jsp\"/>");
                       //替換url定義
                 content = content.replaceAll("\\$indexname", "\\${settings.indexname}");
                       //替換網站名字
                       content = content.replaceAll("\\$bbname", "\\${settings.bbname}");
                       //替換導航標簽
                       content = content.replaceAll("\\$navigation", "\\${navigation}");
                       //替換一些變量
                       //content = content.replaceAll("\\$pid", "\\${pid}");
                 content = content.replaceAll("\\$([a-z_]+)(\"|<|\\))", "\\${$1}$2");

          posted @ 2007-08-29 09:42 lizongbo 的編程學習| 編輯 收藏


          前言:discuz是一個很流行的 php論壇,一時好奇,打算學習并將其功能用java實現。
          但是個人精力有限,只試著做了很小的一點功能。
          但是在此過程中總結了一些經驗:

          需要轉換實現機制的模塊



          1.計劃任務
          由于php受語言限制,必須靠外界的訪問去觸發計劃任務,而java則可以通過qutarz來做定時任務.
          因此可以采取spring配置 qutarz的方式去設置定時任務.

          2.風格機制
          使用.jsp,使用jstl語法,允許用戶寫jstl
          依然按目錄存放到templates目錄下,每個風格為一個文件夾.

          3.緩存機制
          使用oscache 標簽 來緩存頁面的方式.

          4.特殊標簽的解析 hidden標簽,reply標簽
          采取在顯示的時候,進行 jsp:include page="/tag/hidden.jsp" 這樣的方式來實現.

          5.日歷選擇框: 使用jscalendar

          6.頁面gzip壓縮,使用專門的gzip過濾器.

          7.全文檢索,使用compass.

          8.視圖層的模板.
          discuz 已經使用了 mvc的模式,只是使用自己開發的模板技術,
           D:\xampp\htdocs\bbs\templates每個文件夾為一個主題,每個主題內對應的是各種視圖的htm.
          因此在用java實現的時候,使用spring mvc ,
          視圖層使用jsp來展示.
          其中頁面的布局分為三段
          {template header} 是最上面的導航部分
          {template footer} 是最下方的版權申明等部分.
          中間部分為各具體模塊的視圖.
          后臺則是使用的固定框架,然后來合成內容的.

          9.國際化支持
          discuz使用的是 .lang.php定義數組的方式實現的,而且一次只支持一種語言
          而java開發則使用I18N方式.多種語言均使用同一個系統.

           

           1.php的array功能非常強大,而java中只能用map和list結合起來處理.
          2.在一個http請求中php的變量幾乎都是全局生效,而jstl中,則可以放到requestScope中.

          1.discuz的有些表的主鍵不是自動增長的,因此不能夠生成@GeneratedValue(strategy = GenerationType.AUTO)的注釋.
          這些表有: new String[] {
                "validating", "trades", "relatedthreads", "pushedthreads", "polls",
                "onlinetime", "memberspaces", "memberfields", "forumfields",
                "admingroups", "adminactions", "activities"}

          2.mysql的hibernate dao單元測試中,insert是無法回滾的,而delete卻可以不操作數據庫,
          因此crud單元測試的時候,導致不停的插入數據卻沒有刪除數據.
          解決辦法,在 crud 測試方法的最后加上一行代碼:  this.setComplete();

          3.mysql的jdbc需要幾個特殊設置
          a.字符編碼集必須指定.
          b.對于"0000-00-00" 這樣的默認日期,在轉化成java.sql.Date的時候會出錯,因此需要加上個zeroDateTimeBehavior屬性.

          datasource.url=jdbc:mysql://localhost:3306/discuz?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull

          4.mysql的jdbc驅動存在bug :  http://bugs.mysql.com/bug.php?id=22215

          在usergroups 表中, readaccess字段是 tinyint(3)類型,而有值為200的,mysql的jdbc就會報錯,說數字越界了.

          java.sql.SQLException: '200' in column '1' is outside valid range for the
          datatype TINYINT.

          暫時無解決辦法,采取修改200為20回避之.
          (update:后來使用Short代替byte類型)
          discuz 已經使用了 mvc的模式,只是使用自己開發的模板技術,
           D:\xampp\htdocs\bbs\templates每個文件夾為一個主題,每個主題內對應的是各種視圖的htm.

          因此在用java實現的時候,使用spring mvc ,

          視圖層使用jspx來展示.


          其中頁面的布局分為三段

          {template header} 是最上面的導航部分

          {template footer} 是最下方的版權申明等部分.

          中間部分為各具體模塊的視圖.

           

          后臺則是使用的固定框架,然后來合成內容的.



           

          posted @ 2007-08-29 09:41 lizongbo 的編程學習| 編輯 收藏


          a.?? ?安裝vmware5.5。

          b.?? ?安裝trixbox2.0
          1.?? ?下載trixbox22.0的vmware鏡像文件,下載地址為:
          http://jaist.dl.sourceforge.net/sourceforge/asteriskathome/trixbox-2.0-vmware.zip
          2.?? ?解壓 trixbox-2.0-vmware.zip 到E:\trixbox 2.0。
          3.?? ?啟動VMware,選擇“Open Existing VM or Term”,
          ?
          4.?? ?然后選擇打開 E:\trixbox 2.0\Red Hat Enterprise Linux 4.vmx.
          ?
          5.?? ?啟動虛擬機.
          ?
          6.?? ?創建uuid,點“OK”進行確認。
          ?
          7.?? ?點“OK”進行確認。(也可以先修改虛擬機的光驅設置為正確的配置)
          ?
          8.?? ?鼠標點進虛擬機,敲回車立即進入Linux(或者等系統自己啟動)
          ?
          9.?? ?敲回車,準備修改硬件配置
          ?
          10.?? ?移除原有的網絡配置,選擇“Remove Configuration”,然后敲回車.
          ?
          11.?? ?新的網絡配置。選擇“Configure”,然后回車
          ?
          12.?? ?配置ip地址,敲空格 選中“Use dynamic IP configuration (BOOTP/DHCP)”
          ?
          13.?? ?然后按 tab鍵 切換到“OK”,敲回車進行確認。
          ?
          14.?? ?登錄linxu,用戶名是root,密碼是password。
          ?
          15.?? ?登錄成功。屏幕上顯示配置trixbox的url.
          ?
          16.?? ?用hostname查看主機名,用ifconfig查看ip信息。
          ?

          c.?? ?配置trixbox.
          1.?? ?在瀏覽器中打開: http://10.108.20.188/
          然后點右上角“switch”切換到 Admin Mode
          ?
          2.?? ?輸入登錄信息,用戶名是maint,密碼是password
          ?
          3.?? ?進入freepbx配置界面。
          ?
          4.?? ?也可以從最上方一排菜單里轉到freePBX配置, Asterisk? --> freePBX
          ?
          5.?? ?點“Setup”.
          ?
          6.?? ?進入配置界面,再點左邊的“Extensions”,進入分機號碼配置界面。
          ?
          7.?? ?Device使用默認選項“Generic SIP Device ” ,然后 點“submit”.
          ?
          8.?? ?填寫分機號,和用戶名字。這里填寫的分機號是300,名字也填的300。
          ?
          9.?? ?拉動表單到下方,填寫密碼,也就是 secret的值,這里也填的300。
          ?
          10.?? ?再拉動表單到最下方,點“Submite”進行提交。
          ?
          11.?? ?分機添加成功,用同樣方法,再添加”301”
          ?
          12.?? ?點左上方的紅色“Apply Configuration Changes”,提交更改。
          ?

          13.?? ?確認。
          ?

          14.?? ?到這里為止,服務端的分機號碼配置成功了。

          d.?? ?配置X-Lite 3.0
          1.?? ?X-Lite 的下載地址為:
          https://s3.amazonaws.com/0W6GQ7E1ZFEHHTW1F082/downloads/X-Lite_Win32_1006e_34025.exe
          2.?? ?運行X-Lite_Win32_1006e_34025.exe進行安裝。
          3.?? ?運行X-Lite。
          ?
          4.?? ? 在主界面上點右鍵,從菜單中選擇“SIP Accounts Settiings”,進入賬號配置界面
          ?
          5.?? ?點“Add”添加賬號,Display Name為:300,User name為:300,Password為:300,Authorization user name為:300,Domain為:10.108.20.188。鉤上“Register with domain and receive incoming calls”, Send outbound via選擇“domain”.然后點“確定”.
          ?
          6.?? ?該賬號默認為 Enabled。,點“Close”。
          ?

          7.?? ?300登錄成功。
          ?

          8.?? ?打電話給自己。輸入號碼:300,然后撥號。
          ?
          9.?? ?收到呼叫。
          ?

          10.?? ?linux控制臺輸出日志:
          ?

          11.?? ?web界面查詢呼叫日志。


          e.?? ?安裝Asterisk-IM 插件
          1.下載最新的插件asterisk-im 1.2 beta,
          http://www.igniterealtime.org/projects/wildfire/plugins-beta/asterisk-im.jar
          2. 安裝插件,但是由于我用的數據庫是oracle,而插件中的腳本只更新了mysql的
          因此需要手工用mysql的腳本改成oracle的來執行,主要是將字段類型bigint改成number.
          再復制asterisk-im.jar到D:\xmpp\wildfire\plugins下面(光這一點就折騰了很久)。
          3.啟動wildfire。
          f.?? ?配置Asterisk-IM 參數信息
          先在trixbox中增加管理賬號:Config Edit ,編輯 manager.conf
          增加:
          [wildfire]
          secret=mypass
          allow=10.108.20.1.1/255.255.0.0
          read = system,call,log,verbose,command,agent,user
          write = system,call,log,verbose,command,agent,user

          wildfire中進行配置.
          2.打開http://10.108.20.198:9090/plugins/asterisk-im/phone-settings.jsp
          Add Server,
          Server Name 必須是:? asterisk1.local (也就是vmware鏡像的虛擬機里的主機名.)
          Server Address為: 10.108.20.188
          Port為: 5038
          Username:wildfire
          Password:mypass

          添加成功之后,Configure Phone Manager
          ?Drop-down device selection:? ??? ?鉤上? Yes
          ?Asterisk Context為: from-internal
          ?然后點 save.
          圖標綠色,表示連接成功了.
          然后到 Phone Mappings 中映射電話.

          在xmpp客戶端Spark中 call對方即可.或者直接輸入電話號碼進行呼叫.


          posted @ 2007-01-22 10:30 lizongbo 的編程學習| 編輯 收藏

          在 PLSQL Developer 中進行文本導入的操作步驟。

          主菜單--〉工具-->文本導入器。
          選擇文本文件,進行相關配置,可以生成一個導入數據的配置文件。
          保存為 xxx.def
          樣本為:

          [General]
          ID=Import Definition
          Version=1
          Header=False
          SingleLineRecord=True
          QuoteChar="
          TableOwner=SMK
          OracleTable=ZNEW20070109
          OverwriteDuplicates=True
          CommitCount=100
          EmptyTable=False

          [ODBC]
          DSN=
          UserName=
          Command=
          Kind=0

          [Fields]
          Field=0
          FieldStart=0
          FieldStartValue=0
          FieldEnd=2
          FieldEndValue=,
          OracleSQL=
          OracleField=FTRANSACTIONID (VARCHAR2)
          OracleType=0
          ODBCField=
          ODBCFieldNo=0
          ODBCType=0
          ODBCCType=0
          ODBCLength=0
          OracleParamNo=0

          Field=1
          FieldStart=0
          FieldStartValue=0
          FieldEnd=2
          FieldEndValue=,
          OracleSQL=
          OracleField=FFEETERMINAL (VARCHAR2)
          OracleType=0
          ODBCField=
          ODBCFieldNo=0
          ODBCType=0
          ODBCCType=0
          ODBCLength=0
          OracleParamNo=0

          Field=2
          FieldStart=0
          FieldStartValue=0
          FieldEnd=2
          FieldEndValue=,
          OracleSQL=
          OracleField=FDESTADDR (VARCHAR2)
          OracleType=0
          ODBCField=
          ODBCFieldNo=0
          ODBCType=0
          ODBCCType=0
          ODBCLength=0
          OracleParamNo=0

          Field=3
          FieldStart=0
          FieldStartValue=0
          FieldEnd=2
          FieldEndValue=,
          OracleSQL=to_date('#', 'yyMMddHH24MISS')
          OracleField=FSUBMITTIME (DATE)
          OracleType=2
          ODBCField=
          ODBCFieldNo=0
          ODBCType=0
          ODBCCType=0
          ODBCLength=0
          OracleParamNo=0

          Field=4
          FieldStart=0
          FieldStartValue=0
          FieldEnd=2
          FieldEndValue=,
          OracleSQL=to_date('#', 'yyMMddHH24MISS')
          OracleField=FDELIVERTIME (DATE)
          OracleType=2
          ODBCField=
          ODBCFieldNo=0
          ODBCType=0
          ODBCCType=0
          ODBCLength=0
          OracleParamNo=0

          posted @ 2007-01-17 12:44 lizongbo 的編程學習| 編輯 收藏

          僅列出標題
          共3頁: 1 2 3 下一頁 
          主站蜘蛛池模板: 新乡县| 呼图壁县| 宜兰县| 宁城县| 江都市| 斗六市| 聊城市| 磐安县| 胶州市| 永城市| 通山县| 雷州市| 什邡市| 尉犁县| 吐鲁番市| 永靖县| 万全县| 图木舒克市| 安乡县| 都昌县| 溆浦县| 公主岭市| 昌吉市| 竹山县| 辛集市| 荔浦县| 双辽市| 宜宾市| 蛟河市| 四川省| 桃园市| 汝城县| 临洮县| 托克托县| 遵义市| 富平县| 错那县| 阿瓦提县| 玉屏| 图片| 甘孜|