成年人在线观看视频免费,国产第2页,人人狠狠综合久久亚洲婷婷,精品伊人久久

我要投稿 投訴建議

web前端開發(fā)工程師面試題

時間:2021-01-02 08:37:21 面試試題 我要投稿

web前端開發(fā)工程師面試題

  今天CN人才網(wǎng)小編為大家分享關(guān)于web前端的27個的面試題。如果能回答上來這些問題,說明你已經(jīng)全部掌握web前端核心技能。

web前端開發(fā)工程師面試題

  快來測試測試自己掌握能力,第一次測試不要緊張哦!!!

  1. class.forname的作用?為什么要用?

  1)、獲取Class對象的方式:類名.class、對象.getClass()、Class.forName(“類名”);

  2)、通過Class對象自審

  3)、動態(tài)調(diào)用方法

  2. 在oracle大數(shù)據(jù)量下的分頁解決方法

  頁面

  DB a:自身特點(limit,rownum,row_num函數(shù)) b:ResultSet

  數(shù)據(jù)量少,緩存DB: { r* _2 o: B0 r. V; }9 A

  3. mySQl的分頁是怎么實現(xiàn)的?

  Select * from limit 0,3

  4. cookie被禁止后怎樣使用session?

  request.getSession().setAttribute(“aa”, “ss”);

  response.sendRedirect(response.encodeURL(“”));

  5. 項目開發(fā)經(jīng)歷了哪幾個階段

  需求分析及變更管理

  項目模型及業(yè)務(wù)流程分析

  系統(tǒng)分析及建模設(shè)計

  界面設(shè)計及代碼開發(fā)

  系統(tǒng)測試,部署和文檔編寫

  維護

  6. 談?wù)勴椖康捏w系統(tǒng)架構(gòu):客戶層,表示層,業(yè)務(wù)層,數(shù)據(jù)層

  客戶層:用來實現(xiàn)企業(yè)級應(yīng)用系統(tǒng)的操作界面和客戶表示,(如HTML和可以顯示W(wǎng)EB頁面的瀏覽器).

  表示層:主要是為企業(yè)提供WEB服務(wù),包括JSP頁面和Servlet技術(shù).

  業(yè)務(wù)層:也叫應(yīng)用層封裝了企業(yè)所有的業(yè)務(wù)邏輯(JAVA Bean,JAVA類).

  數(shù)據(jù)層:用來儲存企業(yè)數(shù)據(jù)信息,(如oracle,mysql).

  7. J2EE規(guī)范中的組件技術(shù)在項目中用到了哪些?

  JSP,servlet.,JDBC,XML, JNDL,JAVABEAN

  8. TCP/IP通訊和UDP通迅的區(qū)別?

  1) TCP/IP面向連接,可靠連接,UDP面向不連接,不可靠連接

  2)建立連接經(jīng)歷3次握手,udp無需連接,ip和port封裝在datagram數(shù)據(jù)包中,自尋址。

  9. 瀏覽器和WEB服務(wù)器是用什么協(xié)議通迅的?

  應(yīng)用層使用的是HTTP協(xié)議,傳輸和路由使用的是TCP/IP

  10. 網(wǎng)絡(luò)通訊中,端口有什么含義。端口的取值范圍?

  端口用于區(qū)分基于TCP/IP通訊的不同應(yīng)用程序,可以認為是計算機與外界交流的出口。端口取值范圍>1024,系統(tǒng)使用的端口范圍0 — 1024

  11. 說出3個常見協(xié)議的默認端口。

  21 ftp File Transfer [Control]文件傳輸協(xié)議(控制)

  80 http World Wide Web HTTP全球信息網(wǎng)超文本傳輸協(xié)議

  25 smtp Simple Mail Transfer簡單郵件發(fā)送協(xié)議

  12. socket是什么,它有什么作用?

  Socket是通訊的端點。是黑盒子的出入口。對于應(yīng)用層來說,socket封裝了底層的所有通訊細節(jié)。

  13. TCP/IP通訊的基本步驟是什么?

  1)向操作系統(tǒng)注冊:讓操作系統(tǒng)將一個端口和服務(wù)器通訊進程綁定。這個端口就代表了這通訊進程。ServerSocket ss = new ServerSocket(port),服務(wù)端通訊進程在port端口監(jiān)聽。

  2) Socket socket = serverSocket.accept();取出一個客戶端的socket連接。如果沒有客戶端的'連接到來,就一直等待,也就是阻塞狀態(tài)

  3)和服務(wù)器建立連接:Socket socket = new Socket(ip地址,port);

  如果創(chuàng)建socket對象成功,代表連接建立。如果拋出異常,連接建立不成功。

  4)在發(fā)送方通過socket獲取輸出流對象,socket.getOutputStream()并執(zhí)行寫入操作

  5)在接收放通過socket獲取輸入流,socket.getInputStream()并執(zhí)行讀取操作

  14. UDP通訊的基本步驟是什么?

  創(chuàng)建客服端的DatagramSocket,創(chuàng)建時,定義客服端的監(jiān)聽端口

  創(chuàng)建服務(wù)端的DatagramSocket,創(chuàng)建時,定義服務(wù)端的監(jiān)聽端口

  在服務(wù)端定義DatagramPaket對象,封裝待發(fā)送的數(shù)據(jù)包

  服務(wù)端講數(shù)據(jù)發(fā)送出去

  客服端接收數(shù)據(jù)

  15. JDBC訪問數(shù)據(jù)庫的基本步驟是什么(手寫)?

  以查詢?yōu)槔?/p>

  步驟一:注冊并加載驅(qū)動程序

  Class.forName(“oracle.jdbc.driver.OracleDriver”)

  步驟二:創(chuàng)建連接

  Connection conn = DriverManager.getConnection(url,user,password);

  步驟三:創(chuàng)建sql語句對象

  Statement st = conn.createStatement()

  步驟四:提交sql語句

  String sql = “select * from tablename”;

  ResultSet rs = st.executeQuery(sql);

  步驟五:顯示結(jié)果

  While(rs.next()){

  }

  步驟六:關(guān)閉連接

  Rs.close();

  St.close();

  Conn.close();

  16. 說說preparedStatement和Statement的區(qū)別

  1)提高效率,數(shù)據(jù)庫系統(tǒng)只編譯一次sql語句。而通過statement的sql語句每次數(shù)據(jù)庫系統(tǒng)都會編譯。

  2)防范sql注入攻擊

  17. 說說事務(wù)的概念,在JDBC編程中處理事務(wù)的步驟。

  1):事務(wù)(Transaction)是并發(fā)控制的單位,是用戶定義的一個操作序列。這些操作要么都做,要么都不做,是一個不可分割的工作單位。

  2) JDBC API中使用事務(wù)處理步驟: a.用false作為參數(shù)調(diào)用setAutoCommit方法; b.執(zhí)行一或多個關(guān)于數(shù)據(jù)庫的操作; c.調(diào)用commit方法完成改變; d.恢復(fù)上次提交后的改變,調(diào)用rollback()方法

  18. 數(shù)據(jù)庫連接池的原理。為什么要使用連接池。

  數(shù)據(jù)庫連接池在初始化時將創(chuàng)建一定數(shù)量的數(shù)據(jù)庫連接放到連接池中,這些數(shù)據(jù)庫連接的數(shù)量是由最小數(shù)據(jù)庫連接數(shù)來設(shè)定的。無論這些數(shù)據(jù)庫連接是否被使用,連接池都將一直保證至少擁有這么多的連接數(shù)量。連接池的最大數(shù)據(jù)庫連接數(shù)量限定了這個連接池能占有的最大連接數(shù),當應(yīng)用程序向連接池請求的連接數(shù)超過最大連接數(shù)量時,這些請求將被加入到等待隊列中。為了解決資源的頻繁分配,釋放所造成的問題,提供高效率的連接分配,實現(xiàn)連接的高效安全避免了數(shù)據(jù)庫頻繁建立,關(guān)閉的開銷

  19. servlet和jsp有什么關(guān)系?

  1;jsp從本質(zhì)上講就是一個servlet

  2;Jsp通過編譯后,會生成.java文件,它extends與HttpJspBase.

  20. 編寫一個servlet的步驟。

  public calss MyServlet extends HttpServlet(){

  public void init(){};

  public void destroy(){};

  public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServlerException,IOException{};

  }

  web.xml中配置—-

  /x

  21.HttpservletResponse的sendError方法的作用

  向客戶端發(fā)送一個錯誤的HTTP狀態(tài)碼

  22.什么情況下使用URL重寫

  當cookie被禁用后,可以通過URL重寫將sessionid附加在URL后發(fā)送.

  好處:

  1.縮短url,隱藏實際路徑提高安全性

  2易于用戶記憶和鍵入。

  3易于被搜索引擎收錄

  其中詳細如下

  1.通過URL重寫,把動態(tài)地址轉(zhuǎn)換成更容易被搜索引擎收錄的形式-靜態(tài)頁面地址,是一種對搜索引擎友好的方法。google雖然可以抓取動態(tài)頁面,但是對動態(tài)頁面的評分一般低于靜態(tài)頁面。所以,對大量信息發(fā)布的網(wǎng)站,把網(wǎng)站地址改變成靜態(tài)的絕對是值得的。

  2.如果網(wǎng)站改版或目錄結(jié)構(gòu)更改時,很多頁面的鏈接可能會發(fā)生變化,許多搜索引擎已索引的頁面及用戶的歷史收藏可能會成為死鏈。使用URL重寫技術(shù),則由于可以構(gòu)建虛擬的網(wǎng)站目錄和結(jié)構(gòu),可有效的防止因改版而使搜索引擎已索引的頁面無法訪問的問題,在信息量相同的情況下,反而會增加可索引的頁面數(shù)量。如:以前可能會通過http://www.xxx.com/news/detail.asp?id=2436訪問某個頁面,重寫后該頁面的網(wǎng)址可能會變成http://www.xxx.com/news/detail/2436.html(甚至可以不用擴展名),以這兩種形式的網(wǎng)址訪問的真實頁面仍然是http://www.xxx.com/news/detail.asp?id=2436。

  3.使用URL重寫,通過URL到URL、URL到文件名,甚至文件名到文件名的轉(zhuǎn)換,為網(wǎng)站建立了一種新的層次清晰、緊湊簡潔的目錄結(jié)構(gòu),隱藏了真實的目錄和文件。同時服務(wù)器可根據(jù)請求中諸如瀏覽器類型、源IP地址等特征來決定最終提交給客戶的內(nèi)容,或限制某個列表中主機對WEB服務(wù)器的訪問,極大地提高了網(wǎng)站的安全性。

  4.直接生成靜態(tài)頁面雖然能提高訪問速度,但由于該靜態(tài)頁面一般是在信息發(fā)布時生成的,會出現(xiàn)頁面上的其他信息無法更新的問題,除非以后重新生成所有內(nèi)容頁面(重新生成應(yīng)該是很耗費資源的)。而通過URL重寫技術(shù),盡管是以靜態(tài)網(wǎng)址發(fā)出請求,但通過正則表達式匹配后,對應(yīng)的仍然是動態(tài)網(wǎng)頁,因此不存在數(shù)據(jù)更新的問題。

  23.doGet和doPost在什么時候調(diào)用?區(qū)別?

  方法GET和HEAD應(yīng)該被所有的通用WEB服務(wù)器支持,其他所有方法的實現(xiàn)是可選的。GET方法取回由Request-URI標識的信息。HEAD方法也是取回由Request-URI標識的信息,只是可以在響應(yīng)時,不返回消息體。POST方法可以請求服務(wù)器接收包含在請求中的實體信息,可以用于提交表單,向新聞組、BBS、郵件群組和數(shù)據(jù)庫發(fā)送消息。

  get和post提交的數(shù)據(jù)量是不一樣的.

  get好像最多只能在url后跟2K因為get只能發(fā)送一個byte的請求

  而post則沒有限制

  建議用Get方法提交數(shù)據(jù)時,字節(jié)大小不要超過1300,也就是1.3KB。超過這個大小就需用POST方法了

  24.response對象的作用

  setContentType設(shè)置內(nèi)容格式如AJAX時

  response.setContentType(“text/xml;charset=gbk”)

  setHeader設(shè)置響應(yīng)頭response.setHeader(“Cache-Control”,”no-cache”)禁用頁面緩存

  sendError發(fā)送一個錯誤的HTTP狀態(tài)碼

  sendRedirect重定向

  25.jsp中import指令的作用

  導(dǎo)入需要引用的類

  26. 文件上傳的步驟與原理

  首先

  表示這個表單用post提交的是二進制文件.

  這種方式提交的話,在serlvet中的request.getparamer(“”);是得不到內(nèi)容的.必須用getIntputStream()來得到字節(jié)輸入流

  通過字節(jié)輸入流得到3部分:1,分界符.2,頭(普通表單域,文件上傳域).3,消息體(普通表單域的內(nèi)容,文件上傳域的內(nèi)容).

  27.ajax的步驟與原理

  1,創(chuàng)建一個XmlHttpRequest對象.

  2,調(diào)用open方法(準備發(fā)起請求).

  open(“提交方式”,”URL地址”,”是否同步(false/true)”).

  3,如果是提交方式是post,就需要設(shè)置請求頭.SetrequestHeard(“content-Type”,application/X-www;1;);

  4,設(shè)置回調(diào)函數(shù)XmlRequest.onredystatechang=XX;

  5,在服務(wù)器端response.setContType(“”);

  response.setHeard(“”);

  6,通過判斷XmlHttpRequest.readystatc==4是否會應(yīng).

  XmlHttpRequest.status==200判斷狀態(tài)碼.

  7,用XmlRequest.responseText接受文本內(nèi)容

  或者是用Xmlrequest.XmlResponse接受Xml內(nèi)容.

【web前端開發(fā)工程師面試題】相關(guān)文章:

web前端開發(fā)工程師面試題匯總07-16

web前端開發(fā)面試題05-31

2015騰訊WEB前端開發(fā)面試題01-31

web前端開發(fā)工程師簡歷范文01-17

web前端開發(fā)就業(yè)方向09-07

WEB前端開發(fā)工程師簡歷表格06-03

web前端開發(fā)工程師個人簡歷05-07

web前端面試題02-25

最新web前端面試題06-27