1. 程式人生 > >Hibernate常見異常

Hibernate常見異常

hibernate 常見異常
net.sf.hibernate.MappingException
       當出現net.sf.hibernate.MappingException: Error reading resource:…異常時一般是因為對映文
件出現錯誤。        當出現net.sf.hibernate.MappingException: Resource: … not found是因為XML配置檔案沒找到所致,有可能是放置目錄不正確,或者沒將其加入hibernate.cfg.xml中。 2. net.sf.hibernate.PropertyNotFoundException
       當出現net.sf.hibernate.PropertyNotFoundException: Could not find a setter for property
name in class …時,原因一般是因為XML對映檔案中的屬性與對應的Java類中的屬性的getter或setter方法不一致。 3. org.hibernate.id.IdentifierGenerationException
       當出現org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save():異常時,一般是因為<id>元素配置不正確,<id>元素缺少其子元素<generator></generator>的配置引起。        解決方案:<id>元素映射了相應資料庫表的主鍵欄位,對其子元素<generator >,其中class
的取值可以為increment、identity、sequence、hilo、native……等,更多的可參考hibernate參考文件,一般取其值為native 。具體可參考2.2.2.1小節。 4. a different object with the same identifier value was already associated with the session
       當出現a different object with the same identifier value was already associated with the session時,一般是因為在hibernate中同一個session裡面有了兩個相同標識但是是不同實體。        有如下幾種解決方案: (1)使用session.clean(),如果在clean操作後面又進行了saveOrUpdate(object)等改變資料狀態的操作,有可能會報出"Found two representations of same collection"異常。 (2)使用session.refresh(object),當object不是資料庫中已有資料的物件的時候,不能使用
session.refresh(object)因為該方法是從hibernate的session中去重新取object,如果session中沒有這個物件,則會報錯所以當你使用saveOrUpdate(object)之前還需要判斷一下。 (3)session.merge(object),Hibernate裡面自帶的方法,推薦使用。 再次碰到:a different object with the same identifier value was already associated with the
session這個錯誤我一共遇到過兩次,一直沒有找到很好的解決方案,這個錯誤產生原因相信大家都知道,因為在hibernate中同一個session裡面有了兩個相同標識但是是不同實體.
一開始按網上說的用session.merge(Object)報了一個錯,可能是沒有用好,改用 session.clear(); session.update(user);這樣就OK了,
方法為: package org.springframework.orm.hibernate3.support;
...
    public void modifyByMerge(User user) {
        Session session = getHibernateTemplate().getSessionFactory().
                          getCurrentSession();
        session.clear();
        session.update(user);
    }
...
專案用的是spring + hibernate所以得用getHibernateTemplate().getSessionFactory ().getCurrentSession();得當前Session 5. SQL Grammer Exception,Could not execute JDBC batch update
       當出現SQL Grammer Exception,Could not execute JDBC batch update異常時,一般是由如下問題 引起: (1)SQL語句中存在語法錯誤或是傳入的資料有誤; (2)資料庫的配置不合法,或者說是配置有誤。較容易出現的有資料表的對映檔案(,hbm.xml檔案)配置有誤 ;Hibernate.cfg.xml檔案配置有誤; (3) 當前的資料庫使用者許可權不足,不能操作資料庫。以是以Oracle 資料庫為例,這種情況下在錯誤提示中 會顯示java.sql.BatchUpdateException: ORA-01031: insufficient privileges這樣的資訊。        針對上面的各種原因,開發人員可以找出對應的解決方案。
