国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
2010-7月
7.1   解釋一下什么是BPEL?
BPEL:全稱為Business Process Execution Language,即業(yè)務處理執(zhí)行語言,是一種使用XML編寫的編程語言。用于自動化業(yè)務流程,也曾經被稱作WSBPEL和 BPEL4WS。廣泛使用于Web服務相關的項目開發(fā)中,優(yōu)點為具有可移植性和有效保護了投資。
BPEL是一門用于自動化業(yè)務流程的形式規(guī)約語言。 用XML文檔寫入BPEL中的流程能在Web 服務之間以標準化的交互方式得到精心組織。這些流程能夠在任何一個符合BPEL規(guī)范的平臺或產品上執(zhí)行。 所以,通過允許顧客們在各種各樣的創(chuàng)作工具和執(zhí)行平臺之間移動這些流程,BPEL使得他們保護了他們在流程自動化上的投資。盡管以前想使業(yè)務流程定義標準化,但BPEL已經引起了史無前例的興趣,而且它最早在軟件供應商中獲得大量認可。
 
7.2   如何得到Java應用程序的可用內存?
答:如下代碼實現(xiàn)取得總的內存大小和可用內存大小,并打印到控制臺上
public class MemoryExp {
public static void main(String[] args) {
System.out.println("Total Memory"+Runtime.getRuntime().totalMemory());
System.out.println("Free Memory"+Runtime.getRuntime().freeMemory());
}
}
 
7.3   如何查找數(shù)據(jù)庫重復記錄
法一: 用Group by語句 此查找很快的
select count(num), max(name) from student –查找表中num列重復的,列出重復的記錄數(shù),并列出他的name屬性
group by num
having count(num) >;1 –按num分組后找出表中num列重復,即出現(xiàn)次數(shù)大于一次
法二:當表比較大(例如10萬條以上)時,這個方法的效率之差令人無法忍受,需要另想辦法:
執(zhí)行下面SQL語句后就可以顯示所有DRAWING和DSNO相同且重復的記錄
SELECT * FROM EM5_PIPE_PREFAB
WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5_PIPE_PREFAB D –D相當于First,Second
WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND
EM5_PIPE_PREFAB.DSNO=D.DSNO);
 
7.4   簡述你對IoC(Inversion of Control)的理解
一個類需要用到某個接口的方法,我們需要將類A和接口B的實現(xiàn)關聯(lián)起來,最簡單的方法是類A中創(chuàng)建一個對于接口B的實現(xiàn)C的實例,但這種方法顯然兩者的依賴(Dependency)太大了。而IoC的方法是只在類A中定義好用于關聯(lián)接口B的實現(xiàn)的方法,將類A,接口B和接口B的實現(xiàn)C放入IoC的 容器(Container)中,通過一定的配置由容器(Container)來實現(xiàn)類A與接口B的實現(xiàn)C的關聯(lián)。
 
7.5   Hibernate中的update()和saveOrUpdate()的區(qū)別
saveOrUpdate()方法可以實現(xiàn)update()的功能,但會多些步驟,具體如下:
如果對象在該session中已經被持久化,不進行操作;對象的標識符屬性(identifier property)在數(shù)據(jù)庫中不存在或者是個暫時的值,調用save()方法保存它;如果session中的另一個對象有相同的標識符拋出一個異常;以上皆不符合則調用update()更新之。
 
7.6  獲取Oracle中年月日
不推薦用substr方法獲取,推薦用 to_char方法
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual;   //日期轉化為字符串
select to_char(sysdate,'yyyy') as nowYear   from dual;   //獲取時間的年
select to_char(sysdate,'mm')    as nowMonth from dual;   //獲取時間的月 
其他的類似
 
7.7   如何寫一個不需要main方法的應用程序?
可以使用靜態(tài)代碼塊來實現(xiàn)一個可以執(zhí)行但并沒有main方法的Java應用程序。如下面的代碼是所示:
class MainMethodNot
{
static
{
System.out.println("This java program have run without the run method");
System.exit(0);
}
}
上面的代碼可以運行是因為static代碼塊會在java類被加載的時候被執(zhí)行,而且是在main方法被調用之前。在運行時,JVM會在執(zhí)行靜態(tài)代碼塊以后搜索main方法,如果不能找到main方法,就會拋出一個異常,為了避免這個異常,可以使用System.exit(0)來結束應用程序。
 
