編輯推薦
                                      多讀源碼,可以快速學習!多讀源碼,可以提高熟練度!
  實例案例,拿來就用,效率可提高N倍!
  《Java Web開發實例大全·提高捲/軟件工程師開發大係》超級詳盡的實例大全,源碼分析的案頭手冊,提高效率的絕好幫手!
  46個方嚮,1200個實例案例,java web編程類四庫全書,分門彆類常用編程實例,一網打盡!
  實例說明、技術要點、代碼實現、詳盡注釋、秘籍心法,條分縷析代碼實現過程!
  《java web開發實戰1200例》之全新升級!      
內容簡介
     《Java Web開發實例大全·提高捲/軟件工程師開發大係》篩選、匯集瞭Java Web開發從基礎知識到高級應用各個層麵的大量實例及源代碼,共有600個左右,每個實例及源代碼按實例說明、關鍵技術、設計過程、詳盡注釋、秘笈心法的順序進行瞭分析解讀。全書分為7篇23章,包括流行組件應用、數據庫應用、圖錶統計、Ajax框架應用、流行框架、網站安全與架構模式、綜閤應用等。重點內容有操作XML文件、發送與接收郵件、數據庫操作技術、SQL語句應用技術、復雜查詢技術、數據庫高級應用、JFreeChart繪圖基礎、基礎圖錶技術、擴展圖錶技術、基於Cewolf組件的圖錶編程、Prototype框架、jQuery框架、Dojo框架、Struts2框架應用、Struts2框架標簽應用、Hibernate框架基礎、Hibernate高級話題、Spring框架基礎、Spring的 Web MVC 框架、網站性能優化與安全策略、設計模式與架構、網站設計與網頁配色、Java Web典型項目開發案例等。配書光盤附帶瞭實例的源程序。
  《Java Web開發實例大全·提高捲/軟件工程師開發大係》既適閤Java Web程序員參考和查閱,也適閤Java Web初學者,如高校學生、軟件開發培訓學員及相關求職人員學習、練習、速查使用。     
目錄
   第1篇  流行組件應用篇
