雜記 Java web
一、錯誤分類:
web程序常見錯誤:
404:找不到訪問的頁面或資源
1)運行時,URL輸入錯誤
2)將頁面放在WEB-INF下
3)外部啟動tomcat後未部署項目
500:jsp頁面代碼有誤
二、super 和 this
1)super(參數):調用基類中的某一個構造函數(應該為構造函數中的第一條語句)
2)this(參數):調用本類中另一種形成的構造函數(應該為構造函數中的第一條語
3)super: 它引用當前對象的直接父類中的成員(用來訪問直接父類中被隱藏的父類中成員數據或函數,基類與派生類中有相同成員定義時如:super.變量名 super.成員函數據名(實參)
4)this:它代表當前對象名(在程序中易產生二義性之處,應使用this來指明當前對象;如果函數的形參與類中的成員數據同名,這時需用this來指明成員變量名)
5)調用super()必須寫在子類構造方法的第一行,否則編譯不通過。每個子類構造方法的第一條語句,都是隱含地調用super(),如果父類沒有這種形式的構造函數,那麽在編譯的時候就會報錯。
6)super()和this()類似,區別是,super()從子類中調用父類的構造方法,this()在同一類內調用其它方法。
7)super()和this()均需放在構造方法內第一行。
8)盡管可以用this調用一個構造器,但卻不能調用兩個。
9)this和super不能同時出現在一個構造函數裏面,因為this必然會調用其它的構造函數,其它的構造函數必然也會有super語句的存在,所以在同一個構造函數裏面有相同的語句,就失去了語句的意義,編譯器也不會通過。
10)this()和super()都指的是對象,所以,均不可以在static環境中使用。包括:static變量,static方法,static語句塊。
11)從本質上講,this是一個指向本對象的指針, 然而super是一個Java關鍵字。
三,Java的數據類型------------------四類八種
數據類型:
1.基本數據類型: 整型 int(4字節) long(8字節) short(1字節) byte(2字節)
浮點型 double(8字節) float(4字節)
布爾型 boolean
字符型 char(2字節)
2.引用數據類型 類(class) String 字符串類型、自定義的類
接口(interface)
數組
四、jsp使用C標簽
1.導入 jstl.jar和standar.jar 包
2.在 web.xml中加入
<jsp-config>
<taglib>
<taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/c.tld</taglib-location>
</taglib>
</jsp-config>
3.在jsp頁面上使用
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
五、jsp頁面傳遞數據
1.空格是一個字符串,空null 是什麽都沒有
輸入框部不輸入的時候提交的是 空格
沒有該值提交的時候就是空null
註意null和空格的區別
2.中文亂碼問題
post方法:
設置request.setCharacterEncoding("utf-8"); //只對POST方法有效,對GET方法無效
// response.setCharacterEncoding("utf-8"); 可加可不加
###########################
配置字符碼過濾器 一次解決
但要註意使用post方法
############################
get 方法:
在tomcat的conf下的server.xml文件下
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
加入URLEncoding = "utf“
********************************************************************
response.setContentType("text/html;charset=gb2312")是設置頁面中為中文編碼。
前者是設置動態文字(參數,數據庫),後者設置頁面靜態文字
response.setContentType指定 HTTP 響應的編碼,同時指定了瀏覽器顯示的編碼.
response.setCharacterEncoding設置HTTP 響應的編碼,如果之前使用response.setContentType設置了編碼格式,則使用response.setCharacterEncoding指定的編碼格式覆蓋之前的設置.與response.setContentType相同的是,調用此方法,必須在getWriter執行之前或者response被提交之前.
雜記 Java web