7.12  session的load()和get()的區(qū)別
Session.load/get方法均可以根據(jù)指定的實體類和id從數(shù)據(jù)庫讀取記錄,并返回與之對應的實體對象。其區(qū)別在于:
如果未能發(fā)現(xiàn)符合條件的記錄,get方法返回null,而load方法會拋出一個ObjectNotFoundException;load方法可返回實體的代理類實例,而get方法永遠直接返回實體類;load方法可以充分利用內部緩存和二級緩存中的現(xiàn)有數(shù)據(jù),而get方法則僅僅在內部緩存中進行數(shù)據(jù)查找,如沒有發(fā)現(xiàn)對應數(shù)據(jù),將越過二級緩存,直接調用SQL完成數(shù)據(jù)讀取。
 
 7.13  pageEncoding和contentType的區(qū)別
 在JSP標準的語法中,如果pageEncoding屬性存在,那么JSP頁面的字符編碼方式就由pageEncoding決定,否則就由contentType屬性中的charset決定,如果charset也不存在,JSP頁面的字符編碼方式就采用默認的ISO-8859-1。
JSP要經過兩次的“編碼”,第一階段會用pageEncoding,第二階段會用utf-8至utf-8,第三階段就是由Tomcat出來的網頁, 用的是contentType。
第一階段是jsp編譯成.java,它會根據(jù)pageEncoding的設定讀取jsp,結果是由指定的編碼方案翻譯成統(tǒng)一的UTF-8 JAVA源碼(即.java),如果pageEncoding設定錯了,或沒有設定,出來的就是中文亂碼。
第二階段是由JAVAC的JAVA源碼至java byteCode的編譯,不論JSP編寫時候用的是什么編碼方案,經過這個階段的結果全部是UTF-8的encoding的java源碼。
JAVAC用UTF-8的encoding讀取java源碼,編譯成UTF-8 encoding的二進制碼(即.class),這是JVM對常數(shù)字串在二進制碼(java encoding)內表達的規(guī)范。
第三階段是Tomcat(或其的application container)載入和執(zhí)行階段二的來的JAVA二進制碼,輸出的結果,也就是在客戶端見到的,這時隱藏在階段一和階段二的參數(shù)contentType就發(fā)揮了功效
 
 7.14   退出系統(tǒng)后如何防止點擊ie后退按鈕返回系統(tǒng)
我們先分析為什么通過瀏覽器返回訪問的原因:
1.瀏覽器緩存
   我們有時候會發(fā)現(xiàn)是退出系統(tǒng)了可是通過歷史記錄或者直接訪問地址,最后一次操作的數(shù)據(jù)或顯示的列表還在那里,一堆人在冒汗,說你系統(tǒng)不安全!
   其實這時候并沒有訪問到系統(tǒng),是本地的瀏覽器緩存在做怪。
2.沒有做權限攔截
   很多人在做程序的時候可能會忘記去注意權限分配了,有些功能是要求用戶在登錄狀態(tài)下使用的,甚至是某個角色的用戶才可以操作的。如果沒有做這些限制,很容 
   易被人利用,最簡單的就是通過地址直接訪問
這兩個方面內容是造成問題出現(xiàn)的絕大部分原因.
解決方案:
1.禁止緩存
如:jsp
<%
response.setHeader("Pragma","No-Cache");
response.setHeader("Cache-Control","No-Cache");
response.setDateHeader("Expires", 0);
%>
2.利用session在頁面進行攔截
如:jsp原碼
String userid= (String)session.getValue("userid");
if(userid==""||userid==null)//判斷指定session值的存在與否,來檢查是否已經登錄
{
  跳轉到提示頁面
}
else
{
  其他主體程序代碼
}
利用以上兩個方法同時使用,能夠解決大部分問題,包括瀏覽器返回的問題。
3.利用struts配置攔截器
 
 7.15   域名和ip地址關系