16.net.sf.hibernate.QueryException: undefined alias:我猜想出項這種錯誤的原因有很多種:可能是大小寫問題,還有其他很多種可能
17.net.sf.hibernate.NonUniqueResultException:檢索單個物件時,查詢結果包含多個物件,但沒有呼叫 setMaxResult(1)方法
18.net.sf.hibernate.QueryException: Not all named parameters have been set
使用setProperties()方法:用於把命名引數與一個物件的屬性值繫結時,物件中沒有匹配的名字相同的屬
性。 文章出處:http://www.diybl.com/course/3_program/java/javashl/2008410/108844_2.html =========================== 1 .Caused by: org.dom4j.DocumentException: Invalid byte 2 of 2-byte UTF-8 sequence. Nested exception: Invalid byte 2 of 2-byte UTF-8 sequence. 如果出現這行錯誤說明你的XML配置檔案有不規範的字元,檢查下。 2 .net.sf.hibernate.MappingException: Error reading resource: hibernate/Hello_Bean.hbm.xml 如果出現這行錯誤說明你的hibernate的XML配置檔案有錯 3 .net.sf.hibernate.MappingException: Resource: hibernate/Hello_Bean.hbm.xml not found 如果出現這行錯誤說明hibernate的XML配置檔案沒有找到,你應該把XML檔案放在與你的類檔案同個目錄下, 本文中是放在hibernate\classes\hibernate\目錄下,也就是跟Hello_Bean.class類檔案一起。 4 .net.sf.hibernate.PropertyNotFoundException: Could not find a setter for property name in class hibernate.Hello_Bean 如果出現這行錯誤說明你的xml檔案裡設定的欄位名name的值與Hello_Bean.Java類裡的getXXX或setXXX方法不一致。 5 .net.sf.hibernate.HibernateException: JDBC Driver class not found: org.gjt.mm.MySQL.Driver 6.The database returned no natively generated identity value 。      主鍵沒有新增增量 =========================== Exception : No form found under 'loginForm' in locale 'en_US' 這個錯誤完全是我自己給自己找麻煩,我在給loginForm做表單驗證時,用了validator,我在寫 validation.xml檔案時,突然發神經,想寫得比較國際化一點,這樣寫的:    <formset language="zh" country="CN"> <!--這個是zh_CN的-->    開始是一點問題都沒有,因為我們大家一般都用中文系統,後來有一天我用linux,當時環境是english, 結果發現頁面就報錯:No form found under 'loginForm' in locale 'en_US'。 當時,特別鬱悶,後來仔細回憶,想起當時只在validation.xml檔案裡顯式的寫過國際化相關的東西,後來 就把 language="zh" country="CN" 給刪掉了。即:
<formset>。。。。。。</formset> 再用英文系統訪問就沒有事情了,看來你要是想國際化,就把所有的情況的配置都寫全了,不要只指定中文 的配置,英文的不配置,那樣,別人用英文系統的人就會出錯。所以,建議還是不要制定國際化,看來有的 時候還是偷懶一點比較好! =========================== Hibernate錯誤:org.hibernate.StaleStateException: Batch update returned unexpected row count from update: 0 actual row count: 0 expected: 1 原因多半是你的mapping檔案的主鍵沒有設定對。檢查如下: 一:看你的主鍵型別是什麼?如果是long,int等,記得設定unsaved-value="0" 二:如果是string 的話,請設定unsaved-value="null" 注意unsaved-value是個很重要的屬性。Hibernate通過這個屬性來判斷一個物件應該save還是update,如果這個物件的id是unsaved-value的話,那說明這個物件不是 persistence object要save(insert);如果id是非unsaved-value的話,那說明這個物件是persistence object(資料庫中已存在),只要update就行了。 你可以Debug跟一下你的程式碼,看看在 session.update(obj); 的時候,obj的主鍵的值是不是按你定義的那
樣,obj可以被hibernate認為是一個已經持久化在資料庫裡的物件 =========================================================== java.lang.NoClassDefFoundError: antlr/ANTLRException 原因是:缺少antlr-2.7.5H3.jar ---------------------------------------2---------------------------------------------- 類 java.lang.NoSuchMethodError java.lang.Object    |    +----java.lang.Throwable            |            +----java.lang.Error                    |                    +----java.lang.LinkageError                            |                            +----java.lang.IncompatibleClassChangeError                                    |                                    +----java.lang.NoSuchMethodError public class NoSuchMethodError extends IncompatibleClassChangeError 如果應用程式試圖呼叫一個類的指定方法(無論是靜態還是動態),但是該類不再有該方法的定義,則丟擲該 異常。 通常由編譯器檢測此錯誤;如果類定義不允許再作相容性的改變,那麼此錯誤只可能發生在執行時刻。 構造子索引 NoSuchMethodError() NoSuchMethodError(String)     用指定的詳細資訊構造 NoSuchMethodException。 構造子 NoSuchMethodError public NoSuchMethodError() NoSuchMethodError public NoSuchMethodError(String s)     用指定的詳細資訊構造 NoSuchMethodException。     引數:         s - 詳細資訊。 ----------------------------------3-------------------------------------------------- 今天用hibernate3做關係對映,當呼叫對映類的時候總是報 org.hibernate.LazyInitializationException: could not initialize proxy錯誤 原因: hb3對many-to-one的預設處理是lazy = "proxy" 而hb2是false 所以,要這麼設定         <many-to-one column="sort_id" cascade="all" outer-join="true" lazy="false" /> ------------------------------------4-------------------------------------------------- java.sql.Timestamp異常      原因:時間date錯誤      更改時間java.util.Date 為java.lang.String就好了,同時修改配置檔案中的內容 ------------------------------------5-------------------------------------------------- Cannot find bean in any scope 分類:Struts異常 1.出現這種錯誤一般是資原始檔沒找到或是資原始檔裡沒有對應的key值。 2.struts-config.xml裡的Action配置裡把redirect設定為了true;改成false, 3.在Action裡一般會request.setAttribute()一些物件,然後在轉向的jsp檔案裡 (用tag或 request.getAttribute()方法)得到這些物件並顯示出來。 這個異常是說jsp要得到一個物件, 但前面的Action裡並沒有將物件設定到request(也可以是session、servletContext)裡。 可能是名字錯了,請檢查jsp裡的tag的一般是name屬性,或getAttribute()方法的引數值; 或者是Action邏輯有問題沒有執行setAttribute()方法就先轉向了。 還有另外一個可能,純粹是jsp檔案的問題,例如<logic:iterate>會指定一個id值, 然後在迴圈裡<bean:write>使用這個值作為name的值,如果這兩個值不同, 也會出現此異常。(都是一個道理,request裡沒有對應的物件。) 4.這個情況比較特殊,應該算沒有把STRUTS標記庫的機制搞明白, <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%> 如果沒有在頭宣告這個就用logic:iterate標記, 在bean:write的時候就會出異常! ---------------------------------6---------------------------------------------------- HibernateException: Not able to obtain connection org.hibernate.HibernateException: Not able to obtain connection 差不多等於沒有連線資料庫了。要保證Hibernate的Session工廠能正常工作。 這個一般我們的做法是Session工廠設定成靜態的。 然後需要進行操作就開啟一個會話。所以在設計的時候注意一下。這個Session工廠物件。 最好是放在 static{}塊裡。然後用個抽象類去實現它,然後其他的類都實現這個抽象類就搞定了! ---------------------------------7---------------------------------------------------- org.hibernate.MappingException: Error reading resource: XXXX.XML 這個異常出現的報錯還有: Could not configure datastore from input stream org.dom4j.DocumentException: xxxxx(系統找不到指定的檔案。) Nested exception: xxxx org.hibernate.MappingException: Error reading resource: xxxx 這個異常主要出現的情況有: (1)沒有對映檔案,也就是沒有xxx.hbm.xml (2)在xxx.hbm.xml檔案中有錯誤,主要可能是書寫錯誤,或有亂碼 (3) 這個問題最噁心,一般人不會注意到,就是要注意配置檔案和對映檔案都必須用同一個版本的HIBERNATE ,怎麼看是否用同一個HIBERNATE呢,你可以檢視hibernate.cfg.xml和xxx.hbm.xml開頭內容: 例如 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 如果一個是2.0一個是3.0到時候DOM4J就會出異常。解析不了咯! ---------------------------------------8----------------------------------------------- save the transient instance before flushing 1. (1)做Hibernate多對一的時候,報錯: org.apache.jasper.JasperException: Error creating bean with name 'sf' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is org.hibernate.PropertyNotFoundException: Could not find a getter for person in class com.accp.vo.Course 因為配置檔案中的一個 <many-to-one ../> 中的person屬性名稱寫錯了. 還有原因如下:     1)getter()方法寫錯了,沒有按照javaBean的規則寫.     2)*.hmb.xml中的屬性名和pojo中的是否一致.注意:屬性名是否多了空格. (2).Hibernate多對一報錯: save the transient instance before flushing 具體錯誤為在one-to-many中,對many進行save時,由於沒有加入one的外建,導致錯誤。 具體解決方法: (1)、在one的hbm檔案中 invest=true (2)、在many儲存前務必要求one的存在 ---------------------------------------9----------------------------------------------- Named query not known 在使用session.getNamedQuery("XXX");執行HQL語句的時候,沒有找 XXX語句,這主要是2個原因 1:粗心,把名給寫錯了 2:XXX的HQL語句所在的.hbm.xml沒有在hibernate.cfg.xml裡註冊過! ---------------------------------------10---------------------------------------------- Expected positional parameter count: X, actual parameters: org.hibernate.QueryException: Expected positional parameter count: 2, actual parameters: [] [SELECT * from Ad where gr_id = ? and adst_id = ?] 這樣的異常主要原因是: //以下為例子 Query query =session.getNamedQuery("OnlienAd");    query.setParameter(0,gray.getId());    query.setParameter(1,Globals.UPED_STATE); 可以看到query.setParameter()設定了位,也可以理解成他在要執行的HQL語句中佔了2個位置。 然後執行的時候會對應HQL裡的?中去。 如果你並沒有setParameter(),但你的HQL裡卻有?那麼就會出這個異常。 ---------------------------------------11--------------------------------------------- org.hibernate.MappingException: Association references:XXX ---------------------------------------12--------------------------------------------- org.hibernate.exception.SQLGrammarException: could not initialize 無法例項集合。 這個是問題在你當前的實體中有一個一對多需例項的物件。但這個物件卻無法例項出來,說明一對多那個多 的一方實體有問題,多數情況可能有: 1、資料庫該動過但程式碼沒動 2、實體程式碼有錯誤 ---------------------------------------13--------------------------------------------- org.hibernate.id.IdentifierGenerationException 異常資訊:org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save(): 異常原因: <id>元素配置不正確, <id>元素缺少其子元素<generator></generator>的配置。 解決方法:<id>元素映射了相應資料庫表的主鍵欄位,對其子元素<generator >,其中class的取值 可以為increment、identity、sequence、hilo、native...... 等,更多的可參考hibernate參考文件,一般 取其值為native 。 MySQL:identity,increment,hilo,native. SQL Server:identity,increment,hilo,native. Oracle:sequence,seqhilo,increment,native. 跨平臺開發:native. native將欄位管理交給資料庫自己定義。 ---------------------------------------8----------------------------------------------- not-null property references a null or transient value 此異常出現看開頭就個單詞就知道啦 的實體約束不能為空卻為空造成的,那我在這說一下對於這樣的情況我們時常犯的錯誤。 我們在對實體進行更新操作時最好是在一個會話中將資料從資料庫中調出並例項BEAN的物件。 然後再對此物件進行更改後在更新。 這樣的好處是: 一、資料是最新鮮的。 二、避免不必要的設定,特別是在一對多和多對多的情況下,比如你現在操作的實體並不是在一個會話中得 到,而是儲存在某些容器中,比如jsp的 SESSION中,雖然這樣的實體物件中有很多資料,但是如果你想得到 這些實體對應的1對多或多對1的實體時,就會發現會出現session已經關閉的異常。或則在你更新資料時出現 not-null異常等。 ---------------------------------------14---------------------------------------------- Remember that ordinal parameters are 1-based! HQL語句有錯誤 ---------------------------------------15--------------------------------------------- failed to lazily initialize a collection of role: XXXXXXXX no session or 這個異常大致意思是說在多對一的時候(並且lazy="false"),物件的例項失敗,多數出現的情況有 1、粗心造成 例項物件類名寫錯之類的 2、邏輯錯誤 如之前就已經傳遞過來一個實體物件,然後呼叫實體物件的方法時牽涉到1對多的情況,但此時SESSION已經 關閉,所以根本無法進行一對多的操作。 3、設計到跨度的問題: 這樣打比方有多個實體物件,他們直接或則間接的有關聯。比如有4個實體,分別是廣告資訊、廣告、廣告問 答題、廣告商:他們之間的關係為: 廣告商 1:n 廣告 廣告 1:n 廣告問答題 廣告商 1:n 廣告商資訊 大家可以看到廣告和廣告商資訊是沒有直接關係的。但我要新增廣告的時候我就必須將廣告商的實體做為條 件。那麼這麼一來廣告商資訊可能間接的就必須用上。下面看我的操作: ad(廣告),subject(題目)      Ad ad = new Ad();      ad.setAdProd(adform.getAdProd());      ad.setIndustry(industry);      ad.setAdPicture(pagefile.getFileName());      ad.setAdFlack(adform.getAdFlack());      ad.setAdDv(dvfile.getFileName());      ad.setAdContent(adform.getAdContent());      ad.setGray(gray);      ad.setAdDate(new Date());      ad.setOnlinetime(new Long(0));      //以上為廣告的基本資訊填寫,而重要的是看下面一句,在這裡我的思路是subjectFormList是一個動 態提交的表單,裡面有若干個廣告問答題。我將這些問答題變為一個Set,然後作為ad的一個屬性。      Set<Subject> subjectset=getSubjectSet(subjectFormList,ad);      ad.setSubjects(subjectset); //然後提交,makePersistent是一個封裝的方法,用途就是save()啦。addao是一個DAO,裡面有ADUS。 addao.makePersistent(ad); 表面上看來很符合邏輯,只要我們在ad的對映裡面加上對subject的級聯更新就可以完成這項操作。但實際上 會發生我們意想不到的問題,來讓我們看一下getSubjectSet()的內容: public Set getSubjectSet(List<SubjectForm> subjectlist,Ad ad) {    Set<Subject> set=new HashSet<Subject>(0);    Subject subject;
   for(Iterator<SubjectForm> it=subjectlist.iterator();it.hasNext();)    {     subject=new Subject();     SubjectForm sf=it.next();     subject.setSuContent(sf.getSucontent());     subject.setSuOption(sf.getSuoption());     subject.setSuResult(Arrays.deepToString(sf.getSuresult()));     subject.setSuType(String.valueOf(sf.getSutype()));     subject.setAd(ad);     set.add(subject);    }    return set;
} 我們在這個方法上設一個斷點然後跟蹤,之後你會發現斷點在set.add(subject)只後就會出failed to
lazily initialize a collection of role: XXXXXXXX no session or session was closed這個異常,並且
這個異常還是出在了廣告商的廣告資訊上 gray.messages。是不是很不可理解?這也是Hibernate的懶漢機制問題。沒有任何一樣技術是完美的。那我們該怎麼處理這樣的問題。有很多人以為我們在廣告商對廣告商信
息的隱射上加lazy="false"這樣在對gray操作會對messages進行關聯,並查詢時提出資料。但你會發現改完之後會出現org.hibernate.LazyInitializationException: illegal access to loading collection這個異
常。並切lazy="false"是我們不推薦的一種方法。他會降低你的查詢效率。 對於這樣的情況最好的解決辦法就是不要偷懶,對一個實體進行操作的時候就該用那個實體的DAO,即應該有 2句HQL。如下把getSubjectSet()改一改: public void getSubjectSet(List<SubjectForm> subjectlist,Ad ad) {    Set<Subject> set=new HashSet<Subject>(0);    SubjectDAO subjectdao=DAOFactory.getDao(SubjectDAO.class);    for(Iterator<SubjectForm> it=subjectlist.iterator();it.hasNext();)    {     Subject subject=new Subject();     SubjectForm sf=it.next();     subject.setSuContent(sf.getSucontent());     subject.setSuOption(sf.getSuoption());     subject.setSuResult(Arrays.deepToString(sf.getSuresult()));     subject.setSuType(String.valueOf(sf.getSutype()));     subject.setAd(ad);     subjectdao.makePersistent(subject);     //set.add(subject);    }
}//遍歷出所有subject一個個的往資料庫里加。這樣便不會出問題了。 1、OpenSessionInView模式: 以下有2種方法,第1種是結合SPRING,第2種是採用了攔截器 Spring+Hibernate中,集合對映如果使用lazy="true", 當PO傳到View層時, 出現未初始化session已關閉的錯誤,只能在dao先初始化 parent.getChilds().size(); Spring提供Open Session In View來解決這個問題, 有兩種方式 1. Interceptor        <!--</span><span style="COLOR: rgb(0,128,0)"> =========== OpenSession In View pattern ==============</span><span style="COLOR: rgb(0,128,0)">-->     <bean              >         <property ref="sessionFactory"/>     </bean>     <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">         <property ref="openSessionInViewInterceptor"/>         <property >             <props>                ......             </props>         </property>     </bean> 2. Filter <web-app> <filter> <filter-name>hibernateFilter</filter-name> <filter-class> org.springframework.orm.hibernate.support.OpenSessionInViewFilter </filter-class> </filter> <filter-mapping> <filter-name>hibernateFilter</filter-name> <url-pattern>*.do</url-pattern> </filter-mapping> </web-app> 第2種解決方法: Hibernate.initialize()強制載入關聯物件 ---------------------------------------16---------------------------------------------- Hibernate的No CurrentSessionContext configured 解決方案 Hibernate No CurrentSessionContext configured! 當你使用 Hibernate session factory的getCurrentSession() 函式時候,你可能見到過"No CurrentSessionContext configured!" 出現這個問題,是因為你沒有正確配置 Hibernate internal session context management . 你只要在Hibernate.cfg.xml檔案中新增下面的配置就可以了: <property >thread</property> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^
hibernate實現類中的方法2009-02-22 12:52--增加 public void addUser(User user){ Session s=null; Transation tx=null; try{ s=HibernateUtil.getSession();//在HibernateUtil工具類中寫的 tx=s.beginTransation(); s.save(user);//要是刪除操作就改成s.delete(user);要是更新:s.update(user); tx.commit(); }catch(hibernateException e){ if(tx!=null){tx.rollback();} trow e; }finally{ if(s!=null){s.close();} } }

相關推薦

Hibernate常見異常(整理ing)

  Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1 不注意的話,還真的有點無所適從,Batch update returned unex

Hibernate常見異常

hibernate 常見異常 net.sf.hibernate.MappingException        當出現net.sf.hibernate.MappingException: Error reading resource:…異常時一般是因為對映文 件出現錯誤。

Hibernate 常見異常處理(轉帖)

Hibernate 常見異常net.sf.hibernate.MappingException        當出現net.sf.hibernate.MappingException: Error reading resource:…異常時一般是因為對映文件出現錯誤。    

hibernate+struts+Spring常見異常

ets 解決方法 hbm.xml Coding resource sig jdbc 現在 靜態 Exception : No form found under ‘loginForm‘ in locale ‘en_US‘ 這個錯誤完全是我自己給自己找麻煩,我在給loginFo

hibernate框架常見異常集錦

一.entity找不到問題一般出現在hibernate.cfg.xml檔案中 Exception in thread "main" org.hibernate.MappingException: Unknown entity: com.lrq.entity.Develop

hibernate常見級聯操作異常及解決方法

異常1:not-null property references a null or transient value    解決方法:將“一對多”關係中的“一”方,not-null設定為false (參考資料:http://www.thearcmind.com/conflu

Hibernate/JPA常見異常分析與解決

1. ClassNotFoundException: org.hibernate.hql.ast.HqlToken??? (1)產生環境:SpringMVC3.0.5+com.springsource.org.hibernate-3.3.2.GA+SpringDM1.2.1?

Maven常見異常解決《二》

inf 項目 orb solved update nsf nap ips transfer 下面是一些Maven工程的常見異常: 1.ReasonPhrase: Forbidden: |--- 1.註意用戶的權限以及角色role的設置,通常是沒有權

hibernate常見問題?

save 當前 val etc factory hibernate 結果 bsp spa 1、   <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFact

java 常見異常

for ons 表示 內存不足 eno 內部 ice red sca 1. java.lang.nullpointerexception 這 個異常大家肯定都經常遇到,異常的解釋是"程序遇上了空指針",簡單地說就是調用了未經初始化的對象或者是不存在的對象,這個錯誤經常出

java web 常見異常及解決辦法

eset log const 鍵值 cannot tomcat action asp tex javax.servlet.ServletException: javax/servlet/jsp/SkipPageException 重啟tomcat, javax.serv

python常見異常分類與處理方法

異常 error python except try Python常見異常類型大概分為以下類: 1.AssertionError:當assert斷言條件為假的時候拋出的異常 2.AttributeError:當訪問的對象屬性不存在的時候拋出的異常 3.IndexError

Maven常見異常及解決方法

for display maven2 main collect nts exist temp set 異常1: [ERROR] Failed to execute goal on project biz_zhuhai: Could not resolve dependen

Java 常見異常種類

undo cli 數據庫 內部 monit exe 如果 coo 棧溢出 Java Exception: 1、Error 2、Runtime Exception 運行時異常3、Exception 4、throw 用戶自定義異常 異常類分兩大類型:Error類代表了編譯和系統

Java常見異常總結

轉型 ger blog rgs 子類 tex 向下轉型 read col 1. java.lang.ClassCastException 數據類型轉換異常 當試圖對某個對象強制執行向下轉型,但該對象又不可轉換為其子類的實例時將引發該異常,如下列代碼。 1 public s

開發常見異常

異常 開發 常見異常總結:問題:IllegalAgumentExecption 問題:內存溢出異常這個一般報【http-8080-3】之類的1.在eclipse安裝目錄中將eclipse的啟動參數調大一些: -startupplugins/org.eclipse.equinox.launcher_1

java常見異常歸納

應用程序 找到 拋出異常 定義 instance 如果 調用 leo 常數 1、java.lang.NullPointerException(空指針異常) 調用了未經初始化的對象或者是不存在的對象 經常出現在創建圖片、調用數組這些操作中,比如圖片未經初始化,或者圖片創

Java中的常見異常

throw alt 三種 padding nbsp 筆試 add ima tro Java中異常的三種處理方式:面試筆試也常被問 try-catch-finally throw和throws    Java中的常見異常

laravel常見異常解決

www fat pos () root you 執行c 常見異常 not requested URL not found http://stackoverflow.com/questions/21458080/the-requested-url-projectnam

activiti學習筆記---常見異常

exce 方法 ons 版本 med 不存在 code ssl cloc Activiti中的基礎異常為org.activiti.engine.ActivitiException,一個非檢查異常, 這個異常可以在任何時候被API拋出。 為了避免過多的異常繼承,下面的子類用於