Java自學寶典 Java自学宝典

黑馬程序員

  • 出版商: 清華大學
  • 出版日期: 2017-09-08
  • 定價: $768
  • 售價: 8.5$653
  • 語言: 簡體中文
  • 頁數: 679
  • 裝訂: 平裝
  • ISBN: 7302475415
  • ISBN-13: 9787302475415

立即出貨 (庫存 < 4)

買這商品的人也買了...

相關主題

商品描述

本書從初學者的角度出發,詳細講解了從Java基礎到SSH框架應用的各種技術知識。全書可分為四個部分,分別為基礎篇、Web篇、框架篇和實戰篇,其中前6章為基礎篇,主要講解Java環境的搭建、語法規則、面向對象、集合和IO等內容;第7~16章為Web篇,主要對Web開發中常用的JSP技術、Servlet技術、jQuery框架、MySQL數據庫和JDBC等知識進行詳細講解;第17~31章為框架篇,主要對當前主流的SSH(Struts2、Spring、Hibernate)框架進行詳細講解;第32~33章為實戰篇,主要講解SSH框架的整合知識以及一個基於SSH框架的實戰項目——學生信息管理系統。 本書既可作為高等院校本/專科電腦相關專業的程序設計課程教材,也可作為Java技術的培訓教材,是一本適合廣大電腦編程愛好者的學習教材。

海報:

作者簡介

黑馬程序員是傳智播客(股票代碼:839976)旗下的高端IT教育品牌,成立於2010年。現已開設JavaEE、Android+物聯網、PHP、產品經理、前端與移動開發、C/C++、新媒體運營/電商運營、人工智能+Python、雲計算大數據、H5+全棧工程師、UI/UE綜合設計師、視覺設計快速就業等培訓學科。
一直以來,黑馬程序員的教學研發團隊致力於打造精品課程資源,不斷在產學研三個層面創新自己的教育理念與教學方針,並集中黑馬程序員的優勢力量,有針對性地出版了計算機系列教材50多種,製作了配套教學視頻數十套,並發表各類技術文章數百篇。
黑馬程序員始終堅守著“為莘莘學子改變命運而講課,為千萬學生少走彎路而著書”的使命,不斷創新與豐富教學模式與教研產品,為推進IT教育事業的持續發展而不懈努力。

目錄大綱

第1章Java開發入門1 
1.1Java概述1 
1.2JDK的使用2 
1.2.1JDK的安裝2 
1.2.2JDK的目錄介紹2 
1.3環境變量4 
1.3.1path環境變量4 
1.3.2classpath環境變量5 
1.4第一個Java程序6 
1.4.1編寫第一個Java程序6 
1.4.2Java程序的運行機制7 
1.5Eclipse的安裝與使用7 
1.5.1Eclipse的安裝與啟動8 
1.5.2Eclipse進行程序開發9 

第2章Java編程基礎14 
2.1Java的基本語法14 
2.1.1Java代碼的基本格式14 
2.1.2Java中的註釋14 
2.1.3Java中的標識符15 
2.1.4Java中的關鍵字15 
2.2Java中的變量16 
2.2.1變量的定義16 
2.2.2變量的數據類型16 
2.2.3變量的類型轉換17 
2.2.4變量的作用域19 
2.3Java中的常量19 
2.4Java中的運算符20 
2.4.1算術運算符20 
2.4.2賦值運算符212.4.3比較運算符22
2.4.4邏輯運算符22 
2.4.5運算符的優先級24 
2.5選擇結構語句24 
2.5.1if條件語句24 
2.5.2switch條件語句27 
2.6循環結構語句29 
2.6.1while循環語句29 
2.6.2do... while循環語句30 
2.6.3for循環語句31 
2.6.4循環嵌套32 
2.6.5跳轉語句33 
2.7方法34 
2.7.1方法的概念34 
2.7.2方法的重載35 
2.8數組37 
2.8.1數組的定義37 
2.8.2數組的常見操作38 
2.8.3Arrays工具類41 
2.9String類和StringBuffer類42 
2.9.1String類42 
2.9.2StringBuffer類44 
2.10包裝類46 

