TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
Java Web從入門到精通(附光碟)(簡體書)
滿額折

Java Web從入門到精通(附光碟)(簡體書)

人民幣定價:69.8 元
定  價:NT$ 419 元
優惠價:87365
領券後再享88折
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:10 點
相關商品
商品簡介
名人/編輯推薦
目次
書摘/試閱

商品簡介

《軟件開發視頻大講堂:Java Web從入門到精通》從初學者角度出發,通過通俗易懂的語言、豐富多彩的實例,詳細介紹了進行JavaWeb應用程序開發應該掌握的各方面技術。全書共分21章,包括JavaWeb應用開發概述、HTML與CSS網頁開發基礎、JavaSCRIPT腳本語言、搭建開發環境、JSP基本語法、JSP內置對象、JavaBEAN技術、SERVLET技術、過濾器和監聽器、JavaWeb的數據庫操作、EL(表達式語言)、JSTL標簽、AJAX技術、STRUTS2基礎、STRUTS2高級技術、HIBERNATE技術、HIBERNATE高級應用、SPRING核心之IOC、SPRING核心之AOP、JSP操作XML、清爽夏日九宮格日記網等。所有知識都結合具體實例進行介紹,涉及的程序代碼給出了詳細的注釋,可以使讀者輕鬆領會JavaWeb應用程序開發的精髓,快速提高開發技能。另外,本書除了紙質內容之外,配書光盤中還給出了海量開發資源庫,主要內容如下: 語音視頻講解:總時長27小時,共97段。 實例資源庫:951個實例及源碼詳細分析。 模塊資源庫:15個經典模塊開發過程完整展現。 項目案例資源庫:15個企業項目開發過程完整展現。 測試題庫系統:596道能力測試題目。 面試資源庫:369個企業面試真題。 《軟件開發視頻大講堂:Java Web從入門到精通》適合作為軟件開發入門者的自學用書,也適合作為高等院校相關專業的教學參考書,也可供開發人員查閱、參考。.

名人/編輯推薦

《Java Web從入門到精通》從初學者角度出發,通過通俗易懂的語言、豐富多彩的實例。《Java Web從入門到精通》適合作為軟件開發入門者的自學用書,也適合作為高等院校相關專業的教學參考書,也可供開發人員查閱、參考。

目次

