1. 程式人生 > >JSP一二章筆試題

JSP一二章筆試題

con fig toc 增刪改 程序 == 客戶端 getc 代碼

一. 什麽是B/S架構,什麽是C/S架構
B/S(Browser/Server) 瀏覽器/服務器
C/S(Client/Server) 客戶端/服務器


二. B/S架構的工作原理
瀏覽器請求服務器
通過http請求發給服務器
接受請求
服務器解析url的文件]
根據url中的參數和文件生成html文件
然後向瀏覽器發送html文件
然後瀏覽器接收響應的html文件
解析資源文件並顯示頁面

三. 什麽是URL,它由哪幾部分組成
URN:Uniform Resource Name,統一資源名稱。

http(協議)://localhost:8080(IP地址和端口號)/news/index.jsp(項目資源地址)


四. JSP的執行過程
1. 客戶端發出Request請求
2. JSP Container 將JSP轉譯成Servlet的源代碼
3. 將產生的Servlet源代碼經過編譯後,並加載到內存執行
4. 把結果Response(響應)至客戶端


五. JSP頁面由哪幾部分構成
小腳本 <% java code%>
指令 <%@ %>
表達式 <%=%>
聲明 <%!%>
靜態元素
註釋 <!---->
<%----%>

六. 如何更改Tomcat啟動端口
找到conf文件夾,然後打開server.xml文件。


找到 <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
把port8080修正成我們需要的端口,重啟服務器。


七.請寫出目前學過的JSP內置對象,作用分別是什麽
  request 請求對象  類型 javax.servlet.ServletRequest 作用域 Request

  response 響應對象 類型 javax.servlet.SrvletResponse 作用域 Page

  pageContext 頁面上下文對象 類型 javax.servlet.jsp.PageContext 作用域 Page

  session 會話對象 類型 javax.servlet.http.HttpSession 作用域 Session

  application 應用程序對象 類型 javax.servlet.ServletContext 作用域 Application

  out 輸出對象 類型 javax.servlet.jsp.JspWriter 作用域 Page

  config 配置對象 類型 javax.servlet.ServletConfig 作用域 Page

  page 頁面對象 類型 javax.lang.Object 作用域 Page

  exception 例外對象 類型 javax.lang.Throwable 作用域 page


八.轉發和重定向有什麽區別(5點)
1.轉發在服務器端完成的
重定向是在客戶端完成的
2.轉發的速度快
重定向速度慢
3.轉發是同一次請求
重定向是兩次不同請求
4.轉發不會執行轉發後的代碼
重定向會執行重定向之後的代碼
5.轉發地址欄沒有變化
重定向地址欄有變化
6.轉發必須是在同一臺服務器下完成
重定向可以在不同的服務器下完成


九.對比request和session作用域
request是對一個頁面的請求,如果這個頁面一直轉發,相當於一次請求,但是去這個網站其他的非轉發頁面request內的信息就消失了,刷新頁面也是一次新的請求,信息也會清除。
session是一次會話,就是你訪問這個網站開始到結束,這段時間,裏面保存的信息是所有頁面公用,會話完成才會清除。


十.手寫BaseDao工具類
public class BaseDAO {

// 創建數據庫的連接信息
private static final String driver = "com.mysql.jdbc.Driver";
private static final String url = "jdbc:mysql:///petShop";
private static final String username = "root";
private static final String password = "";

// 創建三個接口
private Connection con;
private PreparedStatement ps;
private ResultSet rs;

// 返回連接信息
public Connection getConnection() throws Exception {
// 註冊驅動
Class.forName(driver);
// 判斷連接是否為空 或者 是否開啟
if (con == null || con.isClosed()) {
// 創建驅動管理器
con = DriverManager.getConnection(url, username, password);

}
return con;

}

// 增刪改方法
public int executeUpdate(String sql, Object... objs) throws Exception {
ps =getConnection().prepareStatement(sql);
setSqlValues(objs);
int count = ps.executeUpdate();
return count;

}

// 查詢方法
public ResultSet executeQuery(String sql, Object... objs) throws Exception {
ps=getConnection().prepareStatement(sql);
setSqlValues(objs);
ResultSet rs = ps.executeQuery();
return rs;

}

public void setSqlValues(Object... setValues) throws Exception {
if (ps != null && setValues != null) {
for (int i = 0; i < setValues.length; i++) {
ps.setObject(i + 1, setValues[i]);
}
}
}

// 關閉資源的方法
public void closeAll() {
try {
if (this.rs != null) {
this.rs.close();
}
if (this.ps != null) {
this.ps.close();
}

if (this.con != null) {
this.con.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}

}


十一 三種註釋以及區別

三種註釋 本頁面 Java類 HTML標簽
html註釋 <!--html註釋--> 有 有 有
java註釋 //java註釋 有 有 沒有
jsp註釋 <%-- <%=num %> jsp註釋 --%> 有 沒有 沒有

十二、寫出session常用的三個方法,並且寫出入參和返回值

setAttribute(String name, Object value)getAttribute(String name)
removeAttribute(String name)
添加(修改)值、獲取值、刪除值。

JSP一二章筆試題