第3章面向對象47 
3.1面向對象的概念和特徵47 
3.2類與對象47 
3.2.1類與對象的關係47 
3.2.2類的定義48 
3.2.3對象的創建48 
3.2.4類的封裝49 
目錄Java自學寶典3.3構造方法51 
3.3.1構造方法的定義51 
3.3.2構造方法的重載53
3.4this關鍵字54 
3.5static關鍵字56 
3.5.1靜態變量56 
3.5.2靜態方法57 
3.5.3靜態代碼塊58 
3.6類的繼承59 
3.6.1繼承的概念59 
3.6.2重寫父類方法59 
3.6.3super關鍵字61 
3.7抽像類和接口63 
3.7.1抽像類63 
3.7.2接口65 
3.8多態67 
3.8.1多態概述67 
3.8.2對象的類型轉換69 
3.8.3匿名內部類71 
3.9異常72 
3.9.1異常的概念72 
3.9.2常見的異常類73 
3.9.3try...catch和finally74 
3.9.4throws關鍵字75 
3.10訪問控制77 

第4章集合類78 
4.1初識集合78 
4.1.1集合概述78 
4.1.2Collection接口簡介79 
4.2List接口79 
4.2.1List接口簡介79 
4.2.2ArrayList集合80 
4.2.3Iterator接口81 
4.2.4foreach循環82 
4.2.5泛型83 
4.3Set接口84
4.3.1Set接口簡介84 
4.3.2HashSet集合84 
4.4Map接口85 
4.4.1Map接口簡介85 
4.4.2HashMap集合86 
4.4.3Properties集合87 

第5章輸入/輸出89 
5.1I/O流概述89 
5.2字節流89 
5.2.1字節流的概念89 
5.2.2字節流的讀/寫操作91 
5.2.3文件的複制93 
5.2.4字節流的緩衝區94 
5.2.5字節緩衝流95 
5.3字符流96 
5.3.1字符流的概念96 
5.3.2字符流的讀/寫操作97 
5.3.3字符緩衝流98 
5.3.4轉換流99 
5.4File類100 
5.4.1File類的常用方法100 
5.4.2遍歷目錄下的文件101 
5.4.3刪除文件及目錄102 

第6章多線程103 
6.1線程概述103 
6.2線程的創建103 
6.2.1繼承Thread類103 
6.2.2實現Runnable接口105 
6.2.3Thread類和Runnable接口對比分析106 
6.3線程的狀態和轉換109 
6.4多線程同步110 
6.4.1線程安全110
6.4.2同步代碼塊112 
6.4.3同步方法113 

第7章網頁開發基礎115 
7.1HTML技術115 
7.1.1HTML簡介115 
7.1.2單標記和雙標記117 
7.1.3文本控制與文本樣式標記117 
7.1. 4圖像標記118 
7.1.5表格標記119 
7.1.6表單標記121 
7.1.7列表標記和超鏈接標記124 
7.1.8<div>標記126 
7.2CSS技術127 
7.2.1CSS簡介127 
7.2.2CSS樣式的引用方式127 
7.2.3CSS選擇器和常用屬性130 
7.3JavaScript基礎133 
7.3.1DOM相關知識133 
7.3.2JavaScript概述134 
7.3.3JavaScript的使用139 

第8章Java Web概述142 
8.1Web開發的相關知識142 
8.1.1C/S與B/S體系結構142 
8.1.2Web資源143 
8.2XML基礎144 
8.2.1XML概述144 
8.2.2XML語法145 
8.2.3DTD約束146 
8.2.4Schema約束149 
8.3HTTP152 
8.3.1HTTP概述152
8.3.2HTTP請求消息153 
8.3.3HTTP響應消息156 
8.4Tomcat158 
8.4.1Tomcat簡介158 
8.4.2Tomcat的安裝和啟動158 
8.4.3Tomcat中的Web應用159 
8.4.4在Eclipse中配置Tomcat161 

第9章Servlet基礎165 
9.1 Servlet概述165 
9.2Servlet開發入門166 
9.2.1Servlet接口及其實現類166 
9.2.2實現第一個Servlet程序167 
9.2.3Servlet的生命週期172 
9.3Servlet虛擬路徑映射的配置173 
9.3.1Servlet的多重映射173 
9.3 .2Servlet映射路徑中使用通配符174 
9.3.3默認Servlet175 
9.4ServletConfig和ServletContext176 
9.4.1ServletConfig接口176 
9.4.2ServletContext接口178 

