寧毅網(wǎng)絡工作室

          寧毅網(wǎng)絡工作室提供專業(yè)的網(wǎng)站設(shè)計維護制作服務

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            18 隨筆 :: 93 文章 :: 28 評論 :: 0 Trackbacks
          1. 問:在JAVA與JSP中要調(diào)用一個LINUX上的腳本程序,或WINDOWS上的腳本程序,該怎么寫?
          答:System.getRuntime().exec("bash < aaa.sh");

          2. 問:java中用什么表示雙引號
          答:"""

          3. 問:如何在JSP程序里另起一個線程?
          答:
          JSP本身就是獨立線程運行而不象CGI都是獨立進程.
          一般:
          Thread t = new Thread("你的對象\");
          t.start();就可以了.
          要求你這個對象要實現(xiàn)runnable接口或繼承thread.

          4. 問:jsp如何獲得客戶端的IP地址?
          答:
          request.getRemoteAddr()
          看看各個webserver的API文檔說明,一般都有自帶的,resin和tomcat都有

          5. 問:程序終止與輸出終止
          答:
          程序中止:return;
          輸出中止:out.close();這一句相當于ASP的response.end

          6. 問:jsp中如何得到上頁的URL?
          答:request.getHeader("referer");

          7. 問:提交網(wǎng)頁的網(wǎng)頁過期功能是怎么做的?
          答:response.setHader("Expires","0");

          8. 問:在JSP網(wǎng)頁中如何知道自已打開的頁面的名稱
          答:
          request.getRequestURI() ;//文件名
          request.getRequestURL() ;//全部URL

          9. 問:提交表單后驗證沒有通過,返回提交頁面,如何使原提交頁面中的數(shù)據(jù)保留?
          答:javascript的go(-1)可以把上頁的表單內(nèi)容重新顯示出來,但password域沒有

          10. 問:如何取得http的頭信息?
          答:request.getHader(headerName);

          11. 問:&&和&的區(qū)別?
          答:
          &&是短路的與操作,也就是當?shù)匾粋€條件是false的時候,第二個條件不用執(zhí)行
          &相反,兩個條件總是執(zhí)行。

          12. 問:將*以正弦曲線的一個周期顯示出來
          答:
          public void paint(Graphics g)
          {
          for(int i=0;i<200;i++)
          g.drawString("*",i,(int)(Math.sin(i)*20)+50);
          }
          }

          13. 問:浮點數(shù)相乘后結(jié)果不精確如100.0 * 0.6 結(jié)果等于 60.0004
          答:
          這不叫錯誤,float和double是這樣實現(xiàn)的.如果要精確計算,java提供了一個
          strictfp,它的計算遵循IEEE 754標準.而普通的float和double是由地平臺浮點格式或
          硬件提
          供的額外精度或表示范圍。

          14. 問:如何獲得當前用的cursors的位置?
          答:
          int row = rs.getRow()就是當前指針行數(shù),還有
          isFrist();isBeforeFist();isLast();isAfterLast();可以測試是不是在方法名所說的
          位置

          15. 問:表單成功提交了,點后退顯示網(wǎng)頁過期
          答:
          在里面加以下代碼



          或者
          在表單頁中加上


          16. 問:接口的簡單理解
          答:接口為了規(guī)范,比如我在接口中定義了一個方法:
          getData()
          這是用來從不同的數(shù)據(jù)庫中取數(shù)據(jù)的,就是JDBC的實現(xiàn)
          對于用戶,我不要知道每種數(shù)據(jù)庫是如何做的,但我知道如何它們要實現(xiàn)這個接口就一定
          有這個方法可以供我調(diào)
          用.這樣SUN就把這個接口給各個數(shù)據(jù)庫開發(fā)商,讓他們自己實現(xiàn).
          但為什么不用繼承而用接口哩,因為繼承只能從一個你類繼承,而接口可以實現(xiàn)多個,就
          是說我實現(xiàn)的子類有多
          個規(guī)定好的接口中的功能.
          這只是簡單的理解,等你深入理解抽象的時候就知道抽象到抽象類時為什么還要再抽象
          到接口.

          17. 問:怎樣編寫一個取消按鈕(怎樣返回上一個頁面,象工具欄的后退按鈕)?
          答:
          javascript把每次瀏覽過的location都壓到了一個棧中,這個棧就是
          history,然后你如果要回到第幾個頁面它就做幾次POP操作,把最后POP出來的那個LOCA
          TION給你.
          這就是JAVASCRIPT在實現(xiàn)history.go(-x)的原理.

          18. 問:什么是回調(diào)?
          答:
          簡單說,回調(diào)用不是讓你去監(jiān)聽誰做完了什么事,而是誰做完了什么事就報告給你.
          這就是回調(diào)用的思想.例子太多了,AWT的事件,SWING事件模型都是這樣有.
          還有多線程中,如果要控制線程數(shù),不能總是查詢每個線程是否結(jié)束,要在每個線程結(jié)束
          時讓線程自己告訴主線
          程我結(jié)束了,你可以開新的線程了.

          19. 問:簡要介紹一下compareTo方法
          答:
          compareTo方法是Comparable 接口必需實現(xiàn)的方法,只要實現(xiàn)Comparable 就可以用Arr
          ays.srot()排序就象實
          現(xiàn)Runnable接口的run就能Thread()一樣.

          20. 問:如何可以從別的Web服務器檢索頁, 然后把檢索到的網(wǎng)頁的HTML代碼儲存在一個變
          量中返回過來
          答:這是一個簡單的WEB ROBOT實現(xiàn),用URL類實現(xiàn)從網(wǎng)頁中抓內(nèi)容,然后自己寫一個分析
          程序從中找出新的URL,不斷遞歸下去就行了.

          張彬 2005-11-21 17:56
          (二)
          21. 問:applet中如何獲得鍵盤的輸入
          答:application的System.in是當前系統(tǒng)的標準輸入,applet因為安全的原因不可能讀
          取當前系統(tǒng)(客戶端)的標準輸入,只能從它的ROOT組件的事件中,比如鍵盤事件中取得鍵值.

          22. 問:怎樣計算代碼執(zhí)行所花費的時間?
          答:
          代碼開始取時間,結(jié)束后取時間,相減
          long t1 = System.currentTimeMillis();
          ///////////////// your code
          long t2 = System.currentTimeMillis() ;
          long time = t2-t1;

          23. 問:如何獲在程序中獲得一個文件的ContentType?
          答:
          URL u = new URL("file:///aaa.txt");
          URLConnection uc = u.openConnection();
          String s = uc.getContentType();

          24. 問:連接池的使用是建立很多連接池,還是一個連接池里用多個連接?
          答:
          只有在對象源不同的情況下才會發(fā)生多個池化,如果你只連一結(jié)一個數(shù)據(jù)源,永遠不要用
          多個連結(jié)池.
          所以連結(jié)池的初始化一定要做成靜態(tài)的,而且應該在構(gòu)造對象之前,也就是只有在類LOA
          D的時候,別的時候不應該有任何生成新的連結(jié)池的時候。

          25. 問:JavaMail要怎么安裝?
          答:下載兩個包,一個是javamail包,另一個是jaf包。下載完直接把這兩個包不解壓
          加到CLASSPATH。

          26. 問:怎樣把地址欄里的地址鎖定?
          答:把你的服務器的可訪問目錄索引選項關(guān)閉就行了,任何服務器都有一個conf文件,里
          面都有這個選項。

          27. 問:在JAVA中怎么取得環(huán)境變量啊。比如: TEMP = C:TEMP ?
          答:String sss = System.getProperty(key)。

          28. 問:怎樣實現(xiàn)四舍五入,保留小數(shù)點后兩位小數(shù)?
          答:
          import java.text.*;
          ...
          NumberFormat nf=NumberFormat.getNumberInstance();
          nf.setMaximumFractionDigits(2);
          nf.setMinimumFractionDigits(2);
          nf.format(numb);

          29. 問:Applet和form如何通信?
          答:
          取得的參數(shù)傳到param里面



          30. 問:java-plug-in是什么?
          答:Java Runtime Environment的插件。用來運行java程序。不需要什么特別的設(shè)置。
          等于你的機器里面有了jvm。

          31. 問:WEB上面怎么樣連接上一個EXCEL表格?
          答:
          定義頁面得contentType="application/vnd.ms-excel",讓頁面以excel得形式打開。
          同樣也可以以word得形式打開:application/msword。

          32. 問:怎樣才能避免textarea字數(shù)限制?
          答:是使用了FORM的默認方法的緣故,如果什么也不寫默認是GET改用Post即可,在For
          m中定義mothod="post"。

          33. 問:為什么加了插入數(shù)據(jù)庫的
          中文,依然是亂碼?
          答:
          這要從環(huán)境看,能顯示說明你的JSP引擎沒有問題,但寫入數(shù)據(jù)庫時你的JDBC能不能處理
          中文,同
          一公司不同版本的JDBC都有支持中文和不支持中文的情況,RESIN自帶的MYSQL JDBC就不
          支持,MM
          的就支持,還有你的數(shù)據(jù)庫類型是否支持中文?CHAR的一般支持,但是否用binary存儲雙
          字節(jié)碼

          34. 問:對于JFrame,hide(),show()與setVisibel()有什么區(qū)別嗎?
          答:
          setVisible()從Component繼承過來,而hide(),show()從Window里面繼承過來。
          Makes the Window visible. If the Window and/or its owner are not yet displa
          yable, both are made
          displayable. The Window will be validated prior to being made visible. If t
          he Window is already
          visible, this will bring the Window to the front.
          區(qū)別在這。

          36. 問:sendRedirect為什么不可以轉(zhuǎn)到mms協(xié)議的地址的?response.sendRedirect("mms
          ://missiah.adsldns.org:9394");
          答:java平臺目前實現(xiàn)的protocol中并沒有mms,你可以取系統(tǒng)屬性java.protocol.han
          dler.pkgs看看它的值中有沒有mms,所以如果要想重定向到mms://host這樣和URL,只有生成
          客戶端的JAVASCRIPT讓它來重定向

          37. 問:JTable中怎樣定義各個Columns和Width和怎樣設(shè)置表格的內(nèi)容靠做靠右或居中?
          答:
          TableColumn tc = table.getColumn("Name");//取得列名為“Name”的列Handle
          int currentWidth = tc.getPreferredWidth(); //取得該列當前的寬度
          tc.setPreferredWidth(200); //設(shè)置當前列寬
          tc.setMaxWidth(200); //設(shè)置該列最大寬度
          tc.setMinWidth(50); //設(shè)置該列最小寬度

          38. 問:批操作是否可用于select語句?
          答:批操作其實是指成批理更新的操作,絕對不可能用于select操作。

          39. 問:為什么jsp路徑太深文件名太長就無法讀取文件?
          答:path不能超過255長度,不然就找不到了.這是作業(yè)系統(tǒng)的事。

          張彬 2005-11-21 17:59
          (三)
          51. 問:object的clone方法為什么不能直接調(diào)用?
          答:
          這個方法在object中是protected
          為什么要把這個方法定義為protected,這是一個折中,它的目的是想知道你這個方法在
          Object里只是一個標記,而不是一個實現(xiàn),比如

          public class Object
          {

          .............
          protected Object clone()
          {}
          }

          所以直接繼承的clone()方法并不能做任何時,你要使用這個方法就要重載這個方法并放
          寬訪問權(quán)限為public,或?qū)崿F(xiàn)cloneable接口.
          但它沒法這樣告訴你它沒有真的實現(xiàn),只好用protected 方法加以警示

          52. 問:一個頁面中如何刷新另外一個頁面?
          答:
          要求是這些面頁必須有關(guān)聯(lián),一是它們都有一個共同的頂層幀,也就是說是一個幀內(nèi)的分
          級頁面,當然可以是任意級,幀內(nèi)再分幀也可以,另一個可能是當前窗口彈出的窗口,如果沒有
          聯(lián)系,那就不可能用一個頁面刷新另一個頁面.
          幀內(nèi)只要一級一級引用就行了.
          比如在左幀中一個頁面中寫
          top.right.location.reload();那么名為right的右?guī)械捻撁婢蜁⑿?
          彈出的一樣,用open時的名稱刷新子窗口,子窗口用opener刷新主窗口

          53. 問:如何在jsp中怎么樣向客戶端寫cookies?
          答:
          Cookie coo = new Cookie(name, value);
          HttpServletResponse.addCookie(name);

          54. 問:為什么jTextField1.setText("aaabbb");jTextField2.setText("AAABBB"); 得到
          的字體寬度不一樣?
          答:就是說如果不是指定為等寬字體,每個字體的寬度都是不一樣的.因此JAVA中用Fon
          tMetrics 類來取字符寬度。

          55. 問:String kk=application/octet-stream; name="G:/SMBCrack.exe";如何得到SMBC
          rack.exe?
          答:
          這應該是解析上傳時候的二進制流得到的
          這一行里面格式是固定的,取到name="后面的字符串,然后把";去掉。
          然后取最后一個/后面的所有字符組成一個新字符串就行了。

          56. 問:如何傳值并不刷新頁面?
          答:
          彈出一個頁面進行值的選擇或者輸入,ok后使用將值傳給原窗口,使用javascript關(guān)閉
          打開的窗口即可:
          window.close();opener.focus();


          57. 問:有一個字符串:“EF0C114EA4”,如何變?yōu)閍[0] = 0xEF a[1] = 0x0C a[2] = 0x
          11 a[3] = 0x4E a[4] = 0xA4?
          答:
          String str="EF0C114EA4F";
          out.print(str+"");
          int l=str.length()/2+str.length()%2,j=0,k=0;
          String[] a=new String[l];
          for(int i=0;i");
          j+=2;
          }

          58. 問:怎樣將一個int轉(zhuǎn)換成一個四字節(jié)的byte數(shù)組?
          答:
          int x = 1234567;
          byte[] b = new byte[4];
          for(int i=0;i>( i*8)) & 0xFF;
          }

          59. 問:indexOf()的使用需要注意什么?
          答:參數(shù)是指從第幾位(1,2,3,...)開始搜索,而返回值是指搜索到的位置(0,
          1,2,3.......)注意是從零算起的。

          60. 問:在Java應用程序中如何動態(tài)的添加一個按鈕?
          答:
          這里涉及一個組件重繪的問題,組件要先于panel被顯示之處存在,如果一panel已經(jīng)顯示
          了,那么加在上面你能看到嗎?但如果在同一個panel上,先有button A,假如按下它加了butt
          on B,這時你如果使整個panel重給,那么A本身要重繪,它的事件監(jiān)聽就沒有了,當然也就加不
          成B了,所以如果要先有另一個panel,當按A時把B加在這個panel上并重繪這個paenl,其實更
          好的方法是先把B加在panel中,同一個也行.把它setVisiable(flase),按A時設(shè)為true。

          張彬 2005-11-21 18:00
          (四)
          61. 問:book mybook=new book(bookid);book是servlet,出錯。
          答:
          book是servlet,能book mybook=new book(bookid);
          說明自己實現(xiàn)了servlet容器?不然,servlet能讓你自己去調(diào)用?
          servlet如果調(diào)用其實和EJB連1%的區(qū)別都沒有,它們都是自己繼承或?qū)崿F(xiàn)一些接口,在這
          些父類或接口中實現(xiàn)了如果和容器"打交道"的方法,然后容器調(diào)用這些方法來管理它,讓它
          生成實例,池化,鈍化,銷毀,再生等.所以這樣寫是錯誤的。

          62. 問:給定一個字符串5*(5+9)/7怎樣計算出結(jié)果?
          答:
          可有兩種方法
          1。用堆棧完成
          2。最簡單的方法,不用編程,如果有任何一個數(shù)據(jù)庫的化,
          用select (5*(5+9)/7) from oneTable

          63. 問:如何實現(xiàn)遞交表單內(nèi)容的加密解密?
          答:
          如果你用IE目前只能用SSL協(xié)議,這一層不要你考慮,否則只你用你自己的工具加密傳輸
          ,接收后再解密友,至于如何加解,如果要和公認的系統(tǒng)結(jié)合,就用通用的MD5,RAS等公開算法
          ,如果你只是自己傳自己解,你隨便按你的想法把數(shù)據(jù)加上一些東西,取回來按規(guī)則減掉這些
          東西,我敢保證除你自己沒有任何人能知道解密方法.

          64. 問:為什么Integer.parseInt("+1");會拋出NumberFormatException的異常?
          答:因為"+"運行算在JAVA中被重載.系統(tǒng)無法確定你用的是算術(shù)加還是字符+。

          這一點可以在JAVASCRIPT中更好地理解:


          var a = document.t.s.value+1;
          這時a = 12345,因為document.t.s.value作為字符串.
          但var a = document.t.s.value-1;
          a 就是1233,因為系統(tǒng)知道-運算肯定是算術(shù)運行.所以把document.t.s.value
          轉(zhuǎn)換成數(shù)字.


          65. 問:hashCode() 有什么用為什么有時候需要覆蓋Object里的hashcode()方法?
          答:這就是這個對象的身份證啊,要不如何區(qū)分哪個對象。

          66. 問:怎樣在tomcat中實現(xiàn)一個定時執(zhí)行的東東?
          答:
          在應用程序啟動時自動運行。servlet2.3中定義了ServletListener,監(jiān)聽Servlet Con
          text的啟動或則關(guān)閉(可在配置文件中配置),啟動時觸發(fā)一個守護程序的運行(可以實現(xiàn)
          java.util.Timer或則javax.swing.Timer).

          67. 問:程序可以輸出自己嗎?
          答:孔德悖論這個非常有名的法則.就是說任何程序都不可能輸出自己.

          68. 問:能夠把字符轉(zhuǎn)化成ASCII碼?比如將 A 轉(zhuǎn)化成 65?
          答:
          int a=′A′;
          out.println(a);

          69. 問:如何區(qū)分輸入的文字中的全角與半角?
          答:由于不能分辨出全角和半角字符的值有什么規(guī)律,只好把全角符號牧舉出來了.

          70. 問:用戶注冊后的自動發(fā)信程序該怎么做?
          答:
          這種發(fā)信程序不考慮性能,因為不可能1秒就有一個人注冊,我們說的考慮性能的發(fā)信程
          序是指上百萬封信在隊列里要不停發(fā)送的那種,象你這個隨便怎么寫一個程序都行,沒有必要
          用JAVAMAIL.只要指定一個發(fā)信的服務器然后用cocket連它的25口就行了.
          自己用SOCKET連SMTP的25口發(fā)一封信就好象兩個鄰居之間送一樣東西,直接遞過去得了
          ,用JAVAMAIL,消息機制就是你把這個東西從郵局寄給你的鄰居了.
          (轉(zhuǎn)載文章請保留出處:北天JAVA技術(shù)網(wǎng)(www.java114.com))
          posted on 2007-01-16 10:38 寧毅網(wǎng)絡工作室 閱讀(191) 評論(0)  編輯  收藏 所屬分類: Java技術(shù)備藏
          主站蜘蛛池模板: 恩平市| 卫辉市| 寿宁县| 乾安县| 蒙城县| 新和县| 随州市| 安多县| 开化县| 宜都市| 彝良县| 乌鲁木齐县| 和政县| 微博| 和龙市| 嘉禾县| 神农架林区| 醴陵市| 博白县| 确山县| 博野县| 林芝县| 平果县| 沽源县| 贡觉县| 鄂托克旗| 偏关县| 余庆县| 奈曼旗| 连州市| 双辽市| 珠海市| 靖州| 济阳县| 剑河县| 横山县| 新闻| 辽阳县| 龙岩市| 洪雅县| 错那县|