⑴ java接收ajax傳遞過來的圖片參數圖片參數
SpringMVC上傳首先需要在配置文件中配置文件解析器
<beanid="multipartResolver"class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<propertyname="defaultEncoding"value="UTF-8"/>
<!--指定所上傳文件的總大小不能超過200KB。注意maxUploadSize屬性的限制不是針對單個文件,而是所有文件的容量之和-->
<propertyname="maxUploadSize"value="200000"/>
</bean>
提交的form表單中需要包含enctype="multipart/form-data"
加上enctype後,Spring MVC的前端控制器會判斷是否是文件上傳, 自動轉換的
後台使用MultipartFile對象即可接收
可以直接form表單提交或者非同步上傳文件
⑵ ajax如何 實現 文件上傳
程序說明
使用說明
實例化時,第一個必要參數是file控制項對象:
newQuickUpload(file);
第二個可選參數用來設置系統的默認屬性,包括
屬性: 默認值//說明
parameter:{},//參數對象
action:"",//設置action
timeout:0,//設置超時(秒為單位)
onReady:function(){},//上傳准備時執行
onFinish:function(){},//上傳完成時執行
onStop:function(){},//上傳停止時執行
onTimeout:function(){}//上傳超時時執行
還提供了以下方法:
upload:執行上傳操作;
stop:停止上傳操作;
dispose:銷毀程序。
varQuickUpload=function(file,options){
this.file=$$(file);
this._sending=false;//是否正在上傳
this._timer=null;//定時器
this._iframe=null;//iframe對象
this._form=null;//form對象
this._inputs={};//input對象
this._fFINISH=null;//完成執行函數
$$.extend(this,this._setOptions(options));
};
QuickUpload._counter=1;
QuickUpload.prototype={
//設置默認屬性
_setOptions:function(options){
this.options={//默認值
action:"",//設置action
timeout:0,//設置超時(秒為單位)
parameter:{},//參數對象
onReady:function(){},//上傳准備時執行
onFinish:function(){},//上傳完成時執行
onStop:function(){},//上傳停止時執行
onTimeout:function(){}//上傳超時時執行
};
return$$.extend(this.options,options||{});
},
//上傳文件
upload:function(){
//停止上一次上傳
this.stop();
//沒有文件返回
if(!this.file||!this.file.value)return;
//可能在onReady中修改相關屬性所以放前面
this.onReady();
//設置iframe,form和表單控制項
this._setIframe();
this._setForm();
this._setInput();
//設置超時
if(this.timeout>0){
this._timer=setTimeout($$F.bind(this._timeout,this),this.timeout*1000);
}
//開始上傳
this._form.submit();
this._sending=true;
},
//設置iframe
_setIframe:function(){
if(!this._iframe){
//創建iframe
variframename="QUICKUPLOAD_"+QuickUpload._counter++,
iframe=document.createElement($$B.ie?"<iframename=""+iframename+"">":"iframe");
iframe.name=iframename;
iframe.style.display="none";
//記錄完成程序方便移除
varfinish=this._fFINISH=$$F.bind(this._finish,this);
//iframe載入完後執行完成程序
if($$B.ie){
iframe.attachEvent("onload",finish);
}else{
iframe.onload=$$B.opera?function(){this.onload=finish;}:finish;
}
//插入body
varbody=document.body;body.insertBefore(iframe,body.childNodes[0]);
this._iframe=iframe;
}
},
//設置form
_setForm:function(){
if(!this._form){
varform=document.createElement('form'),file=this.file;
//設置屬性
$$.extend(form,{
target:this._iframe.name,method:"post",encoding:"multipart/form-data"
});
//設置樣式
$$D.setStyle(form,{
padding:0,margin:0,border:0,
backgroundColor:"transparent",display:"inline"
});
//提交前去掉form
file.form&&$$E.addEvent(file.form,"submit",$$F.bind(this.dispose,this));
//插入form
file.parentNode.insertBefore(form,file).appendChild(file);
this._form=form;
}
//action可能會修改
this._form.action=this.action;
},
//設置input
_setInput:function(){
varform=this._form,oldInputs=this._inputs,newInputs={},name;
//設置input
for(nameinthis.parameter){
varinput=form[name];
if(!input){
//如果沒有對應input新建一個
input=document.createElement("input");
input.name=name;input.type="hidden";
form.appendChild(input);
}
input.value=this.parameter[name];
//記錄當前input
newInputs[name]=input;
//刪除已有記錄
deleteoldInputs[name];
}
//移除無用input
for(nameinoldInputs){form.removeChild(oldInputs[name]);}
//保存當前input
this._inputs=newInputs;
},
//停止上傳
stop:function(){
if(this._sending){
this._sending=false;
clearTimeout(this._timer);
//重置iframe
if($$B.opera){//opera通過設置src會有問題
this._removeIframe();
}else{
this._iframe.src="";
}
this.onStop();
}
},
//銷毀程序
dispose:function(){
this._sending=false;
clearTimeout(this._timer);
//清除iframe
if($$B.firefox){
setTimeout($$F.bind(this._removeIframe,this),0);
}else{
this._removeIframe();
}
//清除form
this._removeForm();
//清除dom關聯
this._inputs=this._fFINISH=this.file=null;
},
//清除iframe
_removeIframe:function(){
if(this._iframe){
variframe=this._iframe;
$$B.ie?iframe.detachEvent("onload",this._fFINISH):(iframe.onload=null);
document.body.removeChild(iframe);this._iframe=null;
}
},
//清除form
_removeForm:function(){
if(this._form){
varform=this._form,parent=form.parentNode;
if(parent){
parent.insertBefore(this.file,form);parent.removeChild(form);
}
this._form=this._inputs=null;
}
},
//超時函數
_timeout:function(){
if(this._sending){this._sending=false;this.stop();this.onTimeout();}
},
//完成函數
_finish:function(){
if(this._sending){this._sending=false;this.onFinish(this._iframe);}
}
}
⑶ ASP.NET範例開發大全的圖書目錄
第1篇 環境配置和網站構建
第1章 ASP .NET開發准備(教學視頻:25分鍾) 2
1.1 搭建ASP .NET開發環境 2
實例001 安裝IIS並配置 2
實例002 安裝並使用VS 2008開發ASP .NET程序 4
1.2 ASP .NET網站配置文件 5
實例003 在Web.Config文件中添加資料庫連接配置 6
實例004 在Web.Config文件中添加自定義配置節 7
實例005 在Web.Config文件中配置Session狀態管理 8
實例006 在Web.Config文件中限制用戶請求大小 10
實例007 在Web.Config文件中配置錯誤跳轉頁 11
第2章 HTML開發基礎(教學視頻:49分鍾) 13
2.1 頁面布局設計 13
實例008 使用表格布局設計登錄頁面 13
實例009 在數據綁定控制項中使用表格布局顯示員工信息 14
2.2 框架頁布局設計 15
實例010 使用frameset布局聊天室 15
實例011 使用iframe布局的OA首頁 16
2.3 使用marquee元素製作公告欄 17
實例012 向上滾動的公告欄 17
實例013 在滾動的公告欄中使用鏈接 18
2.4 廣告欄設計 18
實例014 Banner廣告製作 18
實例015 漂浮的Banner廣告 19
實例016 使用marquee元素製作滾動廣告 20
實例017 在網站首頁中添加視頻廣告 21
實例018 在網站首頁中添加音頻廣告 22
2.5 綜合實例 22
實例019 使用DreamWeaver製作模板頁 23
實例020 使用DreamWeaver製作內容頁 24
實例021 將模板頁替換為ASP .NET母版頁 25
實例022 在開發中應用母版頁製作風格統一的內容頁 27
第3章 樣式與主題(教學視頻:37分鍾) 29
3.1 樣式基礎 29
實例023 在ASP .NET和HTML頁面中定義樣式 29
實例024 在ASP .NET和HTML頁面引用外部樣式表文件 31
3.2 在樣式中使用偽類 33
實例025 滑鼠單擊鏈接的樣式 33
實例026 控制滑鼠懸停的樣式 34
3.3 使用樣式控制ASP .NET控制項外觀 35
實例027 ASP .NET常見控制項適用樣式 35
實例028 復雜數據綁定樣式適用樣式 37
3.4 在ASP .NET開發中使用主題 39
實例029 控制項主題 39
實例030 網頁主題 40
實例031 主題切換 41
實例032 圖片主題 43
3.5 綜合應用 44
實例033 使用主題和樣式設計無限酷網上書城 44
第4章 使用JavaScript提高用戶體驗(教學視頻:46分鍾) 46
4.1 JavaScript常見應用 46
實例034 設置當前頁為瀏覽器默認頁 46
實例035 將本站添加至收藏夾 48
實例036 當用戶離開網站時彈出的收藏夾 49
實例037 使用JavaScript和JSON技術實現省市級聯效果 49
4.2 JavaScript開啟新窗口 50
實例038 使用JavaScript打開廣告窗口 51
實例039 在彈出廣告窗口後自動關閉廣告窗口 51
實例040 使用JavaScrpit控制廣告窗口彈出的位置 52
實例041 使用JavaScript操作Cookie 53
實例042 在彈出的廣告窗口中添加關閉按鈕 55
實例043 使用JavaScript刷新廣告窗口父窗口 55
實例044 關閉廣告窗口不允許彈出提示對話框 56
4.3 JavaScript製作動態導航欄 57
實例045 仿Office的下拉式菜單導航欄 57
實例046 動態顯示提示信息的解釋菜單 59
實例047 縮進停留式菜單 61
第2篇 控 件 操 作
第5章 常用HTML控制項和Web控制項(教學視頻:109分鍾) 66
5.1 HTML控制項 66
實例048 使用文本框製作登錄頁面 66
實例049 使用單選按鈕和復選框實現網路問卷調查 67
實例050 使用下拉框和列表框實現級聯下拉選擇 69
5.2 ASP .NET文本控制項 70
實例051 密碼框 70
實例052 使用Label控制項顯示日期 71
實例053 使用金額格式的文本 71
實例054 多行文本框應用 72
5.3 ASP .NET選擇控制項 73
實例055 動態添加DropDownList選擇項 74
實例056 DropDownList的數據綁定 75
實例057 RadioButton實現互斥 77
實例058 利用RadioButtonList製作網路調查問卷 78
實例059 使用CheckBox選擇個人愛好 81
實例060 動態添加CheckBoxList中的選擇項 82
5.4 站內導航與導航控制項 83
實例061 LinkButton控制項與HyperLink控制項 84
實例062 ImageMap控制項實現熱點地圖導航 85
實例063 簡單圖片導航 88
實例064 在GridView中使用鏈接模板列 88
實例065 在sitemap文件中設計站點導航地圖 91
實例066 使用sitemap文件和麵包屑導航 92
實例067 使用sitemap文件和Menu控制項製作導航欄 93
實例068 使用sitemap文件和TreeView控制項製作OA導航欄 95
5.5 用戶登錄與注冊控制項 98
實例069 Login控制項 99
實例070 創建用戶並登錄 100
5.6 使用ASP .NET控制項顯示圖片 102
實例071 在數據綁定控制項中動態顯示圖片 102
實例072 頭像選擇窗口 103
實例073 圖片的上傳和下載 105
5.7 綜合應用 110
實例074 使用注冊控制項和選擇控制項製作的網上商城注冊頁面 110
實例075 在博客資料完善頁面中實現個人照片上傳和預覽功能 112
第6章 ASP .NET驗證控制項(教學視頻:39分鍾) 115
6.1 數據類型、范圍驗證 115
實例076 日期類型驗證 115
實例077 年齡范圍驗證 116
實例078 常用用戶名格式驗證 117
實例079 入學日期必須小於畢業日期 118
實例080 漢字錄入驗證 119
實例081 護照驗證 120
6.2 文本驗證 121
實例082 使用正則表達式驗證控制項進行郵件格式驗證 121
實例083 文本非空驗證 122
實例084 使用正則表達式驗證控制項進行身份證號碼驗證 122
6.3 自定義驗證控制項和驗證消息顯示控制項 123
實例085 使用自定義驗證控制項驗證貨幣格式 124
實例086 ValidationSummary控制項顯示驗證消息 125
6.4 綜合應用 127
實例087 在校友錄注冊頁面中使用驗證控制項 127
實例088 在用戶注冊頁面中使用自定義驗證控制項 127
第3篇 C#語言基礎
第7章 .NET 3.5提供的C#新特性(教學視頻:44分鍾) 132
7.1 C#的新特性 132
實例089 匿名類型、var關鍵字 132
實例090 自動屬性、集合初始化器、對象初始化器 133
實例091 擴展方法 134
實例092 泛型委託和Lamdba實現計算器 135
實例093 泛型委託和Lamdba實現貨幣和日期格式轉換 137
7.2 LINQ to Objects 139
實例094 查詢泛型集合中的數據 139
實例095 整型數組排序 140
實例096 獲取產品價格最大值、最小值、和值、平均值 142
實例097 使用LINQ to Objects獲取字元串中的某個單詞或字元串的出現次數 143
實例098 使用LINQ與正則表達式實篩選聊天記錄 144
7.3 LINQ to XML 146
實例099 檢索XML文檔中的數據 146
實例100 使用LINQ操作XML 147
第8章 日期操作、日期控制項和字元串(教學視頻:89分鍾) 150
8.1 在ASP .NET中使用日期控制項 150
實例101 通過Calendar控制項指定日期 150
實例102 使用My97DatePicker實現日期選擇 151
實例103 自定義日程表 153
8.2 日期操作 155
實例104 計算兩日期時間間隔 156
實例105 獲取當前日期和時間 157
實例106 獲取星期信息 157
實例107 獲取當前年的天數 158
實例108 獲取當前月的天數 159
實例109 獲取當前日期的前一天 160
8.3 string基本操作 160
實例110 字元串比較 161
實例111 定位子字元串 162
實例112 利用格式化字元串組裝成語 162
實例113 自定義格式化字元串 163
實例114 字元串連接 165
實例115 分割字元串 166
實例116 插入和填充字元串 167
實例117 刪除和剪切字元串 168
實例118 復制字元串 170
實例119 替換字元串 171
8.4 動態字元串StringBuilder操作 172
實例120 追加字元串 172
實例121 插入字元串 174
實例122 刪除字元串 175
實例123 替換字元串 175
8.5 字元串編碼與解碼 177
實例124 URL編碼 177
實例125 URL解碼 178
8.6 綜合應用 179
實例126 使用格式字元串實現世界時間轉換功能 179
第4篇 ASP .NET特色技術
第9章 ASP .NET內置對象(教學視頻:69分鍾) 182
9.1 頁面傳值 182
實例127 使用URL傳遞參數 182
實例128 Session對象跨頁面傳值 184
實例129 跨頁提交數據 186
9.2 ASP .NET全局控制 188
實例130 在線人數 188
實例131 登錄日誌 190
實例132 綜合統計用戶在線時間 192
實例133 獲取網站訪問人數 194
實例134 獲取單日訪問人數 195
實例135 公告信息發布 197
實例136 私聊功能 198
實例137 用戶登錄狀態保持 203
實例138 投票保護 205
9.3 獲取客戶端信息 206
實例139 檢測客戶端瀏覽器類型 207
實例140 獲取客戶端操作系統、語言環境和IP地址 207
9.4 購物車 208
實例141 獲取購物車中的商品 209
實例142 清空購物車 211
實例143 移除指定商品 212
第10章 Web Service(教學視頻:53分鍾) 213
10.1 Web服務基礎 213
實例144 創建第一個Web服務 213
實例145 Web服務實現簡單計算器 215
10.2 提供數據操作的Web服務 217
實例146 利用Web服務實現員工信息錄入 217
實例147 Web服務中調用存儲過程 219
10.3 常見Web服務的使用 220
實例148 通過郵件發送功能的Web服務 220
實例149 調用第三方Web服務獲取天氣預報 222
實例150 提供購物車支付信息的Web服務 225
10.4 其他Web服務 227
實例151 Web服務上傳和下載圖片 227
實例152 Web服務實現驗證碼 229
實例153 使用Web服務提供當前伺服器信息 230
實例154 使用Web服務提供會員編號 232
10.5 綜合應用 233
實例155 使用Web服務實現火車時刻表查詢 233
第11章 AJAX應用開發(教學視頻:59分鍾) 236
11.1 AJAX下載與安裝 236
實例156 AJAX Control Toolkit安裝與下載 236
11.2 AutoCompleteExtender控制項 238
實例157 使用AutoCompleteExtender控制項實現自動完成 239
實例158 使用AutoCompleteExtender控制項實現文本智能匹配 241
11.3 AJAX驗證 242
實例159 智能密碼強度提示 242
實例160 使用ValidatorCalloutExtender控制項實現更美觀的登錄驗證 244
11.4 常見AJAX控制項 244
實例161 使用Accordion控制項實現折疊面板 245
實例162 使用DragPanelExtender控制項實現拖曳層 246
實例163 使用Timer控制項實現AJAX聊天室 248
實例164 使用CollapsiblePanelExtender實現最小化 252
11.5 其他AJAX控制項 254
實例165 倒計時秒錶 254
實例166 使用ModalPopupExtender控制項實現陰影效果的模態窗口 255
實例167 使用AJAX Calendar控制項實現日期選擇 256
11.6 綜合應用 257
實例168 在網上商城商品展示頁面中使用AJAX技術 257
第12章 ASP .NET高級應用(教學視頻:43分鍾) 260
12.1 Office文件操作 260
實例169 Office文件操作 260
12.2 E-mail 261
實例170 使用System.Web.Mail發送E-mail 262
實例171 使用Jmail組件接收E-mail 265
12.3 站點搜索功能 268
實例172 簡單搜索 268
實例173 復雜搜索 269
12.4 賬戶安全 270
實例174 普通登錄 271
實例175 單點登錄 273
實例176 MD5加密登錄用戶密碼 274
12.4 綜合應用 276
實例177 在網上商城中增強用戶登錄安全性 276
實例178 遠程教育系統 277
第13章 報表與列印(教學視頻:19分鍾) 279
13.1 在頁面中實現列印 279
實例179 利用JavaScript實現列印 279
實例180 利用WebBrowser組件實現列印 280
13.2 rdlc報表 281
實例181 年度產品銷售額匯總報表 281
實例182 產品類型銷售額年度統計報表 285
13.3 高級報表 287
實例183 使用參數和表達式進行報表數據篩選 287
實例184 在酒店管理系統中應用報表顯示客房入住綜合信息 290
第14章 圖形圖像與多媒體(教學視頻:71分鍾) 291
14.1 簡單圖像繪制 291
實例185 繪制直線、矩形和多邊形 292
實例186 繪制圓形、橢圓形和扇形 294
實例187 繪制帶有陰影效果的矩形 297
14.2 繪制驗證碼 298
實例188 混合驗證碼 298
實例189 漢字驗證碼 301
14.3 使用GDI+技術繪制圖表 303
實例190 投票結果 304
實例191 網站流量柱形圖表 307
實例192 使用Office組件創建立體統計圖 309
實例193 人口出生率折線圖表 311
實例194 男女比例餅形圖 313
14.4 頭像選擇 315
實例195 通過下拉列表獲取頭像 315
實例196 通過彈出窗口獲取頭像 317
14.5 控制和顯示圖片特效、Flash 319
實例197 通過滑鼠滑輪控制圖片大小 319
實例198 顯示隨機圖像 320
實例199 獲取圖像的實際尺寸 322
實例200 頁面插入Flash動畫 323
實例201 製作房間類型分析餅圖頁面 324
第5篇 資料庫和文件操作
第15章 ADO .NET應用(教學視頻:73分鍾) 328
15.1 資料庫連接 328
實例202 Access資料庫連接 328
實例203 使用登錄密碼的Access資料庫 329
實例204 訪問Excel文件 331
實例205 連接SQL Server資料庫 332
實例206 MySQL資料庫連接 333
15.2 添加數據 334
實例207 錄入員工信息 334
實例208 插入多記錄 336
15.3 更新數據 339
實例209 更新員工信息 339
實例210 使用時間戳防止並發沖突 341
實例211 更新多個會員卡狀態 345
15.4 刪除數據 348
實例212 刪除會員卡 349
實例213 批量刪除記錄 351
實例214 刪除整表記錄 354
實例215 恢復自增序列的初始狀態 356
15.5 圖片存取技術 358
實例216 上傳圖片URL存儲到資料庫中 358
實例217 二進制格式存儲用戶密保卡圖片 360
15.6 綜合應用 361
實例218 在網站開發中應用抽象工廠模式實現多資料庫支持 361
第16章 ASP .NET數據綁定(教學視頻:152分鍾) 365
16.1 數據源綁定 365
實例219 通過綁定表達式格式化數據顯示 365
實例220 DataBinder.Eval綁定資料庫中圖片路徑 367
實例221 使用Eval()方法或Bind()方法綁定DataList控制項顯示員工信息 368
實例222 簡單變數綁定實現投票系統 370
實例223 泛型集合數據綁定 373
實例224 綁定表達式 374
實例225 綁定方法返回值 375
16.2 控制項綁定數據 377
實例226 Repeater控制項實現商品展示頁面 377
實例227 ListBox控制項的數據綁定 379
實例228 使用其他集合對象作為數據源 381
16.3 XML數據綁定 383
實例229 使用XmlDataSource控制項綁定TreeView控制項 383
實例230 使用XML文件作為數據源的GridView控制項 385
實例231 使用XPath表達式過濾XML數據 385
16.4 GridView使用方法大全 386
實例232 資料庫連接向導 386
實例233 GridView控制項簡單數據綁定 390
實例234 使用GridView控制項的事件管理員工信息 390
實例235 GridView實現簡單數據排序 393
實例236 模板列數據綁定 396
實例237 自定義模板列 399
實例238 翻頁數據多選 403
實例239 刪除詢問對話框 405
實例240 光棒效果 406
實例241 在新窗口顯示詳細信息 408
實例242 文本長度控制 411
實例243 文本換行 412
實例244 主外鍵表數據顯示 414
實例245 將數據導入Excel中 416
實例246 讀取Excel中的數據 418
實例247 數據導入Excel時進行格式控制 419
實例248 GridView控制項實現簡單計算 420
實例249 在GridView控制項數據編輯時實現客戶端數據驗證 422
實例250 設置單元格格式 424
16.5 DataList控制項 426
實例251 DataList控制項的數據綁定 426
實例252 使用PagedDataSource對象實現DataList分頁 431
實例253 獲取DataList控制項中的子控制項 434
16.6 Repeater控制項 436
實例254 Repeater控制項數據綁定 436
實例255 Repeater控制項分頁 438
實例256 使用Repeater控制項實現員工銷售額的RSS消息訂閱 442
第17章 SQL查詢相關技術(教學視頻:117分鍾) 445
17.1 簡單查詢 445
實例257 查詢指定列數據 445
實例258 列別名和表別名 447
實例259 WHERE子句篩選數據 448
實例260 使用聚合函數的查詢 450
實例261 數字查詢 453
實例262 日期數據查詢 455
實例263 字元串查詢 456
實例264 空數據查詢 458
實例265 邏輯型數據查詢 459
實例266 字元串數據變數查詢 461
實例267 數值型變數查詢 463
實例268 日期型變數查詢 465
實例269 簡單模糊查詢 467
實例270 模糊查詢中應用_通配符 469
實例271 模糊查詢中應用%通配符 470
實例272 模糊查詢中應用[]通配符 472
實例273 模糊查詢中應用[^]通配符 473
17.2 TOP和PERCENT關鍵字 475
實例274 查詢前10行數據 475
實例275 取出排序後結果前10名數據 476
實例276 查詢銷量最高的前50%的書籍 478
實例277 獲取占庫存量20%的圖書 480
17.3 日期查詢 481
實例278 查詢指定時間段的數據 481
實例279 指定日期部分查詢數據 483
17.4 比較表達式、邏輯、重復查詢 485
實例280 利用比較表達式篩選數據 485
實例281 NOT關鍵字 486
實例282 DISTINCT關鍵字篩選重復記錄 489
實例283 獲取數據中的重復記錄和記錄條數 490
17.5 OR和AND關鍵字 492
實例284 OR關鍵字鏈接邏輯表達式 492
實例285 AND關鍵字鏈接邏輯表達式 494
實例286 OR和AND關鍵字組裝復雜邏輯表達式 496
17.6 綜合應用 497
實例287 使用排序查詢顯示商城最熱商品排行榜 497
實例288 使用多條件查詢實現商品篩選頁面 498
第18章 復雜查詢統計(教學視頻:142分鍾) 500
18.1 數據排序和分組統計 500
實例289 簡單分組 500
實例290 利用ALL關鍵字分組 502
實例291 CUBE關鍵字 503
實例292 ROLLUP關鍵字 505
實例293 數據降序查詢 507
實例294 多列排序查詢 508
實例295 統計結果排序 509
實例296 復雜分組統計 510
實例297 多表分組統計 511
實例298 COMPUTE關鍵字 512
實例299 COMPUTE BY關鍵字 513
18.2 使用聚合函數 515
實例300 使用SUM()函數匯總 515
實例301 使用AVG()函數求平均值 516
實例302 使用MIN()函數求最小值 517
實例303 使用MAX()函數求最大值 519
實例304 使用COUNT()函數求結果集行數 520
18.3 多表查詢鏈接 521
實例305 多表連接查詢 521
實例306 在連接查詢中使用表別名 523
實例307 使用UNION關鍵字合並多個結果集 523
18.4 子查詢 525
實例308 簡單子查詢 525
實例309 復雜子查詢 526
實例310 子查詢在查詢統計中的應用 527
實例311 用子查詢作臨時結果集 529
實例312 用子查詢作表達式 530
實例313 在UPDATE語句中應用子查詢 531
18.5 UNION關鍵字 533
實例314 利用UNION關鍵字實現結果集連接 533
實例315 UNION結果集排序 534
18.6 內連接查詢 535
實例316 簡單內連接查詢 536
實例317 復雜內連接查詢 537
18.7 外連接查詢 539
實例318 左外連接查詢 539
實例319 右外連接查詢 541
18.8 利用IN進行查詢 542
實例320 使用IN關鍵字查詢篩選數據 542
實例321 使用IN查詢表中的記錄信息 543
18.9 交叉表查詢 544
實例322 靜態交叉表 544
實例323 動態交叉表 546
18.10 常見函數查詢 549
實例324 Access格式化函數查詢 549
實例325 Access字元串函數查詢 551
實例326 SQL Server 2005日期函數查詢 552
18.11 HAVING子句 554
實例327 HAVING子句控制分組統計結果 554
實例328 HAVING子句構建復雜分組查詢 555
18.12 綜合應用 556
實例329 使用復雜查詢實現員工工資統計 556
實例330 製作員工考勤統計交叉表 557
第19章 視圖、存儲過程及觸發器的應用(教學視頻:59分鍾) 559
19.1 視圖 559
實例331 查詢視圖中的數據 560
實例332 獲取當前資料庫中的視圖信息 561
實例333 修改視圖數據 563
19.2 存儲過程 566
實例334 存儲過程簡單應用 566
實例335 存儲過程添加數據 568
實例336 存儲過程修改數據 571
實例337 存儲過程刪除數據 573
實例338 存儲過程查詢數據 575
實例339 獲取當前資料庫中的存儲過程信息 576
實例340 加密資料庫中的存儲過程源碼 577
實例341 關閉SQL資料庫連接進程的存儲過程 578
19.3 觸發器 581
實例342 INSERT觸發器 582
實例343 UPDATE觸發器 585
實例344 嵌套觸發器 588
實例345 獲取當前資料庫中的觸發器信息 591
19.4 綜合應用 592
實例346 使用觸發器完成商城用戶積分自動刷新功能 592
第20章 LINQ to SQL(教學視頻:98分鍾) 594
20.1 LINQ to SQL基礎 594
實例347 使用LINQ to SQL替代傳統查詢 594
實例348 數據分組 596
實例349 使用LINQ to SQL分頁 599
20.2 LINQ to SQL操作數據 601
實例350 使用LINQ to SQL進行增、刪、改的操作 601
實例351 使用LINQ操作日誌 604
20.3 LINQ to SQL進階 605
實例352 分組並排序 605
實例353 簡單分組統計 607
實例354 多數據列分組 608
實例355 簡單交叉連接 609
實例356 交叉連接分組查詢 610
實例357 使用where子句限定數值范圍 611
實例358 查詢指定日期部分的數據 611
實例359 使用Any篩選已被訂購的產品 612
實例360 查詢被訂購的停產產品 613
實例361 使用All篩選已拿到訂單貨物的客戶 614
實例362 使用Contains篩選未被訂購的產品信息 615
實例363 LINQ中一對多查詢 616
實例364 LINQ中多對多查詢 617
實例365 獲取結果集中相交項 618
實例366 排除集合中的相同項 619
實例367 刪除結果集中的重復項 620
實例368 使用表達式進行分組查詢 620
實例369 查詢視圖 621
實例370 執行標量存儲過程 622
實例371 執行查詢存儲過程 623
實例372 篩選空數據 624
實例373 內連接查詢 625
實例374 左外連接 626
實例375 內連接 627
第21章 XML技術(教學視頻:41分鍾) 629
21.1 讀寫XML文件 629
實例376 讀取XML文件 629
實例377 寫入XML文件 630
實例378 在資料庫中讀取XML數據 631
21.2 XML文件節點操作 632
實例379 追加XML節點 633
實例380 插入XML節點 635
實例381 XPath應用-定位XML節點的位置 637
實例382 刪除XML節點 638
21.3 XML文件與頁面交互 639
實例383 RSS訂閱頁面 639
實例384 XML文件和DataSet的相互轉換 641
實例385 讓XML文件以HTML格式呈現 642
21.4 XML文件加密和解密 643
實例386 XML文件加密和解密 643
21.5 綜合應用 646
實例387 使用XML文件存儲信息的留言板 646
第22章 文件操作(教學視頻:74分鍾) 649
22.1 文件夾操作 649
實例388 創建、移動與刪除文件夾 650
實例389 判斷文件夾是否存在 653
實例390 遍歷子文件夾 654
22.2 文件操作 655
實例391 文件基本操作 656
實例392 文件重命名 659
實例393 文件的簡單讀寫 660
實例394 判斷文件是否存在 663
22.3 文件上傳與下載 664
實例395 簡單文件上傳 664
實例396 復雜文件上傳 666
實例397 上傳圖片並顯示 668
實例398 文件下載 669
實例399 用ASP .NET傳送大文件 670
22.4 遍歷文件 671
實例400 遞歸遍歷指定路徑下的所有文件夾和文件 672
實例401 遞歸遍歷指定驅動器的所有文件夾和文件 674
22.5 在線壓縮和解壓文件 675
實例402 在線文件壓縮 675
實例403 在線文件解壓 677
22.6 其他 679
實例404 獲取伺服器注冊表信息 679
實例405 獲取伺服器驅動器信息 680
22.7 綜合應用 682
實例406 網路硬碟系統開發 682
第6篇 綜 合 應 用
第23章 站點設計與配色(教學視頻:33分鍾) 688
23.1 企業站點 688
實例407 汽車銷售站點設計、配色分析 689
實例408 醫葯連鎖站點設計、配色分析 691
實例409 硬體產品站點設計、配色分析 692
實例410 軟體產品站點設計、配色分析 693
實例411 物流站點設計、配色分析 694
實例412 賓館酒店站點設計、配色分析 695
23.2 電子商務站點 697
實例413 B2C站點設計、配色分析 697
實例414 B2B電子商務站點設計、配色分析 699
23.3 機構類站點 700
實例415 政務站點設計、配色分析 700
實例416 銀行站點設計、配色分析 701
實例417 新聞站點設計、配色分析 702
23.4 生活資訊、娛樂類站點 704
實例418 家居站點設計、配色分析 704
實例419 電影網站點設計、配色分析 705
第24章 無限酷網上書城(教學視頻:16分鍾) 707
24.1 購物網站總體設計 707
實例420 購物網站總體設計 707
24.2 業務邏輯實現 709
實例421 注冊頁面設計 709
實例422 登錄頁面 710
實例423 購物主頁 713
實例424 購物車頁面 715
實例425 訂單確認頁面 717
第25章 酒店管理系統(教學視頻:7分鍾) 720
25.1 系統設計 720
實例426 業務規則和資料庫設計 720
25.2 酒店管理系統開發 720
實例427 房態圖頁面開發 721
實例428 房間預訂頁面 723
實例429 製作房間類型分析餅圖頁面 725
⑷ android開發框架有哪些
1、Rajawali
介紹:
安卓的OpenGL ES 2.0/3.0 引擎。可以用於製作普通應用或者動態壁紙,當然也可以用於製作游戲。
項目地址: https://github.com/Rajawali/Rajawali
2、RxAndroid
介紹:
RxAndroid是RxJava的一個針對Android平台的擴展。它包含了一些能夠簡化Android開發的工具。
項目地址: https://github.com/ReactiveX/RxAndroid
3、Paginize
介紹:
Paginize 是一個輕量級的UI框架,使用註解來注入布局和view,除了使用註解之外,該框架還有兩個特色:1.用Page的概念來取代Fragment,2.切換page時自帶ios風格的動畫效果。
項目地址: https://github.com/neevek/Paginize
4、otto
介紹:
Otto 是square公司出的一個事件庫(pub/sub模式),用來簡化應用程序組件之間的通訊。 Otto 修改自Google的Guava庫,專門為Android平台進行了優化。
項目地址: https://github.com/square/otto
5 、rebound
介紹:
rebound是facebook的開源動畫庫。可以認為這個動畫庫是獨立於android Framework之外的一種動畫實現。
項目地址: https://github.com/facebook/rebound
6、KJFrameForAndroid
介紹:
KJFrameForAndroid 又叫KJLibrary,是一個幫助快速開發的框架。使用KJFrameForAndroid,你可以只用一行代碼就完成http請求、網路圖片載入、資料庫數據保存或讀取。
項目地址: https://github.com/kymjs/KJFrameForAndroid
7、xUtils
介紹:
xUtils
包含了很多實用的android工具。 xUtils
支持大文件上傳,更全面的http請求協議支持(10種謂詞),擁有更加靈活的ORM,更多的事件註解支持且不受混淆影響... xUitls
最低兼容android 2.2 (api level 8)
項目地址: https://github.com/wyouflf/xUtils
目前xUtils主要有四大模塊:
DbUtils模塊:
android中的orm框架,一行代碼就可以進行增刪改查;
支持事務,默認關閉;
可通過註解自定義表名,列名,外鍵,唯一性約束,NOT NULL約束,CHECK約束等(需要混淆的時候請註解表名和列名);
支持綁定外鍵,保存實體時外鍵關聯實體自動保存或更新;
自動載入外鍵關聯實體,支持延時載入;
支持鏈式表達查詢,更直觀的查詢語義,參考下面的介紹或sample中的例子。
ViewUtils模塊:
android中的ioc框架,完全註解方式就可以進行UI,資源和事件綁定;
新的事件綁定方式,使用混淆工具混淆後仍可正常工作;
目前支持常用的20種事件綁定,參見ViewCommonEventListener類和包com.lidroid.xutils.view.annotation.event。
HttpUtils模塊:
支持同步,非同步方式的請求;
支持大文件上傳,上傳大文件不會oom;
支持GET,POST,PUT,MOVE,COPY,DELETE,HEAD,OPTIONS,TRACE,CONNECT請求;
下載支持301/302重定向,支持設置是否根據Content-Disposition重命名下載的文件;
返迴文本內容的請求(默認只啟用了GET請求)支持緩存,可設置默認過期時間和針對當前請求的過期時間。
BitmapUtils模塊:
載入bitmap的時候無需考慮bitmap載入過程中出現的oom和android容器快速滑動時候出現的圖片錯位等現象;
支持載入網路圖片和本地圖片;
內存管理使用lru演算法,更好的管理bitmap內存;
可配置線程載入線程數量,緩存大小,緩存路徑,載入顯示動畫等...
8、butterknife-view
注入工具
介紹:
為了減少頻繁的調用findViewById(R.id...),可以採用一些注入框架,可以簡化自己的代碼,讓你更專注於實際的功能開發,butterknife就是這樣的一個框架,他是jakewharton大神的作品,值得一試。
class ExampleActivity extends Activity {
@InjectView(R.id.title) TextView title;
@InjectView(R.id.subtitle) TextView subtitle;
@InjectView(R.id.footer) TextView footer;
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.simple_activity);
ButterKnife.inject(this);
// TODO Use "injected" views...
}
}
這是博客地址:
http://jakewharton.github.io/butterknife/
項目地址: https://github.com/JakeWharton/butterknife
9、cube-sdk
一淘推出的開發框架
介紹:
cube一個Android開發包, 可極大提高你的開發效率。主要提供了圖片載入以及網路請求方面的api功能。
項目地址: https://github.com/etao-open-source/cube-sdk
他們的網站:http://cube-sdk.liaohuqiu.net/cn/
10、ASimpleCache
一個簡單的緩存框架
介紹:
ASimpleCache
是一個為android制定的 輕量級的 開源緩存框架。輕量到只有一個java文件(由十幾個類精簡而來)。
它可以緩存什麼東西?普通的字元串、JsonObject、JsonArray、Bitmap、Drawable、序列化的java對象,和
byte數據。
項目地址: https://github.com/yangfuhai/ASimpleCache
11、androidannotations
介紹:
AndroidAnnotations是一個能夠讓你快速進行Android開發的開源框架,它能讓你專注於真正重要的地方。
使代碼更加精簡,使項目更加容易維護,它的目標就是「Fast Android Development.Easy maintainance」。
通過一段時間的使用發現,相比原生的Android開發,確實能夠讓你少些很多代碼
項目地址: https://github.com/excilys/androidannotations
12、Event Bus
解耦android模塊
介紹:
當一個Android應用功能越來越多的時候,保證應用的各個部分之間高效的通信將變得越來越困難。如何優雅地解決這個問題?這時候,就需要使用到EventBus。
EventBus是GreenRobot出品的Android系統的一個Event
Bus類庫,使用起來和之前我們所介紹的Square的Otto差不多,都是用來簡化應用組件之間的通信。
項目地址: https://github.com/greenrobot/EventBus
13、BeeFramework_Android
介紹:
BeeFramework
Android版主要為Android初級開發人員提供一個基於MVC開發模式的APP DEMO,並提供一套APP內調試工具,包括
查看網路數據請求歷史 Crash Log列表 真機WIFI環境下模擬2G\3G網路 查看APP性能(內存佔用,CPU佔用等)
項目地址: https://github.com/BeeFramework/BeeFramework_Android
14、afinal
介紹:
Afinal是一個android的ioc,orm框架,內置了四大模塊功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通過finalActivity,我們可以通過註解的方式進行綁定ui和事件。通過finalBitmap,我們可以方便的載入bitmap圖片,而無需考慮oom等問題。通過finalDB模塊,我們一行代碼就可以對android的sqlite資料庫進行增刪改查。通過FinalHttp模塊,我們可以以ajax形式請求http數據。
Afinal裡面目前包含了四大組件:
FinalHttp:用於請求http數據,直接ajax方式請求,文件上傳, 斷點續傳下載文件等
FinalBitmap:用於顯示bitmap圖片,而無需考慮線程並發和oom等問題。
FinalActivity:完全可以通過註解方式綁定控制項和事件,無需編寫代碼。
FinalDb:android中sqlite的orm框架,一行代碼搞定增刪改查。
Afinal是一個android的ioc,orm框架,內置了四大模塊功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通過finalActivity,我們可以通過註解的方式進行綁定ui和事件。通過finalBitmap,我們可以方便的載入bitmap圖片,而無需考慮oom等問題。通過finalDB模塊,我們一行代碼就可以對android的sqlite資料庫進行增刪改查。通過FinalHttp模塊,我們可以以ajax形式請求http數據。詳情請通過以下網址查看。
項目地址: https://github.com/yangfuhai/afinal
15、Volley
介紹:
在這之前,我們在程序中需要和網路通信的時候,大體使用的東西莫過於AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient(Apache)等,今年的Google
I/O 2013上,Volley發布了。Volley是Android平台上的網路通信庫,能使網路通信更快,更簡單,更健壯。
項目地址: https://github.com/mcxiaoke/android-volley
⑸ java,web程序設計要學些什麼
第一階段:Java基礎,包括java語法,面向對象特徵,常見API,集合框架; (基礎)
第二階段:java界面編程,包括AWT,事件機制,SWING,(不常用)這個部分也可以跳過,用的時候再看都能來及;
第三階段:java API:輸入輸出,多線程,網路編程,反射註解等,java的精華部分(重點);
第四階段:資料庫SQL基礎,包括增刪改查操作以及多表查詢; Oracle Mysql
第五階段:JDBC編程:包括JDBC原理,JDBC連接庫,JDBC API,雖然現在Hibernate比JDBC要方便許多,但是JDBC技術仍然在使用,JDBC思想尤為重要;
第六階段:JDBC深入理解高級特性:包括資料庫連接池,存儲過程,觸發器,CRM思想(高級)這個比較不好懂,有時間的可以學習;
第七階段:HTML語言學習,包括HTML標簽,表單標簽以及CSS,這是Web應用開發的基礎;
第八階段:JavaScript腳本語言,包括javaScript語法和對象,Ajax基礎 ;就這兩個方面的內容;
第九階段:Servlet開發,從此開始踏入javaWeb開發的重要一步,包括XML,Tomcat伺服器的安裝使用操作,HTTP協議簡單理解,Servlet API等,java web開發的基礎。 (重要)
第十階段:JSP開發:JSP語法和標簽,自定義標簽,EL,JSTL庫了解以及MVC三層架構的設計模式理念;
第十一階段:AJAX開發:AJAX原理,請求響應處理,AJAX開發庫,Jquery;
第十二階段:三大框架-struts、spring、hibernate,javaWeb的精華部分(重要)
第十三階段:其他框架學習-springMVC、mybatis,目前比較主流的框架
第十四階段:當學習完這些知識後,你就可以深層次的學習一些企業框架,Maven、redis、log4j等等
第十五階段:一般現在的公司企業用的系統伺服器都是linux,所以有興趣的可以學習一下,linux的各種命令
⑹ java 使用 AjaxUpload.js 實現上傳文檔的時候需要注意哪些
ajax是無法提交文件的,所以在上傳圖片並預覽的時候,我們經常使用Ifame的方法實現看似非同步的效果。但是這樣總不是很方便的,AjaxFilleUpload.js對上面的方法進行了一個包裝,使得我們不用去管理Iframe的一系列操作,也不用影響我們的頁面結構,實現非同步的文件提交。
html:
復制代碼 代碼如下:
<input type="file" name="upload" hidden="hidden" id="file_upload" accept=".zip" />
js:
復制代碼 代碼如下:
$.ajaxFileUpload({
url:'${pageContext.request.contextPath}/Manage/BR_restorePic.action', //需要鏈接到伺服器地址
secureuri:false,
fileElementId:'file_upload', //文件選擇框的id屬性
dataType: 'text', //伺服器返回的格式,可以是json、xml
success: function (data, status) //相當於java中try語句塊的用法
{
$('#restoreDialog').html(data);
//alert(data);
},
error: function (data, status, e){ //相當於java中catch語句塊的用法
$('#restoreDialog').html("上傳失敗,請重試");
}
});
這個方法還會出現一個問題,就是input只能使用一次的問題,input第二次的onchange將不會被執行,這應該是與瀏覽器的有關,解決辦法就是替換這個input
像這樣:
復制代碼 代碼如下:
$('#file_upload').replaceWith('<input type="file" name="upload" hidden="hidden" id="file_upload" accept=".zip" />');
⑺ java 做進度條 ajax實現 js jquery ext 都可以需要具體實現過程和代碼 需要讀取數據
這個好像做不到,現在一般有的效果就是上傳文件時的進度條。
像你說得讀取數據之類還沒遇見過,一般也只是加個循環轉動的圖片等待而已,不能做到實時。
⑻ ajax上傳文件後,後台java如何接收(求後台接收的完整代碼)
寫一個servlet或jsp來接收,在servlet或jsp處理業務邏輯,後返回處理結果或新的數據
如jsp:
<%@ page errorPage="/common/error/error.jsp" %>
<%@ page contentType="text/html;charset=GBK"%>
<%
String planeNumber = request.getParameter("planeNumber");
String planeType = com.aerolink.aocs.system.parameter.list.PlaneTypeFactory.getPlaneType(planeNumber);
response.getWriter().write(planeType);%>
⑼ Java中如何實現Ajax方式上傳圖片
你好,據我所知,Ajax不能上傳圖片,因為上傳圖片得把圖片的二進制數據傳送給WEB伺服器。而Ajax不能完成。
如果樓主指點是無刷新上傳圖片。即不更改當前頁面上傳圖片,利用STRUTS並在HTML頁面中加一個iframe標簽,CSS DISPLAY屬性為NONE 而上傳圖片的表單的TARGET屬性等於這個iframe的名字。
⑽ javascript 調用另一個頁面的方法
其實最好的辦法是用DIV模擬彈出窗口,然後用AJAX非同步調用頁面2,有一堆JS庫可以簡單的實現這個效果,但是問題就出在這個上傳文件的控制項上,因為不可控,不知道是否無刷新上傳之類的,所以用window.open()開新窗口可能也是沒有辦法的辦法。
用彈出窗口然後回調只能在頁面2中通過window.opener調用頁面1,不知道樓主是不是筆誤,window.opener就可以了,後面不用再跟一個window了:
在頁面1中定義一個參數:ImgPath
=
'';
在頁面2中訪問這個參數:window.opener.ImgPath
=
'newpath';