第10章請求和響應182 
10.1請求和響應概述182 
10.2HttpServletRequest對象183 
10.2.1獲取請求行信息的相關方法183 
10.2.2獲取請求消息頭的相關方法185
10.3HttpServletRequest應用186 
10.3.1獲取請求參數186 
10.3.2通過Request對像傳遞數據189 
10.3.3解決請求參數的中文亂碼問題190 
10.4RequestDispatcher對象的應用191 
10.4.1RequestDispatcher接口191 
10.4.2請求轉發191 
10.5HttpServletResponse對象193 
10.5.1發送狀態碼相關的方法193 
10.5.2發送響應消息頭相關的方法194 
10.5.3發送響應消息體相關的方法195 
10.6HttpServletResponse應用195 
10.6.1解決中文輸出亂碼問題195 
10.6.2實現請求重定向197 

第11章JSP技術201 
11.1JSP概述201 
11.1.1JSP201 
11.1.2第一個JSP文件的創建201 
11.1.3JSP運行原理203 
11.2JSP的腳本元素和註釋204 
11.2.1JSP腳本元素204 
11.2 .2JSP註釋206 
11.3JSP指令207 
11.3.1page指令207 
11.3.2include指令208 
11.4JSP隱式對象209 
11.4.1隱式對象的概述209
11.4.2out對象210 
11.4.3pageContext對象211 
11.4.4exception對象213 
11.5JSP動作元素215 
11.5.1<jsp:include>動作元素215 
11.5.2<jsp:forward>動作元素215 
11.6JSP開發模型217 
11.6.1JavaBean217 
11.6.2JSP設計模式218 

第12章Cookie和Session221 
12.1Cookie對象221 
12.1.1Cookie221 
12.1.2Cookie API222 
12.1.3顯示用戶上次訪問的時間223 
12.2Session對象225 
12.2.1Session225 
12.2.2HttpSession API226 
12.2.3Session超時管理227 
12.2.4實現用戶登錄228 

第13章EL表達式和JSTL238 
13.1EL表達式238 
13.1.1EL概述238 
13.1.2EL中的標識符238 
13.1.3EL中的保留字239 
13.1.4EL中的變量239 
13.1 .5EL中的常量239 
13.1.6EL中的運算符240 
13.1.7EL隱式對象243
13.2JSTL248 
13.2.1JSTL248 
13.2.2JSTL的配置和測試249 
13.2.3JSTL中的Core標籤庫250 

第14章Servlet高級257 
14.1Filter257 
14.1.1Filter概述257 
14.1.2實現第一個Filter程序258 
14.1.3Filter映射261 
14.1.4Filter鏈264 
14.1.5FilterConfig接口267 
14.1.6統一全站編碼269 
14.2Listener273 
14.2.1Servlet事件監聽器概述273 
14.2.2統計當前在線人數274 

第15章jQuery框架278 
15.1jQuery概述278 
15.1.1jQuery278 
15.1 .2jQuery的下載與使用278 
15.2jQuery選擇器280 
15.2.1基本選擇器280 
15.2.2層次選擇器282 
15.2.3過濾選擇器284 
15.2.4表單選擇器293 
15.3jQuery的事件處理296 
15.3.1常用事件296 
15.3.2頁面加載事件296 
15.3.3事件綁定與切換297 
15.4jQuery的Ajax操作299
15.4.1Ajax概述299 
15.4.2jQuery的Ajax操作300 

第16章MySQL和JDBC 306 
16.1數據庫基礎知識306 
16.1.1數據庫概述306 
16.1.2MySQL的安裝與配置306 
16.1.3MySQL的圖形化工具307 
16.2MySQL的基本使用309 
16.2.1數據庫的基本操作309 
16.2.2表的基本操作310 
16.2.3數據的基本操作313 
16.2.4單表查詢314 
16.3MySQL的多表操作320 
16.3.1外鍵約束320 
16.3.2內連接322 
16.3.3外連接323 
16.3.4子查詢324 
16.4JDBC技術簡介326 
16.5JDBC常用API327 
16.5.1Driver接口327 
16.5.2DriverManager類327 
16.5.3Connection接口327 
16.5.4Statement接口327 
16.5.5PreparedStatement接口328 
16.5 .6ResultSet接口329 
16.6實現第一個JDBC程序329 
16.7數據庫連接池334 
16.7.1數據庫連接池334
16.7.2DataSource接口334 
16.7.3C3P0數據源335 