一個域名只能是對應一個IP,但是一個IP地址卻可以對應多個域名。
一臺機器上面就一個ip地址,但可以有很多的網站放在上面,每個網站都有自己的域名。這就是一個ip對應多個域名的例子。
 
7.16   cellpadding與cellspacing的屬性
  • 單元格(cell) -- 表格的內容
  • 單元格邊距(表格填充)(cellpadding) -- 代表單元格外面的一個距離,用于隔開單元格與單元格空間
  • 單元格間距(表格間距)(cellspacing) -- 代表表格邊框與單元格補白的距離,也是單元格補白之間的距離
  • 上圖說明了表格的幾個屬性,其中黑色部分就是單元格(cell),白色的區(qū)域是單元格邊距(表格填充),灰色的區(qū)域是單元格間距(表格間距)。

  •  
    7.21    線程的簡單例子
    class secThread extends Thread
    {
        void run()
       {
            //......
       }
    }

    public class exThread
    {
        public static void main(String args[])
       {
           secThread st= new secThread();
           st.start();
       }
    }

     
    7.22    JavaScript indexOf() 方法
     定義和用法
    indexOf() 方法可返回某個指定的字符串值在字符串中首次出現(xiàn)的位置。
    語法
    stringObject.indexOf(searchvalue,fromindex)
    參數(shù) 描述
    searchvalue 必需。規(guī)定需檢索的字符串值。
    fromindex 可選的整數(shù)參數(shù)。規(guī)定在字符串中開始檢索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略該參數(shù),則將從字符串的首字符開始檢索。
    說明
    該方法將從頭到尾地檢索字符串 stringObject,看它是否含有子串 searchvalue。開始檢索的位置在字符串的 fromindex 處或字符串的開頭(沒有指定 fromindex 時)。如果找到一個 searchvalue,則返回 searchvalue 的第一次出現(xiàn)的位置。stringObject 中的字符位置是從 0 開始的。
     
    7.23   數(shù)據(jù)庫并發(fā)產生的五個問題:
    1、臟讀:一個事務讀到另一事務未提交的更新數(shù)據(jù)。
               在A事務內,由于B事務對A記錄進行了修改但未提交,而A事務馬上讀取了這個提交的值,在這個值的基礎上進了一系列的操作,但另一個事務突然出回滾,導致數(shù)據(jù)值不一致的問題。
    2、虛讀:一個事務讀到另一事務已提交的新插入的數(shù)據(jù)。
           在A事務內,由于B事務對A表的插入操作并提交,導致在A事務中前后查詢得到關于整張表相關的值不一致的問題
    3、不可重復讀:一個事務讀到另一事務已提交的更新數(shù)據(jù)。
           在A事務內,由于B事務對A記錄的修改并提交,導致在A事務中前后查詢得到同一記錄的值不一樣的問題。
    4、第一類丟失更新:撤銷一個事務時,把其他事務已提交的更新數(shù)據(jù)覆蓋。
           在A事務內,讀取得到某一記錄的值,同時在B事務把同一記錄的值進行了修改并提交,A事務基于原來讀取到的值進行修改后回滾,在數(shù)據(jù)庫中得到丟失了B事務更新的結果。(這種問題在數(shù)據(jù)庫中基本不會出現(xiàn))。
    5、第二類丟失更新:這是不可重復讀中的特例,一個事務覆蓋另一事務已提交的更新數(shù)據(jù)。
           在A事務內,讀取得到某一記錄的值,同時在B事務把同一記錄的值進行了修改并提交,A事務基于原來讀取到的值進行修改后提交,在數(shù)據(jù)庫中得到丟失了B事務更新的結果。
     
    7.26   什么是servlet鏈
    與UNIX和DOS命令中的管道類似,你也可以將多個servlet以特定順序鏈接起來。在servlet鏈中,一個servlet的輸出被當作下一個servlet的輸入,而鏈中最后一個servlet的輸出被返回到瀏覽器。
    servlet鏈接提供了將一個servlet的輸出重定向為另一個servlet的輸入的能力。這樣,你就可以劃分工作,從而使用一系列servlet來實現(xiàn)它。另外,你還可以將servlet組織在一起以提供新的功能。
     
    7.27   配置SSH時常用Filter?
    Springhibernate事物管理的filterOpenSessionInViewFilter),Springstruts編碼管理的filterCharacterEncodingFilter)
     
    7.28   如何讓你的一個系統(tǒng)能支持異構數(shù)據(jù)庫.你會怎么樣設計?
    答:異構數(shù)據(jù)庫系統(tǒng)是相關的多個數(shù)據(jù)庫系統(tǒng)的集合,可以實現(xiàn)數(shù)據(jù)的共享和透明訪問,每個數(shù)據(jù)庫系統(tǒng)在加入異構數(shù)據(jù)庫系統(tǒng)之前本身就已經存在,擁有自己的DMBS。異構數(shù)據(jù)庫的各個組成部分具有自身的自治性,實現(xiàn)數(shù)據(jù)共享的同時,每個數(shù)據(jù)庫系統(tǒng)仍保有自己的應用特性、完整性控制和安全性控制。異構數(shù)據(jù)庫系統(tǒng)的異構性主要體現(xiàn)在以下幾個方面:
    1.計算機體系結構的異構
    各個參與的數(shù)據(jù)庫可以分別運行在大型機、小型機、工作站、PC或嵌入式系統(tǒng)中。
    2.基礎操作系統(tǒng)的異構
    各個數(shù)據(jù)庫系統(tǒng)的基礎操作系統(tǒng)可以是Unix、Windows NT、 Linux等。
    3.DMBS本身的異構
    可以是同為關系型數(shù)據(jù)庫系統(tǒng)的Oracle、 SQL Server等,也可以是不同數(shù)據(jù)模型的數(shù)據(jù)庫,如關系、模式、層次、網絡、面向對象,函數(shù)型數(shù)據(jù)庫共同組成一個異構數(shù)據(jù)庫系統(tǒng)。
    必須提供一個獨立于特定數(shù)據(jù)庫管理系統(tǒng)的統(tǒng)一編程界面和一個基于 SQL的通用的數(shù)據(jù)庫訪問方法
     
    7.29   給一個任意字符組成的字符串統(tǒng)計每個字符出現(xiàn)的次數(shù),例如:String str = “java@list#有中文啊,jiu zhemechangle”,要求只用一個for循環(huán)或while循環(huán)
    package com.lsp.charlenth;
    import java.util.HashMap;
    import java.util.Map.Entry;
    public class FindCharCount {
        public static void func(String str) {
            HashMap<Character, Integer> map = new HashMap<Character, Integer>();
            for (int i = 0; i < str.length(); i++) {
                char ch = str.charAt(i);
                if (map.get(ch) == null) {
                    map.put(ch, 1);
                } else {
                    int cnt = map.get(ch);
                    map.put(ch, ++cnt);
                }
            }
            for (Entry<Character, Integer> entry : map.entrySet()) {
                System.out.println(entry.getKey() + ":" + entry.getValue());
            }
        }
        public static void main(String[] args) {
            String str = "java@list#
    有中文啊,jiu zhemechangle";
            func(str);
        }
    }
     
    本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報
    打開APP,閱讀全文并永久保存 查看更多類似文章
    猜你喜歡
    類似文章
    Java/J2EE中文問題終極解決之道
    J2EE 全面簡介
    JAVA SSH 框架介紹
    碼農就java基礎知識javaee13種技術漫談
    java_筆試題及答案(公司1)
    【學霸】淺談java學習方法和后期面試技巧
    更多類似文章 >>
    生活服務
    分享 收藏 導長圖 關注 下載文章
    綁定賬號成功
    后續(xù)可登錄賬號暢享VIP特權!
    如果VIP功能使用有故障,
    可點擊這里聯(lián)系客服!

    聯(lián)系客服