I/O多路復(fù)用是指利用單個(gè)線程來同時(shí)監(jiān)聽多個(gè)Socket ,并在某個(gè)Socket可讀、可寫時(shí)得到通知,從而避免無效的等待,充分利用CPU資源。目前的I/O多路復(fù)用都是采用的epoll模式實(shí)現(xiàn),它會在通知用戶進(jìn)程Socket就緒的同時(shí),把已就緒的Socket寫入用戶空間,不需要挨個(gè)遍歷Socket來判斷是否就緒,提升了性能。查看全文>>
在Java中,靜態(tài)變量和實(shí)例變量是兩種不同的變量類型,它們有以下的區(qū)別:1.靜態(tài)變量屬于類,而不是類的任何實(shí)例。實(shí)例變量屬于類的實(shí)例。查看全文>>
當(dāng)使用final關(guān)鍵字修飾一個(gè)變量時(shí),這個(gè)變量就成為了一個(gè)常量,它的值不能被修改,但是它所引用的對象本身是可以被修改的。查看全文>>
在以往Java項(xiàng)目的開發(fā)中,需要在項(xiàng)目中引入許多JAR包以便于調(diào)用JAR包中封裝好的常用類集。但由于JAR包占用的內(nèi)存空間較大,給項(xiàng)目的打包和發(fā)布帶來了極大的不便,基于以上原因,Apache公司開發(fā)了項(xiàng)目管理工具M(jìn)aven。Maven使用Maven倉庫管理JAB包,使用Maven管理項(xiàng)目不需要再引入一個(gè)個(gè)的JAR包,只需將JAR包的依賴引入項(xiàng)目的pom.xml文件中就可以調(diào)用JAR包中的類。極大提高了開發(fā)人員的編程效率由于IDEA中集成了Mavern,所以直接使用IDEA中默認(rèn)的Maven進(jìn)行項(xiàng)目構(gòu)建是十分方便的。查看全文>>
MyBatis是一個(gè)支持普通SQL查詢、存儲及高級映射的持久層框架,它幾乎消除了JDBC的冗余代碼。使Java開發(fā)人員可以使用面向?qū)ο蟮木幊趟枷雭聿僮鲾?shù)據(jù)庫。對于MyBatis的工作原理和操作流程的理解,我們先來看下面的工作流程圖。查看全文>>
a.hashCode()是一個(gè)Java對象方法,用于返回對象的哈希碼值。哈希碼是一個(gè)整數(shù),是根據(jù)對象的內(nèi)容計(jì)算出來的,用于快速比較對象是否相等。查看全文>>