第17章Struts2框架入門338 
17.1Struts2簡介338 
17.1.1Struts2概述338 
17.1.2Struts2的下載339 
17.1.3Struts2的使用339 
17.2Struts2入門340 
17.2.1第一個Struts2程序340 
17.2.2Struts2的執行流程分析345 

第18章Struts2的核心配置348 
18.1struts.xml文件的配置348 
18.1.1struts.xml文件348 
18.1.2常量配置349 
18.1.3包配置350 
18.1.4包含配置350 
18.2Action的配置351 
18.2.1實現Action控制類351 
18.2.2配置Action352 
18.2.3使用通配符353 
18.3Action訪問Servlet API354 
18.3.1通過ActionContext訪問354 
18.3.2通過ServletActionContext訪問358 
18.4Action處理請求參數360 
18.4.1屬性驅動360 
18.4.2模型驅動364 
18.5Result結果類型365
18.5.1配置Result365 
18.5.2預定義的結果類型366 
18.5.3dispatcher結果類型367 
18.5.4redirect結果類型368 

第19章Struts2的攔截器370 
19.1攔截器簡介370 
19.1.1攔截器概述370 
19.1.2攔截器的配置371 
19.2Struts2的內建攔截器373 
19.2.1內建攔截器的介紹373 
19.2.2內建攔截器的配置375 
19.3自定義攔截器376 
19.3.1實現自定義攔截器376 
19.3.2使用攔截器實現權限控制377 

第20章Struts2的標籤庫385 
20.1Struts2標籤庫概述385 
20.1.1Struts2標籤庫的分類385 
20.1.2Struts2標籤的使用386 
20.2Struts2的控制標籤386 
20.2.1<s:if> 、<s:elseif>、<s:else>標籤386 
20.2.2<s:iterator>標籤386 
20.3Struts2的數據標籤389 
20.3.1<s:property>標籤389 
20.3.2<s:a>標籤390 
20.3.3<s:debug>標籤390 
20.3.4<s:include>標籤390
20.3.5<s:param>392 
20.4Struts2的模板和主題392 
20.5Struts2的表單標籤393 
20.5.1表單標籤的公共屬性393 
20.5.2<s:form>標籤394 
20.5.3<s:textfield>和<s:textarea>標籤394 
20.5.4<s:password>標籤394 
20.5.5<s:radio>標籤395 
20.5.6<s:reset>標籤395 
20.5.7<s:submit>標籤396 
20.5.8 <s:checkboxlist>標籤397 
20.5.9<s:select>標籤398 
20.5.10<s:optgroup>標籤399 
20.5.11<s:file>標籤400 
20.5.12<s:hidden>標籤400 
20.6Struts2的非表單標籤401 

第21章Struts2的OGNL和值棧403 
21.1OGNL403 
21.1.1OGNL概述403 
21.1.2OGNL表達式404 
21.1.3使用OGNL訪問對象方法和靜態方法408 
21.2值棧412 
21.2.1值棧的意義412 
21.2.2值棧的內部結構413 
21.2.3值棧在開發中的應用415 
21.2.4通過EL訪問值棧的數據420

第22章Struts2的文件上傳和下載421 
22.1文件上傳421 
22.1.1文件上傳的概述421 
22.1.2單個文件上傳423 
22.1.3限製文件的大小和類型426 
22.2文件下載428 
22.2.1文件下載的概述428 
22.2.2文件下載429 
22.2.3中文文件的下載431 

第23章Hibernate框架入門435 
23.1Hibernate概述435 
23.2Hibernate下載和目錄介紹435 
23.3第一個Hibernate程序437 
23.3.1編寫Hibernate程序437 
23.3.2測試Hibernate程序441 
23.4Hibernate的運行機制447 
23.5Hibernate的核心文件448 
23.5.1.hbm.xml映射文件448 
23.5.2hibernate.cfg.xml配置文件452 
23.6Hibernate的核心API454 
23.6.1Configuration454 
23.6.2SessionFactory454 
23.6. 3Session455 
23.6.4Transaction456 
23.6.5Query457 
23.6.6Criteria459

