1. 程式人生 > >java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer

java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer

在開發中,遇到這麼一個錯誤:


報錯的意思: Long 無法轉化成Integer型別.

網上的解釋是:

    這裡在Hibernate2.0之前版本list.get(0)返回的是Integer型別.但是在Hibernate3.0以後版本list.get(0)返回的是Long型別.所以在這裡不可以由Long型強轉成Integer型別.

    這裡我用的是mybais3.X版本,同樣是一個原因,我在resultMap返回引數的時候,沒有定義一個productType這個欄位,預設返回為Long型,導致我在java中程式碼取這個欄位值,用Integer變數時報上述錯誤。


    先前是沒有定義上述關於product_type這個欄位,下面這裡就會報上述的錯誤。

Integer productType = (Integer) product.get("product_type");
      這篇博文的目的:大家在遇到類似的錯誤時,知道從哪裡入手