第1篇 web開發基礎
第1章 java web應用開發概述3
視頻講解:18分鐘
1.1 程序開發體系結構4
1.1.1 c/s體系結構介紹4
1.1.2 b/s體系結構介紹4
1.1.3 兩種體系結構的比較5
1.2 web應用程序的工作原理5
1.3 web應用技術6
1.3.1 客戶端應用的技術7
1.3.2 服務器端應用的技術9
1.4 了解java web成功案例10
1.5 常用網上資源11
1.5.1 常用資源下載網11
1.5.2 技術社區12
1.6 小結12
第2章 html與css網頁開發基礎13
視頻講解:1小時2分鐘
2.1 html標記語言14
2.1.1 創建第一個html文件14
2.1.2 html文檔結構15
2.1.3 html常用標記16
2.1.4 表格標記19
2.1.5 html表單標記21
2.1.6 超鏈接與圖片標記26
2.2 html5新增內容28
2.2.1 新增的元素28
2.2.2 新增的input元素類型29
2.3 css樣式表30
2.3.1 css規則30
2.3.2 css選擇器31
2.3.3 在頁面中包含css33
2.4 css3的新特征35
2.4.1 模塊與模塊化結構35
2.4.2 一個簡單的css3實例36
2.5 小結38
2.6 實踐與練習38
第3章 java script腳本語言39
視頻講解:1小時39分鐘
3.1 了解java script40
3.1.1 什么是javascript40
3.1.2 java script的主要特點40
3.2 java script語言基礎41
3.2.1 java script的語法41
3.2.2 java script中的關鍵字42
3.2.3 java script的數據類型42
3.2.4 變量的定義及使用45
3.2.5 運算符的應用46
3.3 流程控制語句49
3.3.1 if條件語句49
3.3.2 switch多分支語句52
3.3.3 for循環語句54
3.3.4 while循環語句55
3.3.5 do while循環語句
3.3.6 break與continue語句58
3.4 函數59
3.4.1 函數的定義59
3.4.2 函數的調用60
3.5 事件處理61
3.5.1 什么是事件處理程序61
3.5.2 java script常用事件61
3.5.3 事件處理程序的調用62
3.6 常用對象63
3.6.1 window對象63
3.6.2 string對象67
3.6.3 date對象71
3.7 dom技術73
3.7.1 dom的分層結構73
3.7.2 遍歷文檔74
3.7.3 獲取文檔中的指定元素76
3.7.4 操作文檔77
3.8 小結79
3.9 實踐與練習79
第4章 搭建開發環境81
視頻講解:19分鐘
4.1 java web應用的開發環境概述82
4.2 tomcat的安裝與配置82
4.2.1 下載tomcat82
4.2.2 tomcat的目錄結構84
4.2.3 修改tomcat的默認端口84
4.2.4 部署web應用84
4.3 eclipse的下載與使用85
4.3.1 eclipse的下載與安裝85
4.3.2 啟動eclipse87
4.3.3 eclipse工作臺87
4.3.4 使用eclipse開發web應用88
4.4 小結93
4.5 實踐與練習93
第2篇 jsp語言基礎
第5章 jsp基本語法97
視頻講解:30分鐘
5.1 了解jsp頁面98
5.2 指令標識99
5.2.1 page指令100
5.2.2 include指令102
5.2.3 taglib指令104
5.3 腳本標識104
5.3.1 jsp表達式105
5.3.2 聲明標識105
5.3.3 代碼片段106
5.4 jsp注釋107
5.4.1 html中的注釋107
5.4.2 帶有jsp表達式的注釋108
5.4.3 隱藏注釋110
5.4.4 動態注釋111
5.5 動作標識111
5.5.1 包含文件標識(jsp:include)111
5.5.2 請求轉發標識(jsp:forward)114
5.5.3 傳遞參數標識(jsp:param)116
5.6 小結116
5.7 實踐與練習117
第6章 jsp內置對象119
視頻講解:1小時18分鐘
6.1 jsp內置對象的概述120
6.2 request對象120
6.2.1 訪問請求參數120
6.2.2 在作用域中管理屬性122
6.2.3 獲取cookie123
6.2.4 解決中文亂碼125
6.2.5 獲取客戶端信息126
6.2.6 顯示國際化信息127
6.3 response對象128
6.3.1 重定向網頁128
6.3.2 處理http文件頭129
6.3.3 設置輸出緩沖130
6.4 session對象131
6.4.1 創建及獲取客戶的會話131
6.4.2 從會話中移動指定的綁定對象132
6.4.3 銷毀session132
6.4.4 會話超時的管理132
6.4.5 session對象的應用133
6.5 application對象135
6.5.1 訪問應用程序初始化參數135
6.5.2 管理應用程序環境屬性136
6.6 out對象136
6.6.1 向客戶端輸出數據137
6.6.2 管理響應緩沖138
6.7 其他內置對象138
6.7.1 獲取會話范圍的pagecontext對象138
6.7.2 讀取web.xml配置信息的config對象139
6.7.3 應答或請求的page對象139
6.7.4 獲取異常信息的exception對象140
6.8 小結142
6.9 實踐與練習142
第7章 java bean技術143
視頻講解:42分鐘
7.1 java bean介紹144
7.1.1 java bean概述144
7.1.2 java bean種類145
7.2 java bean的應用148
7.2.1 獲取java bean屬性信息148
7.2.2 對java bean屬性賦值150
7.2.3 如何在jsp頁面中應用java bean151
7.3 在jsp中應用java bean154
7.3.1 解決中文亂碼的java bean155
7.3.2 在jsp頁面中用來顯示時間的java bean158
7.3.3 數組轉換成字符串160
7.4 小結164
7.5 實踐與練習164
第8章 servlet技術165
視頻講解:28分鐘
8.1 servlet基礎166
8.1.1 servlet結構體系166
8.1.2 servlet技術特點166
8.1.3 servlet與jsp的區別167
8.1.4 servlet代碼結構168
8.2 servletapi編程常用接口和類169
8.2.1 servlet接口169
8.2.2 servletconfig接口170
8.2.3 httpservletrequest接口170
8.2.4 httpservletresponse接口171
8.2.5 genericservlet類171
8.2.6 httpservlet類172
8.3 servlet開發172
8.3.1 servlet創建172
8.3.2 servlet配置173
8.4 小結175
8.5 實踐與練習175
第9章 過濾器和監聽器177
視頻講解:44分鐘
9.1 servlet過濾器178
9.1.1 什么是過濾器178
9.1.2 過濾器核心對象179
9.1.3 過濾器創建與配置180
9.1.4 字符編碼過濾器183
9.2 servlet監聽器188
9.2.1 servlet監聽器簡介188
9.2.2 servlet監聽器的原理188
9.2.3 servlet上下文監聽188
9.2.4 http會話監聽189
9.2.5 servlet請求監聽190
9.2.6 servlet監聽器統計在線人數191
9.3 servlet3.0新特性194
9.3.1 新增注釋194
9.3.2 對文件上傳的支持199
9.3.3 異步處理201
9.4 小結201
9.5 實踐與練習202
第3篇 jsp高級內容
第10章 java web的數據庫操作205
視頻講解:1小時1分鐘
10.1 jdbc技術206
10.1.1 jdbc簡介206
10.1.2 jdbc連接數據庫的過程206
10.2 jdbcapi208
10.2.1 connection接口208
10.2.2 drivermanager類209
10.2.3 statement接口210
10.2.4 preparedstatement接口211
10.2.5 resultset接口212
10.3 jdbc操作數據庫213
10.3.1 添加數據213
10.3.2 查詢數據216
10.3.3 修改數據220
10.3.4 刪除數據222
10.3.5 批處理224
10.3.6 調用存儲過程227
10.4 jdbc在javaweb中的應用230
10.4.1 開發模式230
10.4.2 分頁查詢231
10.5 小結237
10.6 實踐與練習237
第11章 el(表達式語言)239
視頻講解:53分鐘
11.1 el(表達式語言)概述240
11.1.1 el的基本語法240
11.1.2 el的特點240
11.2 與低版本的環境兼容——禁用el241
11.2.1 使用斜杠“\”符號241
11.2.2 使用page指令241
11.2.3 在web.xml文件中配置(el-ignored)元素242
11.3 保留的關鍵字242
11.4 el的運算符及優先級243
11.4.1 通過el訪問數據244
11.4.2 在el中進行算術運算245
11.4.3 在el中判斷對象是否為空246
11.4.4 在el中進行邏輯關系運算246
11.4.5 在el中進行條件運算248
11.5 el的隱含對象249
11.5.1 頁面上下文對象249
11.5.2 訪問作用域范圍的隱含對象251
11.5.3 訪問環境信息的隱含對象253
11.6 定義和使用el函數255
11.6.1 定義和使用函數255
11.6.2 定義和使用el函數時常見的錯誤257
11.7 小結259
11.8 實踐與練習259
第12章 jstl標簽261
視頻講解:1小時2分鐘
12.1 jstl標簽庫簡介262
12.2 jstl的配置263
12.3 表達式標簽265
12.3.1 (c:out)輸出標簽265
12.3.2 (c:set)變量設置標簽267
12.3.3 (c:remove)變量移除標簽269
12.3.4 (c:catch)捕獲異常標簽271
12.4 url相關標簽272
12.4.1 (c:import)導入標簽272
12.4.2 (c:url)動態生成url標簽274
12.4.3 (c:redirect)重定向標簽276
12.4.4 (c:param)傳遞參數標簽276
12.5 流程控制標簽277
12.5.1 (c:if)條件判斷標簽278
12.5.2 (c:choose)條件選擇標簽279
12.5.3 (c:when)條件測試標簽280
12.5.4 (c:otherwise)其他條件標簽282
12.6 循環標簽283
12.6.1 (c:foreach)循環標簽283
12.6.2 (c:fortokens)迭代標簽286
12.7 小結287
12.8 實踐與練習287
第13章 ajax技術289
視頻講解:1小時3分鐘
13.1當下誰在用ajax290
13.1.1百度搜索提示290
13.1.2淘寶新會員免費注冊290
13.1.3明日科技編程詞典服務網290
13.2ajax開發模式與傳統開發模式的比較291
13.3ajax使用的技術292
13.4使用xmlhttprequest對象294
13.4.1初始化xmlhttprequest對象294
13.4.2xmlhttprequest對象的常用方法295
13.4.3xmlhttprequest對象的常用屬性297
13.5與服務器通信——發送請求與處理響應298
13.5.1發送請求298
13.5.2處理服務器響應300
13.5.3一個完整的實例——檢測用戶名是否唯一301
13.6解決中文亂碼問題304
13.6.1發送請求時出現中文亂碼304
13.6.2獲取服務器的響應結果時出現中文亂碼305
13.7ajax重構305
13.7.1ajax重構的步驟305
13.7.2應用ajax重構實現實時顯示公告信息307
13.8ajax常用實例308
13.8.1級聯下拉列表308
13.8.2顯示進度條312
13.9小結315
13.10實踐與練習315
第4篇流行框架與xml技術
第14章struts2基礎319
視頻講解:1小時5分鐘
14.1struts2概述320
14.1.1理解mvc原理320
14.1.2struts2框架的產生321
14.1.3struts2的結構體系321
14.2struts2入門322
14.2.1struts2的獲取與放置322
14.2.2第一個struts2程序323
14.3action對象326
14.3.1認識action對象326
14.3.2請求參數的注入原理327
14.3.3action的基本流程327
14.3.4什么是動態action328
14.3.5動態action的應用329
14.4struts2的配置文件331
14.4.1struts2的配置文件類型331
14.4.2struts2的包配置332
14.4.3名稱空間配置332
14.4.4action相關配置333
14.4.5通配符實現簡化配置335
14.4.6返回結果的配置335
14.5struts2的開發模式336
14.5.1實現與servletapi的交互336
14.5.2域模型domainmodel337
14.5.3驅動模型modeldriven338
14.6典型應用340
14.6.1struts2處理表單數據340
14.6.2使用map類型的request、session和application343
14.7小結345
14.8實踐與練習346
第15章struts2高級技術347
視頻講解:54分鐘
15.1ognl表達式語言348
15.1.1認識ognl348
15.1.2struts2框架中的ognl348
15.1.3操作普通的屬性與方法350
15.1.4訪問靜態方法與屬性353
15.1.5訪問數組353
15.1.6訪問list、set、map集合354
15.1.7投影與選擇354
15.2struts2的標簽庫355
15.2.1數據標簽的應用355
15.2.2控制標簽的應用359
15.2.3表單標簽的應用361
15.3攔截器的使用362
15.3.1了解攔截器362
15.3.2攔截器api364
15.3.3使用攔截器365
15.4數據驗證機制366
15.4.1手動驗證的實現366
15.4.2驗證文件的命名規則367
15.4.3驗證文件的編寫風格367
15.5典型應用369
15.5.1struts2標簽下的用戶注冊369
15.5.2使用驗證框架對數據校驗371
15.6小結373
15.7實踐與練習373
第16章hibernate技術375
視頻講解:42分鐘
16.1初識hibernate376
16.1.1理解orm原理376
16.1.2hibernate簡介376
16.2hibernate入門377
16.2.1獲取hibernate377
16.2.2hibernate配置文件378
16.2.3了解并編寫持久化類379
16.2.4hibernate映射380
16.2.5hibernate主鍵策略381
16.3hibernate數據持久化382
16.3.1hibernate實例狀態382
16.3.2hibernate初始化類383
16.3.3保存數據384
16.3.4查詢數據385
16.3.5刪除數據387
16.3.6修改數據388
16.3.7關于延遲加載388
16.4使用hibernate的緩存389
16.4.1一級緩存的使用389
16.4.2配置并使用二級緩存390
16.5小結392
16.6實踐與練習392
第17章hibernate高級應用393
視頻講解:1小時12分鐘
17.1實體關聯關系映射394
17.1.1數據模型與領域模型394
17.1.2理解并配置多對一單向關聯394
17.1.3理解并配置多對一雙向關聯396
17.1.4理解并配置一對一主鍵關聯398
17.1.5理解并配置一對一外鍵關聯399
17.1.6理解并配置多對多關聯關系401
17.1.7了解級聯操作403
17.2實體繼承關系映射404
17.2.1類繼承樹映射成一張表404
17.2.2每個子類映射成一張表406
17.2.3每個具體類映射成一張表407
17.3hibernate查詢語言408
17.3.1了解hql語言408
17.3.2實體對象查詢409
17.3.3條件查詢410
17.3.4hql參數綁定機制410
17.3.5排序查詢411
17.3.6聚合函數的應用411
17.3.7分組方法412
17.3.8聯合查詢412
17.3.9子查詢413
17.4小結414
17.5實踐與練習414
第18章spring核心之ioc415
視頻講解:45分鐘
18.1spring概述416
18.1.1初識spring416
18.1.2spring的獲取417
18.1.3簡單配置spring417
18.1.4使用beanfactory管理bean418
18.1.5apllicationcontext的應用419
18.2依賴注入420
18.2.1什么是控制反轉與依賴注入420
18.2.2bean的配置421
18.2.3setter注入422
18.2.4構造器注入423
18.2.5引用其他的bean424
18.2.6匿名內部javabean的創建426
18.3自動裝配426
18.3.1按bean名稱裝配426
18.3.2按bean類型裝配427
18.3.3自動裝配的其他方式428
18.4bean的作用域429
18.4.1了解spring中的bean429
18.4.2singleton的作用域430
18.4.3prototype的作用域431
18.5對bean的特殊處理432
18.5.1初始化與銷毀432
18.5.2自定義屬性編輯器433
18.6小結435
18.7實踐與練習435
第19章spring核心之aop437
視頻講解:37分鐘
19.1aop概述438
19.1.1了解aop438
19.1.2aop的簡單實現439
19.2spring的切入點441
19.2.1靜態切入點與動態切入點441
19.2.2深入靜態切入點442
19.2.3深入切入點底層442
19.2.4spring中其他切入點443
19.3aspect對aop的支持444
19.3.1了解aspect444
19.3.2spring中的aspect444
19.3.3defaultpointcutadvisor切入點配置器445
19.3.4namematchmethodpointcutadvisor切入點配置器446
19.4spring持久化446
19.4.1dao模式介紹446
19.4.2spring的dao理念447
19.4.3事務應用的管理449
19.4.4應用jdbctemplate操作數據庫453
19.4.5與hibernate整合454
19.5小結456
19.6實踐與練習456
第20章jsp操作xml457
視頻講解:50分鐘
20.1xml簡介458
20.1.1xml文檔結構458
20.1.2xml語法要求459
20.1.3為xml文檔中的元素定義屬性460
20.1.4xml的注釋460
20.1.5處理字符數據461
20.2dom4j概述462
20.2.1dom4j簡介462
20.2.2dom4j的下載與配置463
20.3創建xml文檔464
20.3.1創建xml文檔對象464
20.3.2創建根節點465
20.3.3添加注釋465
20.3.4添加屬性466
20.3.5創建子節點466
20.3.6設置節點的內容466
20.3.7設置編碼467
20.3.8設置輸出格式468
20.3.9輸出xml文檔468
20.4解析xml文檔469
20.4.1構建xml文檔對象469
20.4.2獲取根節點470
20.4.3獲取子節點470
20.5修改xml文檔471
20.5.1修改節點471
20.5.2刪除節點472
20.6典型應用473
20.6.1保存公告信息到xml文件473
20.6.2對保存到xml文件中的公告信息進行管理476
20.7小結483
20.8實踐與練習483
第5篇項目實戰
第21章清爽夏日九宮格日記網487
視頻講解:1小時35分鐘
21.1項目設計思路488
21.1.1功能闡述488
21.1.2系統預覽488
21.1.3功能結構489
21.1.4文件夾組織結構490
21.2數據庫和數據表設計491
21.2.1數據庫設計491
21.2.2數據表設計491
21.3公共模塊設計492
21.3.1編寫數據庫連接及操作的類492
21.3.2編寫保存分頁代碼的javabean495
21.3.3配置解決中文亂碼的過濾器497
21.3.4編寫實體類498
21.4主界面設計499
21.4.1主界面概述499
21.4.2讓采用div+css布局的頁面內容居中500
21.4.3主界面的實現過程501
21.5用戶模塊設計502
21.5.1用戶模塊概述502
21.5.2實現ajax重構503
21.5.3用戶注冊的實現過程505
21.5.4用戶登錄的實現過程515
21.5.5退出登錄的實現過程518
21.5.6找回密碼的實現過程519
21.6顯示九宮格日記列表模塊設計522
21.6.1顯示九宮格日記列表概述522
21.6.2展開和收縮圖片522
21.6.3查看日記原圖525
21.6.4對日記圖片進行左轉和右轉525
21.6.5顯示全部九宮格日記的實現過程528
21.6.6我的日記的實現過程532
21.6.7刪除我的日記的實現過程533
21.7寫九宮格日記模塊設計534
21.7.1寫九宮格日記模塊概述534
21.7.2應用jquery讓png圖片在ie6下背景透明535
21.7.3填寫日記信息的實現過程536
21.7.4預覽生成的日記圖片的實現過程541
21.7.5保存日記圖片的實現過程545
21.8項目發布546
21.9小結547