第24章Hibernate的持久化對象狀態和一級緩存462 
24.1Hibernate持久化對象的狀態462 
24.1.1持久化對象的狀態及狀態轉換462 
24.1.2演示持久化對象的狀態轉換463 
24.2Hibernate的一級緩存467 
24.2.1一級緩存467 
24.2.2Hibernate的快照技術469 
24.2.3一級緩存常用操作470 

第25章Hibernate的關聯關係映射474 
25.1關聯關係映射474 
25.1.1三種關聯關係474 
25.1.2一對多關聯關係映射475 
25.1.3多對多關聯關係映射481 
25.2關聯關係中的反轉與級聯485 
25.2.1反轉操作485 
25.2.2級聯操作487 

第26章Hibernate的檢索方式493 
26.1Hibernate檢索方式的概述493 
26.1.1導航對像圖檢索方式493 
26.1.2OID檢索方式493 
26.1.3HQL檢索方式493 
26.1.4QBC檢索方式494 
26.1.5本地SQL檢索方式495 
26.2HQL檢索495 
26.2.1指定別名495 
26.2.2投影查詢496 
26.2.3動態實例查詢497
26.2.4條件查詢498 
26.2.5分頁查詢501 
26.3QBC檢索502 
26.3.1組合查詢502 
26.3.2分頁查詢504 

第27章Hibernate的事務處理和二級緩存506 
27.1事務506 
27.1.1事務的特性506 
27.1.2事務的隔離級別506 
27.2Hibernate的事務處理507 
27.2.1事務的配置507 
27.2.2悲觀鎖508 
27.2.3樂觀鎖514 
27.3Hibernate的二級緩存516 
27.3.1二級緩存的原理和分類516 
27.3.2二級緩存的並發訪問策略517 
27.3.3二級緩存的常用插件518 
27.3.4二級緩存的配置和使用518 

第28章Spring框架入門522 
28.1Spring基本知識522 
28.1.1Spring框架概述522 
28.1.2Spring的體系結構523 
28.1.3Spring的下載及目錄結構524 
28.2Spring的IoC容器526 
28.2.1BeanFactory526 
28.2.2ApplicationContext526 
28.3編寫第一個Spring程序527 
28.4依賴注入530

第29章Spring中的Bean533 
29.1Bean的配置533 
29.2Bean的實例化534 
29.2.1構造器實例化534 
29.2.2靜態工廠方式實例化536 
29.2.3實例工廠方式實例化538 
29.3Bean的作用域540 
29.3.1作用域的種類540 
29.3.2singleton作用域540 
29.3.3prototype作用域541 
29.4Bean的生命週期542 
29.5Bean的裝配方式543 
29.5.1基於XML的裝配543 
29.5.2基於Annotation的裝配546 
29.5. 3自動裝配550

第30章面向切面編程(Spring AOP)55230.1Spring AOP概述552 
30.2手動代理552 
30.2.1JDK動態代理553 
30.2.2CGLIB代理556 
30.3聲明式工廠Bean559 
30.3.1Spring通知類型559 
30.3.2聲明式Spring AOP559 
30.4AspectJ562 
30.4.1基於XML的聲明式562 
30.4.2基於Annotation的聲明式566
 
第31章Spring事務管理571 
31.1Spring JDBCTemplate 571
31.2Spring事務管理的三個核心接口573 
31.3Spring聲明式事務管理574 
31.3.1基於XML方式574 
31.3.2基於Annotation方式580 

第32章SSH框架整合584 
32.1準備整合環境584 
32.1.1數據庫環境584 
32.1 .2配置Struts2環境584 
32.1.3配置Spring環境586 
32.1.4配置Hibernate環境588 
32.2Spring與Hibernate整合590 
32.3Spring與Struts2整合594 
32.4測試框架分層的整合597 
32.5驗證事務是否生效600 
32.5.1測試事務只讀方法600 
32.5.2測試事務回滾602 

第33章學生信息管理系統603 
33.1系統概述603 
33.1.1系統的功能模塊603 
33.1.2系統架構設計604 
33.2數據庫設計605 
33.3系統環境搭建611 
33.4員工登錄模塊618 
33.4.1系統登錄618 
33.4.2實現登錄攔截628 
33.4.3註銷用戶630 
33.5人力資源部模塊630 
33.5.1部門管理631 
33.5.2職務管理639
33.5.3員工管理649 
33.6教學部模塊656 
33.6.1課程類別656 
33.6.2班級管理664