javaWeb常見異常的解決方法

小花貓Jane發表於2017-12-22

javaWeb常見異常的解決方法

1.如果不能給屬性賦上值,就檢查getter 和 setter方法;

2.如果不能建立物件,檢查是否有空參的建構函式

3.注意文字需要去除回車、換行符,不然修改回顯資料時前端會報錯

4.用Json寫資料傳給前臺時,匯入的jar包不止json一個jar包,還需匯入其他包才可以成功構建類

5.後臺資料中文為出現亂碼,頁面設定字元也為UTF-8,但是前臺接收的資料中文出現亂碼——解決:response.setContentType("text/html;charset=utf-8")

6.當異常資訊提示為找不到對應的Method時,可能是表單沒有寫method=”get“ (或者post) ,JSP中的表單預設不知道為什麼沒有預設方法;如果是用反射呼叫方法時,說找不到對應的方法時,可能是方法的可見性(設為public 或者 其方法為Protect 就設定可見性為true)

7.Struts2 中配置驗證器 不起作用 --- 因為是自己新建一個xml檔案,所以並沒有複製Struts下的檔案內容,才會導致不起作用。當自己新建的xml檔案中 前面要增加這段

<!DOCTYPE validators PUBLIC
"-//Apache Struts//XWork Validator 1.0.2//EN"
"struts.apache.org/dtds/xwork-…">

8.當用Struts時,要注意表單各個域的名字,特別是在成員變數和當前物件具有同名屬性時。要麼把相同屬性名使用不同的屬性名,要麼就把 名字定義為成員變數的屬性名(object.property)

9.當在Struts2 中的action類實現了 ModelDriven 和 Preparable 介面,需要修改表單資訊時,有些沒有在修改表單的資料(如建立時間 或者 設定為 disable),如果在 prepareXxx方法中新new 一個 物件,那麼會造成修改資料庫時某些欄位值為空,解決辦法:

①把沒有的欄位通過隱藏域傳給後臺--- 當資料比較多時,會造成資料冗餘較大

②通過把物件從資料庫中取出,而不是 直接new一個新物件

9.在spring的配置檔案中,報錯: Cannot find the declaration of element 'beans'.

javaWeb常見異常的解決方法

原來是因為
xmlns:beans 錯誤,應該去掉“:beans”,如下:

javaWeb常見異常的解決方法

10.今天在用maven新增net.sf.json的jar包的時候,程式碼如下:

?

1

2

3

4

5

<dependency>

<groupId>net.sf.json-lib</groupId>

<artifactId>json-lib</artifactId>

<version>2.4</version>

</dependency>

報了一個錯

?

1

Missing artifact net.sf.json-lib:json-lib:jar:2.4:compile

?奇怪了,這個是從官網上查的配置啊,不對嗎?最好在網上找了好久,終於找到原因了,
net.sf.json新增的時候需要新增jdk的版本號,第一次聽說,於是有了下面的配置

?

1

2

3

4

5

6

<dependency>

<groupId>net.sf.json-lib</groupId>

<artifactId>json-lib</artifactId>

<version>2.4</version>

<classifier>jdk15</classifier>

</dependency>

結果,錯誤沒有了,編譯通過了,但是我本地用的是
jdk7,而那個配置裡面卻是jdk5,這個好像必須寫5,我把jdk16/jdk17都試了一遍都不行,無奈只有用jdk15可以編譯通過

11.匯入了一個idea project ,編譯執行時候,提示Error:java: Compilation failed: internal java compiler error。檢視了model的jdk版本,無異常,其實只需設定Setting->Compiler->Java Compiler,發現有的module是1.7的是1.6的,選 下就好了

想要學習前端開發的同學,可以加群:
543627393 學習哦!


相關文章