書摘/試閱



3.1.1 什么是JavaScript
JavaScript是一種基于對象和事件驅動并具有安全性能的解釋型腳本語言,在web應用中得到了非常廣泛的應用。它不需要進行編譯,而是直接嵌入在HTTP頁面中,把靜態頁面轉變成支持用戶交互并響應應用事件的動態頁面。在Java Web程序中,經常應用了avaScript進行數據驗證、控制瀏覽器以及生成時鐘、日歷和時間戳文檔等。
3.1.2 JavaScript的主要特點
JavaScript適用于靜態或動態網頁,是一種被廣泛使用的客戶端腳本語言。它具有解釋性、基于對象、事件驅動、安全性和跨平臺等特點,下面進行詳細介紹。
解釋性
JavaScript是一種腳本語言,采用小程序段的方式實現編程。和其他腳本語言一樣,JavaScript也是一種解釋性語言,它提供了一個簡易的開發過程。
基于對象
JavaScript是一種基于對象的語言。它可以應用自己創建的對象,因此許多功能來自于腳本環境中對象的方法與腳本的相互作用。
事件驅動
JavaScript可以以事件驅動的方式直接對客戶端的輸入作出響應,無須經過服務器端程序。說明 事件驅動就是用戶進行某種操作(如按下鼠標、選擇萊單等),計算機隨乏作出相應的響應。這里的某種操作稱之為事件,而計算機作出的響應稱之為事件響應。
安全性
JavaScript具有安全性。它不允許訪問本地硬盤,不能將數據寫入到服務器上,并且不允許對網絡文檔進行修改和刪除,只能通過瀏覽器實現信息瀏覽或動態交互,從而有效地防止數據的丟失。
跨平臺
JavaScript依賴于瀏覽器本身,與操作系統無關,只要瀏覽器支持JavaScript,JaVaScript的程序代
3.2 JavaScript語言基礎
視頻講解:光盤\TMuxouavaScrspt語言基礎.exe
3.2.1 JavaScript的語法
JavaScript與Java在語法上有些相似,但也不盡相同。下面將結合Java語言對編寫JavaSchpt代碼時需要注意的事項進行詳細介紹。
JavaSeript區分大小寫
JavaSeript區分大小寫,這一點與Java語言是相同的。例如,變量username與變量userName是兩個不同的變量。
每行結尾的分號可有可無
與Java語言不同,JavaScript并不要求必須以分號(;)作為語句的結束標記。如果語句的結束處沒有分號,JavaScript會自動將該行代碼的結尾作為語句的結尾。

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 365
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區