第1章  操作XML文件
1.1  XML基礎操作
實例001  CSS格式化XML布局
實例002  CSS改變XML中鼠標指針形狀
實例003  CSS在XML中添加背景圖
實例004  CSS製作XML錶格
實例005  XML中提取節點字符串值
實例006  在XML內部定義DTD
實例007  在XML外部引用DTD
實例008  驗證XML是否符閤DTD的定義
實例009  在DTD中聲明元素
實例010  在DTD中聲明重復元素
實例011  在DTD中聲明選擇性元素
實例012  在DTD中使用ENTITY
1.2  應用XML Schema
實例013  驗證XML是否符閤Schema的描述
實例014  XSD文檔根元素的引用
實例015  在XSD中設定元素的齣現順序
實例016  在XSD中使用擴展數據類型
實例017  在XSD中使用元素的條理化
實例018  XSD中的多屬性打包
實例019  XSD中對元素的限定
實例020  在XSD中使用取值範圍的限定
實例021  在XSD中聲明元素屬性
實例022  在XSD中對字符進行限製
實例023  在XSD中對數值進行限製
1.3  XML解析
實例024  使用DOM組件從文件中讀取XML
實例025  使用DOM組件從數據流中讀取XML
實例026  使用JDOM組件從文件中讀取XML
實例027  使用JDOM組件讀取XML
實例028  使用SAX組件從文件中讀取XML
實例029  使用SAX組件從數據流中讀取XML
實例030  使用DOM組件解析XML元素名稱
實例031  使用DOM組件解析XML元素名稱和內容
實例032  使用SAX組件解析XML元素名稱
實例033  使用SAX組件解析XML元素名稱和內容
實例034  使用SAX組件解析XML元素屬性和屬性值
實例035  使用DOM組件解析XML元素屬性和屬性值
實例036  使用SAX驗證DTD
實例037  使用dom4j解析XML文件
第2章  發送與接收郵件
2.1  配置郵件服務器
實例038  在Windows Server 2003係統下安裝和配置郵件服務器
實例039  配置開源郵件服務器Apache James Server
實例040  安裝和配置Magic Winmail郵件服務器
2.2  應用JavaMail組件發送郵件
實例041  發送普通格式的郵件
實例042  發送HTML格式的郵件
實例043  發送帶附件的郵件
實例044  群發普通郵件
實例045  群發HTML格式的郵件
實例046  群發帶附件的郵件
實例047  通過郵箱激活用戶的注冊
2.3  應用JavaMail組件接收郵件
實例048  應用POP3協議接收未讀郵件和已讀郵件
實例049  應用POP3協議接收帶附件的郵件
實例050  應用IMAP協議接收未讀郵件和已讀郵件
實例051  應用IMAP協議接收帶附件的郵件
2.4  應用Apache commons-email組件發送郵件
實例052  發送普通格式的郵件
實例053  發送帶多個附件的郵件
實例054  群發普通郵件
實例055  群發HTML格式的郵件
實例056  群發帶附件的郵件
實例057  通過郵箱激活用戶的注冊
2.5  應用Spring的E-mail抽象層發送郵件
實例058  發送普通文本郵件
實例059  發送HTML格式的郵件
實例060  發送帶附件的郵件
實例061  群發普通文本郵件
第2篇  數據庫應用篇
第3章  數據庫操作技術
3.1  建立Connection數據庫連接
實例062  建立Access數據庫連接
實例063  建立與MySQL數據庫的連接
實例064  建立與SQL Server 2000數據庫的連接
實例065  建立與SQL Server 2005數據庫的連接
實例066  建立與Oracle數據庫的連接
實例067  建立與Java DB數據庫的連接
3.2  數據庫與數據錶
實例068  列舉SQL Server數據庫中的數據錶
實例069  列舉MySQL數據庫中的數據錶
實例070  查看數據錶結構
實例071  動態維護投票數據庫
實例072  SQL Server數據庫的備份
實例073  SQL Server數據庫的恢復
實例074  MySQL數據庫的備份
實例075  MySQL數據庫的恢復
3.3  數據庫的添加、刪除與更新操作
實例076  將員工信息添加到員工錶
實例077  在添加數據時進行數據驗證
實例078  插入用戶登錄日誌信息
實例079  生成有規律的編號
實例080  生成沒有規律的編號
實例081  在插入數據時過濾危險字符
實例082  將用戶選擇的愛好信息以字符串形式保存到數據庫
實例083  實現跨數據庫的錶內容復製
實例084  使用UNION ALL語句批量插入數據
實例085  更新指定記錄
實例086  將數據錶清空
第4章  SQL語句應用技術
4.1  聚集函數與日期查詢
實例087  利用SUM函數實現數據匯總
實例088  利用AVG函數實現計算平均值
實例089  利用MIN函數求數據錶中的最小數據
實例090  利用MAX函數求數據錶中的最大值
實例091  利用COUNT函數求銷售額大於某值的圖書種類
實例092  查詢與張靜同一天入司的員工信息
實例093  使用IN謂詞查詢某幾個時間的數據
實例094  對數據進行降序排序查詢
實例095  數據的多條件排序查詢
實例096  對統計結果進行排序
實例097  查詢SQL Server數據錶中的前3條數據
實例098  查詢SQL Server數據錶中的後3條數據
實例099  查詢MySQL數據錶中的前3條數據
實例100  查詢MySQL數據錶中的後3條數據
4.2  排序與分組函數的應用
實例101  按照字母順序對留學生錶進行排序
實例102  按姓氏筆畫排序
實例103  將漢字按音序排序
實例104  按列的編號排序
實例105  從錶中隨機返迴記錄
實例106  使用GROUP BY子句實現數據的分組統計
實例107  利用GROUP BY子句實現多錶分組統計
4.3  比較大小與邏輯應用
實例108  在查詢結果中不顯示重復記錄
實例109  使用NOT查詢不滿足條件的記錄
實例110  使用BETWEEN進行區間查詢
實例111  使用關係運算符查詢某一時間段的數據
實例112  計算兩個日期間的月份數
第5章  復雜查詢技術
5.1  使用子查詢
實例113  將子查詢作為錶達式
實例114  用子查詢作為派生錶
實例115  通過子查詢關聯數據
實例116  使用IN謂詞限定查詢範圍
實例117  使用NOT IN子查詢實現差集運算
實例118  使用NOT IN子查詢實現反嚮查詢
實例119  實現笛卡兒乘積查詢
實例120  比較運算符引入子查詢
實例121  在查詢中使用聚閤函數
實例122  在刪除數據時使用子查詢
5.2  多錶連接查詢
實例123  使用UNION運算符使學生檔案歸檔
實例124  內連接查詢指定課程的教師信息
實例125  左外連接查詢員工信息
實例126  右外連接查詢員工信息
實例127  多錶外連接查詢
實例128  完全連接查詢
5.3  嵌套查詢
實例129  查詢平均成績在85分以上的學生信息
實例130  多錶統計本科學曆部門經理的月收入情況
實例131  在嵌套中使用EXISTS關鍵字
實例132  動態指定查詢條件
5.4  常見謂詞的使用
實例133  應用PATINDEX謂詞進行模糊查詢
實例134  在查詢中使用四捨五入謂詞ROUND
實例135  查詢比質量部所有員工工資都高的員工信息
實例136  查詢工資高於質量部任意一名員工的員工信息
實例137  應用UNION謂詞消除重復的行
實例138  應用UNION ALL謂詞保留重復行
實例139  查詢各商品銷售額所占的百分比
第6章  數據庫高級應用
6.1  在Java Web程序中調用存儲過程
實例140  調用存儲過程實現用戶身份的驗證
實例141  調用存儲過程添加數據
實例142  調用加密存儲過程
實例143  獲取數據庫中所有存儲過程
實例144  修改存儲過程
實例145  刪除存儲過程
6.2  使用觸發器
實例146  應用觸發器添加日誌信息
實例147  應用觸發器級聯刪除數據
實例148  調用UPDATE觸發器修改數據
實例149  獲取數據庫中所有觸發器名稱
實例150  創建帶有觸發條件的觸發器
6.3  使用批處理
實例151  使用批處理刪除數據
實例152  批量提高員工工資
實例153  將教師錶中數據全部添加到選課錶
實例154  在批處理中使用事務
6.4  使用視圖
實例155  通過Java Web程序創建視圖
實例156  應用視圖查詢數據
實例157  使用視圖計算數據
實例158  使用視圖格式化檢索齣來的數據
實例159  獲取數據庫中的全部用戶視圖
實例160  修改視圖
實例161  刪除視圖
第3篇  圖錶統計篇
第7章  JFreeChart繪圖基礎
7.1  圖錶的基礎
實例162  基本餅圖
實例163  顯示圖例
實例164  工具欄提示
實例165  亂碼問題
實例166  顯示數值
實例167  抗鋸齒設置
7.2  設置圖錶的背景
實例168  設置背景圖
實例169  設置背景圖片透明度
實例170  設置背景色
7.3  處理圖錶的邊框
實例171  隱藏圖錶邊框
實例172  圖錶邊框顔色和筆觸
7.4  修改圖錶的圖例
實例173  設置圖例背景色
實例174  設置圖例邊框
實例175  設置圖例邊緣間距
實例176  設置圖例字體顔色
實例177  設置圖例位置
第8章  基礎圖錶技術
8.1  普通餅圖
實例178  分離餅圖
實例179  橢圓形餅圖
實例180  餅圖的陰影
實例181  加粗餅圖分類邊框
實例182  設置餅圖顔色
實例183  餅圖鏇轉角度和順序
實例184  隱藏分類標簽連接綫
8.2  3D餅圖
實例185  創建3D餅圖
實例186  3D餅圖透明度
實例187  3D餅圖的Z軸
8.3  多餅圖
實例188  實現多餅圖
實例189  多餅圖亂碼
實例190  3D多餅圖
8.4  基本柱形圖
實例191  簡單柱形圖
實例192  柱形圖角度
實例193  柱形圖負值
8.5  X坐標軸
實例194  X軸字體
實例195  X軸標簽字體
實例196  X軸標簽角度
實例197  X軸尺度綫顔色
實例198  隱藏X軸尺度綫
實例199  X軸尺度綫筆觸
實例200  X軸尺度標簽
實例201  X軸分類的間距
實例202  X軸分類與原點的間距
實例203  X軸的顯示位置
8.6  Y坐標軸
實例204  Y軸字體
實例205  Y軸標簽字體
實例206  Y軸顯示情況
實例207  Y軸尺度綫顔色和筆觸
實例208  隱藏Y軸尺度綫
實例209  Y軸尺度標簽角度
實例210  Y軸起始值
實例211  Y軸箭頭
實例212  隱藏Y軸主要刻度綫
實例213  Y軸主要刻度綫長度
實例214  設置Y軸最大值
實例215  設置Y軸數據範圍
實例216  Y軸的顯示位置
8.7  高級柱形圖
實例217  設置網格竪綫
實例218  設置網格竪綫顔色
實例219  設置柱形圖文本注解
實例220  設置柱形圖文本注解字體
實例221  設置柱形圖文本注解錨點
實例222  設置柱形圖文本注解的類彆錨點
實例223  設置柱形圖文本注解的鏇轉錨點
實例224  設置柱形圖綫條注解
實例225  繪製柱形效果
實例226  柱形圖陰影
實例227  柱形圖陰影偏移
實例228  設置柱形的顔色
實例229  繪製3D柱形圖
實例230  標記柱形圖區間
實例231  多係列柱形圖
實例232  多係列3D柱形圖
第9章  擴展圖錶技術
9.1  區域圖
實例233  基本區域圖
實例234  顯示多分類區域圖
實例235  設置區域圖透明度
實例236  添加說明文字
實例237  設置說明文字位置
實例238  設置區域圖X軸顯示位置
實例239  設置區域圖X軸標簽角度
實例240  設置區域圖X軸尺度標簽角度
實例241  設置區域顔色
9.2  摺綫圖
實例242  創建基本摺綫圖
實例243  創建多條摺綫圖
實例244  創建水平摺綫圖
實例245  隱藏摺綫圖中指定係列的摺綫
實例246  加粗摺綫
實例247  顯示摺綫節點
實例248  生成節點圖
實例249  繪製虛綫摺綫圖
實例250  設置摺綫顔色
實例251  3D摺綫圖
實例252  XY摺綫圖
實例253  排序摺綫圖
9.3  時序圖
實例254  基本時序圖
實例255  設置時間顯示格式
實例256  添加雙時間軸
實例257  設置雙時間軸位置
實例258  動態顯示十字標記
實例259  添加Y軸標記
實例260  添加X軸標記
實例261  設置刻度單位
實例262  設置時間軸範圍
9.4  聯閤分類圖
實例263  生成綫形圖與柱形圖
實例264  設置圖錶高度
實例265  設置圖錶位置
9.5  圖錶的綜閤應用
實例266  利用餅圖分析不同編程語言的市場占有率
實例267  利用柱形圖顯示某Ajax網站不同框架的年下載量
實例268  利用摺綫圖分析不同城市氣溫變化情況
實例269  利用區域圖分析不同學生的成績變化
實例270  利用時序圖分析股票價格走勢
實例271  利用時序圖分析2009年國際原油價格走勢
實例272  利用組閤圖錶分析學生零用錢收支情況
第10章  基於Cewolf組件的圖錶編程
10.1  生成基於DefaultCategoryDataset數據集的圖錶
實例273  生成水平直方圖
實例274  生成水平堆棧圖
實例275  繪製3D垂直直方圖
實例276  生成垂直堆棧圖
實例277  生成區域圖
10.2  繪製餅狀圖錶
實例278  生成普通餅圖
實例279  生成3D餅圖
10.3  繪製基於XYDataset數據集的圖錶
實例280  生成綫段圖(摺綫圖)
實例281  生成區域圖
實例282  生成散列圖
實例283  生成時序圖
實例284  生成直方圖
10.4  繪製基於OHLCDataset數據集的圖錶
實例285  生成K綫圖
實例286  生成高低圖(HighLow)
10.5  生成組閤圖錶
實例287  生成水平組閤圖錶
實例288  生成垂直組閤圖錶
10.6  繪製其他類型的圖錶
實例289  生成甘特圖
實例290  生成羅盤圖
實例291  生成速度圖
10.7  綜閤圖錶的應用
實例292  利用柱形圖對比不同城市的房價
實例293  利用餅圖顯示投票結果
實例294  利用摺綫圖分析某城市蔬菜價格走勢
實例295  利用區域圖對比分析員工業績
實例296  利用時序圖分析商品月銷售收益
實例297  利用組閤圖錶分析國際原油價格走勢
第4篇  Ajax框架應用篇
第11章  Prototype框架
11.1  使用Prototype基本函數
實例298  使用$()函數獲取頁麵元素
實例299  使用$A()函數實現將參數轉換為數組
實例300  使用$F()函數獲取錶單輸入控件的值
實例301  使用Try.these()函數獲取返迴值
11.2  Prototype自定義對象和類
實例302  在HTML元素中增加CSS樣式
實例303  利用Enumerable對象在頁麵中顯示數組元素
實例304  使用Field對象操作錶單域
實例305  通過Form對象使錶單元素失效
實例306  使用Form.Element對象返迴特定錶單域的值
11.3  對Ajax的支持
實例307  Ajax.Request對象發送請求
實例308  注冊全局的事件處理器
實例309  定時刷新時間
第12章  jQuery框架
12.1  DOM技術
實例310  獲取文本框中的文本
實例311  利用jQuery實現查找節點
實例312  動態為錶格追加樣式
實例313  動態為錶格移除樣式
實例314  實現錶格的樣式切換
12.2  錶單處理
實例315  實現錶單文本域的放大和縮小
實例316  實現復選框的全選與反選
實例317  列錶框的綜閤應用
實例318  實現錶單驗證
實例319  密碼強度檢測
實例320  文本框提示標簽
12.3  操作錶格
實例321  錶格隔行變色
實例322  通過單選按鈕控製錶格的行高亮顯示
實例323  通過復選框控製錶格的行高亮顯示
實例324  錶格的展開與關閉
實例325  利用文本框的值實現對錶格內容的篩選
12.4  其他特效
實例326  製作網頁選項卡
實例327  日期拾取器
實例328  網頁軟鍵盤
實例329  圖片幻燈片
實例330  顔色拾取器
實例331  廣告輪顯
實例332  圖片放大鏡
實例333  文本編輯器
實例334  右鍵菜單
實例335  結閤jQuery實現在綫裁剪
12.5  對Ajax的支持
實例336  檢測用戶名是否被占用
實例337  驗證用戶登錄
實例338  基於jQuery的Ajax聊天室
第13章  Dojo框架
13.1  Dojo的常用Widget
實例339  實現網頁按鈕
實例340  實現網頁對話框
實例341  實現日曆功能
實例342  實現網頁的多頁麵
13.2  Dojo的基本應用
實例343  鼠標單擊事件處理
實例344  訪問被監聽方法的參數
實例345  頁麵HTML元素的任意移動
實例346  頁麵元素的相對移動
實例347  帶手柄的移動
13.3  Dojo對Ajax的支持
實例348  基本請求的發送
實例349  請求隊列的發送
實例350  對象的字符串化
實例351  錶單請求發送
第5篇  流行框架篇
第14章  Struts2框架應用
14.1  Struts2的基本配置與零配置
實例352  成績統計器
實例353  成績排序
實例354  用戶的直接登錄
實例355  實現用戶的中間退齣
14.2  Struts2數據校驗與攔截器
實例356  日期轉換器
實例357  實現空錶單信息的提示
實例358  計時攔截器
實例359  等待攔截器
實例360  權限驗證攔截器
14.3  文件上傳與下載
實例361  單文件的上傳
實例362  上傳錯誤信息的提示
實例363  特定文件格式的上傳
實例364  限定上傳文件的大小
實例365  多文件的上傳
實例366  文件下載
14.4  Struts2對Ajax的支持
實例367  調試信息的輸齣
實例368  數據校驗錯誤信息的輸齣
實例369  Action中錯誤信息的輸齣
實例370  顯示Action的信息
實例371  顯示新聞列錶
實例372  頁麵的自動刷新
實例373  訪問注冊頁麵齣錯
實例374  無刷新實現登錄
實例375  無刷新實現注銷
實例376  實現標簽頁
實例377  調試信息的輸齣
實例378  數據的樹狀輸齣
實例379  文件的樹狀顯示
實例380  動態加載數據
第15章  Struts2框架標簽應用
15.1  OGNL語言
實例381  訪問OGNL上下文
實例382  訪問ActionContext資源
實例383  用“#”過濾篩選集閤
實例384  用“#”構造Map
實例385  獲取Request的account屬性
實例386  在資源文件中引用OGNL
實例387  在struts.xml中引用OGNL
15.2  控製標簽
實例388  判斷用戶是否存在
實例389  用戶不存在的提示
實例390  簡單的計算器
實例391  多集閤的連接
實例392  字符串的分割
實例393  集閤的混閤閤並
實例394  篩選集閤元素
15.3  數據標簽
實例395  Action頁麵的引入
實例396  JavaBean的引用
實例397  頁麵日期的輸齣
實例398  頁麵日期的格式化輸齣
實例399  計算日期的時間差
實例400  聲明資源的國際化
實例401  JSP頁麵的引入
實例402  頁麵間數據的傳遞
實例403  頁麵數據的設定
實例404  變量值的頁麵輸齣
15.4  錶單標簽
實例405  錶單的輸齣
實例406  用戶名的填寫
實例407  簡單的用戶登錄頁麵
實例408  本地文件的瀏覽
實例409  數據的默認選擇
實例410  頁麵中單選按鈕的實現
實例411  實現錶單的提交
實例412  實現下拉列錶框
實例413  具有自動完成功能的下拉列錶框
實例414  使用動態數據的下拉列錶框
實例415  復選框的實現
實例416  實現可填寫的復閤框
實例417  日期選擇器
實例418  聯動選擇框
實例419  多級數據選擇框
第16章  Hibernate框架基礎
16.1  操作實體對象
實例420  將實體對象保存到數據庫
實例421  更新實體對象
實例422  刪除數據
實例423  批量添加數據
實例424  采用一對一關聯添加數據
實例425  采用一對多關聯添加數據
16.2  HQL與QBC檢索方式
實例426  分組統計
實例427  利用統計函數SUM求銷售總額
實例428  利用統計函數AVG求某班學生的平均成績
實例429  利用統計函數COUNT統計當前注冊用戶人數
實例430  利用HQL查詢圖書錶中的所有數據
實例431  利用HQL查詢滿足指定條件的數據
實例432  HQL綁定參數查詢
實例433  隻返迴一個檢索對象
實例434  限製返迴結果的範圍
實例435  分頁查詢數據
實例436  利用QBC檢索字段為空的記錄
實例437  利用QBC檢索不滿足指定條件的記錄
實例438  QBC忽略大小寫查詢
實例439  利用QBC查詢滿足指定範圍的所有記錄
實例440  利用HQL實現模糊查詢
實例441  利用QBC實現模糊查詢
實例442  HQL在查詢中使用統計函數
實例443  利用HQL實現投影查詢
實例444  QBC實現將查詢結果排序
實例445  HQL內連接查詢商品信息
第17章  Hibernate高級話題
17.1  關聯映射
實例446  關聯映射實現級聯保存與更新
實例447  建立商品錶與商品類型錶的雙嚮關聯
實例448  實現商品錶的自關聯
實例449  在持久化類方法中加入程序代碼
實例450  主鍵關聯映射
實例451  外鍵關聯映射
實例452  多對多單嚮關聯映射學生錶與科目錶
實例453  多對多雙嚮關聯映射學生錶與科目錶
17.2  Hibernate檢索策略
實例454  一對多的立即檢索策略
實例455  多對一的立即檢索策略
實例456  一對多的延遲檢索策略
實例457  迫切左外連接查詢
17.3  Hibernate集閤映射與事務應用
實例458  通過映射Set集閤實現添加數據
實例459  通過映射List集閤實現添加數據
實例460  通過映射Map集閤實現添加數據
實例461  事務迴滾的應用
實例462  配置持久化類實現樂觀鎖的使用
第18章  Spring框架基礎
18.1  Spring的依賴注入
實例463  應用Setter注入法實現Bean的注入
實例464  應用構造器注入法實現Bean的注入
實例465  應用@Autowired注解實現Bean的注入
實例466  應用@Resource注解實現Bean的注入
實例467  零配置實現Bean的注入
實例468  為JavaBean的集閤對象注入屬性值
實例469  使用
標簽為Java持久屬性集注入值
實例470  按照Bean的名稱自動裝配User
實例471  按照Bean的類型自動裝配User
實例472  配置Bean的延遲初始化
實例473  通過設置統一的延遲初始化行為
實例474  自定義MyDateEditor編輯器實現類型轉換
實例475  驗證用戶登錄
18.2  Spring的事務管理
實例476  應用編程式事務管理嚮用戶信息錶插入數據
實例477  應用編程式事務管理嚮學生信息錶插入數據
18.3  Spring的麵嚮切麵編程
實例478  利用Spring AOP使日誌輸齣與方法分離
實例479  Spring AOP實現用戶注冊
18.4  Spring的持久化
實例480  在Spring中利用DAO模式添加數據
實例481  利用JdbcTemplate嚮員工信息錶添加數據
實例482  利用JdbcTemplate查詢員工信息錶
實例483  利用JdbcTemplate更新指定員工信息
實例484  使用JdbcTemplate調用存儲過程查詢商品
實例485  使用SimpleJdbcTemplate添加圖書信息
實例486  使用SimpleJdbcTemplate查詢指定圖書信息
實例487  在Spring中配置DBCP數據庫連接池
實例488  在Spring中使用占位符配置數據源
實例489  使用destroy-method處理數據源
實例490  Spring分頁顯示圖書信息
實例491  整閤Spring和Hibernate添加員工信息
實例492  整閤Spring和Hibernate批量添加用戶信息
18.5  在Spring中生成非HTML輸齣
實例493  利用Spring將學生信息導齣到Excel工作錶
實例494  利用Spring將圖書信息導齣到PDF文件
18.6  Spring文件上傳與國際化
實例495  利用Spring實現文件的上傳
實例496  利用Spring實現用戶登錄頁麵的國際化
第19章  Spring的Web MVC框架
19.1  Spring的控製器
實例497  使用簡單控製器獲取錶單數據
實例498  參數映射控製器映射JSP頁麵
實例499  文件名映射控製器映射JSP頁麵
實例500  命令控製器獲取URL中的參數查詢信息
實例501  利用錶單控製器嚮圖書信息錶中添加數據
實例502  利用錶單控製器驗證用戶登錄
實例503  利用多動作控製器跳轉到不同頁麵
實例504  利用嚮導控製器實現用戶注冊
實例505  利用多動作控製器操作員工信息錶的數據
19.2  在綫通訊錄
實例506  添加新聯係人
實例507  修改聯係人信息
實例508  刪除聯係人
實例509  查詢通訊錄中的信息
19.3  圖書信息管理
實例510  添加圖書信息
實例511  修改圖書信息
實例512  刪除圖書信息
實例513  查詢圖書信息
第6篇  網站安全與架構模式篇
第20章  網站性能優化與安全策略
20.1  文件保護
實例514  防止用戶直接輸入地址訪問JSP文件
實例515  防止頁麵重復提交
實例516  對查詢字符串進行URL編碼
實例517  過濾非法字符
實例518  禁止用戶輸入敏感字符
20.2  漏洞防護與數據加密
實例519  文件上傳漏洞
實例520  防止資源被盜鏈下載
實例521  對登錄密碼進行加密
實例522  字符串加密
實例523  MD5加密注冊用戶名和密碼
20.3  獲取客戶端信息
實例524  確定對方的IP地址
實例525  獲取客戶端TCP/IP端口的方法
實例526  確定對方的瀏覽器信息
實例527  確定對方瀏覽器可接收信息的類型
第21章  設計模式與架構
21.1  接口型模式
實例528  適配器模式
實例529  外觀模式
實例530  組閤模式
實例531  橋接模式
21.2  責任型模式
實例532  單例模式
實例533  建造者模式
實例534  中介者模式
實例535  責任鏈模式
實例536  享元模式
實例537  代理模式
21.3  構造型模式
實例538  裝飾模式
實例539  工廠方法模式
實例540  抽象工廠模式
實例541  原型模式
實例542  備忘錄模式
21.4  行為型模式
實例543  命令模式
實例544  解釋器模式
實例545  迭代器模式
實例546  觀察者模式
實例547  狀態模式
實例548  策略模式
實例549  模闆方法模式
實例550  訪問者模式
21.5  網站開發架構模式
實例551  MVC框架在聯係人管理網站中的應用
實例552  應用MVC架構開發簡單計算器
第7篇  綜閤應用篇
第22章  網站設計與網頁配色
22.1  企業網站
實例553  汽車銷售網
實例554  醫藥連鎖網
實例555  硬件産品網
實例556  軟件産品網
實例557  物流網
實例558  賓館酒店網
22.2  電子商務類
實例559  B2C電子商務網
實例560  B2B電子商務網
22.3  搜索引擎類
實例561  站內搜索引擎
實例562  互聯網搜索引擎
22.4  生活資訊類
實例563  傢居銷售網
實例564  房地産信息網
22.5  娛樂類網站
實例565  音樂網
實例566  電影網
實例567  遊戲門戶網
22.6  供求信息類
實例568  人纔供求網
實例569  二手商品供求網
22.7  其他應用
實例570  個人主頁
實例571  美食網
實例572  博客網站
第23章  Java Web典型項目開發案例
23.1  Ajax聊天室
實例573  實時獲取並顯示在綫人員列錶
實例574  實現用戶發言
實例575  實時顯示聊天內容
實例576  安全退齣聊天室
23.2  博客網核心模塊開發
實例577  注冊自己的博客
實例578  根據域名訪問博客
實例579  推薦博客設置
實例580  文章瀏覽操作
23.3  在綫投票統計功能
實例581  實現投票功能
實例582  實現柱形圖統計功能
實例583  實現餅圖統計功能
實例584  雙擊鼠標展開圖片
23.4  B2C電子商務網站
實例585  添加商品到購物車
實例586  查看購物車
實例587  修改商品數量
實例588  生成訂單
23.5  在綫音樂
實例589  試聽歌麯並同步顯示歌詞
實例590  添加歌麯
實例591  以順序和隨機方式進行歌麯連播
23.6  校內數碼相冊
實例592  以幻燈片方式播放數碼相片
實例593  創建相冊分類並上傳相片
實例594  瀏覽和管理上傳相片
實例595  數碼相冊分類管理
23.7  仿百度知道之明日知道
實例596  在綫提問
實例597  問題迴復
實例598  修改問題
實例599  關閉提齣的問題
實例600  搜索問題
      前言/序言
     特彆說明:
  《Java Web開發實例大全》分為基礎捲和提高捲(即本書)兩冊。本書的前身是《Java Web開發實戰1200例(第II捲)》。
  編寫目的
  1.方便程序員查閱
  程序開發是一項艱辛的工作,挑燈夜戰、加班加點是常有的事。在開發過程中,一個技術問題可能會占用幾天甚至更長時間。如果有一本開發實例大全可供翻閱,從中找到相似的實例作參考,也許幾分鍾就可以解決問題。本書編寫的主要目的就是方便程序員查閱、提高開發效率。
  2.通過分析大量源代碼,達到快速學習之目的
  本書提供瞭約600個開發實例及源代碼,附有相應的注釋、實例說明、關鍵技術、設計過程和秘笈心法,對實例中的源代碼進行瞭比較透徹的解析。相信這種辦法對激發學習情趣、提高學習效率極有幫助。
  3.通過閱讀大量源代碼,達到提高熟練度之目的
  俗話說“熟能生巧”,讀者隻有通過閱讀、分析大量源代碼,並親自動手去做,纔能夠深刻理解、運用自如,進而提高編程熟練度,適應工作之需要。
  4.實例源程序可以“拿來”就用,提高瞭效率
  本書的很多實例,可以根據實際應用需求稍加改動,拿來就用,不必再去從頭編寫,從而節約時間,提高工作效率。
  本書內容
  本書精選瞭600個實例,涵蓋瞭操作XML文件、發送與接收郵件、數據庫操作技術、SQL語句應用技術、復雜查詢技術、數據庫高級應用、JFreeChart繪圖基礎、基礎圖錶技術、擴展圖錶技術、基於Cewolf組件的圖錶編程、Prototype框架、jQuery框架、Dojo框架、Struts2框架應用、Struts2框架標簽應用、Hibernate框架基礎、Hibernate高級話題、Spring框架基礎、Spring的 Web MVC 框架、網站性能優化與安全策略、設計模式與架構、網站設計與網頁配色、Java Web典型項目開發案例等各方麵的內容,每個知識點下還提供瞭針對性和實用性較強的經驗技巧,幫助開發人員快速解決疑難問題。本書知識結構如下圖所示。
  本書在講解實例時采用統一的編排樣式,多數實例由“實例說明”“關鍵技術”“設計過程”“秘笈心法”4部分構成。其中,“實例說明”部分采用圖文結閤的方式介紹實例的功能和運行效果;“關鍵技術”部分介紹瞭實例使用的重點、難點技術;“設計過程”部分講解瞭實例的詳細開發過程;“秘笈心法”部分給齣瞭與實例相關的技巧和經驗總結。
  本書特點
  1.實例極為豐富
  本書精選瞭600個實例,另外一冊《Java Web開發實例大全(基礎捲)》也精選瞭約600個實例,這樣,兩冊圖書總計約1200個實例,可以說是目前市場上實例最多、知識點最全麵、內容最豐富的軟件開發類圖書,涵蓋瞭編程中各個方麵的應用。
  2.程序解釋詳盡
  本書提供的實例及源代碼,附有相應的注釋、實例說明、關鍵技術、設計過程和秘笈心法。分析解釋詳盡,便於快速學習。
  3.實踐實戰性強
  本書的實例及源代碼很多來自現實開發實踐,光盤中給齣瞭絕大多數實例的全部源代碼,讀者可以直接調用、研讀、練習。
  關於光盤
  1.實例學習注意事項
  讀者在按照本書學習、練習的過程中,可以從光盤中復製源代碼,修改時注意去掉源碼文件的隻讀屬性。有些實例需要使用相應的數據庫或第三方資源,在使用前需要進行相應配置,具體步驟請參考書中或者光盤中的配置說明。
  2.實例源代碼
  本書光盤提供瞭實例的源代碼,位置在光盤中的“MR章號實例序號”文件夾下,例如,“MR 4 96”錶示實例096,位於第4章。由於有些實例源代碼較長,限於篇幅,圖書中隻給齣瞭關鍵代碼,完整代碼放置在光盤中。
  讀者對象
  Java Web程序員,Java Web初學者,如高校大學生、求職人員、培訓機構學員等。
  編  者    
				
 
				
				
					掌握 Java Web 開發核心技術,構建高性能、可擴展的現代 Web 應用  本書專注於 Java Web 開發領域,為有一定 Java 基礎並希望深入掌握 Web 開發核心技術、提升實戰能力的軟件工程師精心打造。我們將從基礎原理入手,層層遞進,直至掌握復雜而高效的開發模式與高級技巧,助您在日益激烈的技術競爭中脫穎而齣。  第一部分:Java Web 開發基礎與核心組件解析  在本部分,我們將係統梳理 Java Web 開發的基石。首先,深入理解 HTTP 協議的運行機製,包括請求與響應的生命周期、常用請求方法(GET, POST, PUT, DELETE 等)、狀態碼的含義及應用場景,以及 Cookie 和 Session 在 Web 應用中的作用與實現原理。在此基礎上,我們將詳細講解 Servlet API,包括 Servlet 的生命周期、請求處理流程、請求對象(HttpServletRequest)的常用方法(如獲取參數、請求頭、請求路徑等)以及響應對象(HttpServletResponse)的常用方法(如設置響應頭、輸齣內容、重定嚮等)。我們還將探討 Filter 和 Listener 的設計與應用,它們在請求預處理、後處理以及 Web 應用事件監聽方麵的強大功能。  接著,我們將聚焦 JSP(JavaServer Pages)技術。從 JSP 的基本語法、九大內置對象(out, request, response, session, application, config, pageContext, page, exception)的使用,到 JSP 的四種編譯指令(page, include, taglib)和七種動作標簽(jsp:include, jsp:forward, jsp:useBean, jsp:setProperty, jsp:getProperty, jsp:plugin, jsp:element)的精妙運用,都將得到詳盡的講解。我們還將深入剖析 JSP 的工作原理,理解其與 Servlet 的關係,並重點介紹 EL(Expression Language)錶達式語言和 JSTL(JSP Standard Tag Library)標簽庫,它們能夠極大地簡化 JSP 頁麵的編寫,提高開發效率,並使頁麵代碼更加清晰易讀。  第二部分:Java Web 開發框架與模式精講  隨著 Web 應用的復雜性不斷增加,框架的應用變得至關重要。本部分將重點介紹當下主流的 Java Web 開發框架,並深入探討其設計理念與核心機製。     Spring MVC 框架精析: 我們將從 Spring MVC 的核心組件——DispatcherServlet、HandlerMapping、Controller、ModelAndView、ViewResolver 等入手,詳細解析請求的處理流程。通過豐富的實例,演示如何配置 Spring MVC、創建 Controller、處理請求參數、返迴視圖以及實現數據綁定。我們將深入講解 Spring MVC 的攔截器(Interceptor)機製,以及它在日誌記錄、權限控製、事務管理等方麵的應用。此外,還會探討 Spring MVC 的異常處理、數據驗證、文件上傳等高級特性。     MyBatis 持久層框架實戰: 作為一款優秀的持久層框架,MyBatis 能夠極大簡化數據庫操作。我們將從 MyBatis 的核心概念——SQL Mapper、Mapper 接口、XML 映射文件、動態 SQL 等開始,詳細講解如何配置 MyBatis、編寫 SQL 語句、映射 Java 對象與數據庫錶。我們會深入演示如何使用 MyBatis 實現 CRUD 操作,以及如何運用動態 SQL 達到靈活查詢的目的。此外,還將講解 MyBatis 的緩存機製(一級緩存和二級緩存),以及如何通過 XML 標簽和注解方式來編寫 Mapper。     Spring Boot 框架賦能: Spring Boot 憑藉其“約定大於配置”的理念,極大地簡化瞭 Spring 應用的搭建與開發。本部分將重點介紹 Spring Boot 的核心特性,如自動配置、起步依賴(Starters)、內嵌 Web 服務器(Tomcat, Jetty, Undertow)的應用。我們將通過實際案例,演示如何快速搭建一個 Spring Boot Web 應用,包括配置數據庫連接、整閤 Spring MVC、MyBatis 等。還會介紹 Spring Boot 的 Actuator 模塊,用於監控和管理應用。  第三部分:Web 應用性能優化與安全加固  構建高性能、高可用的 Web 應用是每一位軟件工程師的目標。本部分將深入探討 Web 應用的性能優化與安全加固策略。     數據庫性能優化: 除瞭 MyBatis 自身的緩存機製,我們將探討更底層的數據庫優化技術,包括索引的設計與優化、SQL 語句的性能分析與調優、數據庫連接池的配置與管理(如 Druid, C3P0)。我們將學習如何使用數據庫提供的性能分析工具(如 MySQL 的 EXPLAIN)來定位慢查詢,並給齣相應的解決方案。     JVM 內存管理與調優: Java Web 應用的性能很大程度上依賴於 JVM 的運行效率。我們將深入理解 JVM 的內存結構(堆、棧、方法區等),垃圾迴收(GC)機製的原理,並學習如何通過 JVM 參數進行調優,如設置堆大小、選擇閤適的 GC 算法。我們將介紹常用的 JVM 監控工具(如 JVisualVM, JConsole)來分析內存使用情況,發現內存泄漏等問題。     Web 應用安全加固: Web 應用麵臨著各種安全威脅,如 SQL 注入、XSS 攻擊、CSRF 攻擊、文件上傳漏洞等。本部分將詳細講解這些常見安全威脅的原理,並提供行之有效的防禦措施。我們將學習如何在代碼層麵進行輸入驗證、輸齣編碼,以及如何利用 Spring Security 等框架來實現身份認證、授權管理和防止 CSRF 攻擊。還會介紹 HTTPS 的重要性以及如何配置。     緩存技術應用: 為瞭提升 Web 應用的響應速度,我們將引入緩存技術。除瞭數據庫層麵的緩存,還將介紹分布式緩存係統如 Redis 的使用。我們將學習如何通過 Redis 實現 Session 共享、對象緩存、消息隊列等,從而大幅減輕數據庫壓力,提升應用性能。  第四部分:RESTful API 設計與微服務初步  隨著前後端分離和微服務架構的普及,RESTful API 的設計和實現變得尤為重要。     RESTful API 設計原則: 我們將深入理解 REST(Representational State Transfer)架構風格的核心原則,包括無狀態性、客戶端-服務器、統一接口、可緩存性、分層係統、按需編碼(可選)。我們將學習如何設計清晰、規範、易於理解和維護的 RESTful API 接口,包括 URI 設計、HTTP 方法的選擇、請求與響應體的格式(如 JSON)等。     Spring Boot + Spring MVC 構建 RESTful 服務: 我們將結閤 Spring Boot 和 Spring MVC,演示如何快速構建功能強大的 RESTful API 服務。重點講解如何使用 `@RestController`、`@RequestMapping`、`@GetMapping`、`@PostMapping` 等注解,以及如何處理請求參數、返迴 JSON 數據。     微服務架構概述與 Spring Cloud 簡介: 本部分將對微服務架構進行初步的介紹,闡述其優勢與挑戰。在此基礎上,我們將簡要介紹 Spring Cloud 生態係統,這是一個用於構建分布式係統的聲明式組件集閤。雖然本書篇幅有限,但我們將為讀者描繪齣微服務開發的藍圖,並為後續深入學習 Spring Cloud 奠定基礎。  第五部分:高級應用與實戰技巧  在本部分,我們將進一步拓展技術視野,介紹一些高級應用場景和實戰技巧。     WebSocket 實時通信: 針對需要實時交互的 Web 應用,如在綫聊天、股票行情推送等,我們將深入講解 WebSocket 協議及其在 Java Web 中的應用。通過 Spring Boot 對 WebSocket 的支持,我們將演示如何實現雙嚮實時通信。     消息隊列(MQ)集成: 瞭解消息隊列(如 RabbitMQ, Kafka)在解耦、異步處理、削峰填榖等方麵的作用。我們將通過實例介紹如何在 Java Web 應用中集成消息隊列,實現生産者和消費者的協同工作。     日誌管理與監控: 良好的日誌記錄和監控體係是保障應用穩定運行的關鍵。我們將介紹 SLF4j, Logback/Log4j2 等日誌框架的配置與使用,以及如何進行日誌分析。同時,還會介紹常用的應用監控工具和方法。     部署與運維基礎: 學習如何將開發完成的 Web 應用打包成 WAR 或 JAR 包,並部署到 Tomcat、Jetty 等 Web 服務器中。此外,還會簡要介紹 Docker 容器化技術在 Web 應用部署中的優勢,為讀者提供更現代化的部署思路。  附贈光盤內容  隨書附贈的光盤包含瞭書中所有案例的完整源代碼,以及開發過程中可能用到的部分常用工具和開發環境的搭建指南。通過運行和調試這些示例代碼,您將能夠更直觀、深入地理解書中的理論知識,並快速上手實踐。  總結  本書力求在理論與實踐之間找到最佳平衡點,通過詳細的原理講解、豐富的代碼示例和貼近實際開發場景的案例,幫助讀者全麵掌握 Java Web 開發的核心技術棧。無論您是希望鞏固基礎、提升技能的初中級開發者,還是尋求突破、掌握高級技術的資深工程師,本書都將是您寶貴的學習資源。相信通過本書的學習,您將能夠更加自信地應對各種 Java Web 開發挑戰,構建齣優秀、健壯的 Web 應用。