Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
徑描述
<img src="picture.jpg">
picture.jpg 位于與當(dāng)前網(wǎng)頁相同的文件夾
<img src="images/picture.jpg">
picture.jpg 位于當(dāng)前文件夾的 images 文件夾中
<img src="/images/picture.jpg">
picture.jpg 當(dāng)前站點(diǎn)根目錄的 images 文件夾中
<img src="../picture.jpg">
picture.jpg 位于當(dāng)前文件夾的上一級(jí)文件夾中
文件路徑描述了網(wǎng)站文件夾結(jié)構(gòu)中某個(gè)文件的位置。
文件路徑會(huì)在鏈接外部文件時(shí)被用到:
絕對(duì)文件路徑是指向一個(gè)因特網(wǎng)文件的完整 URL:
實(shí)例
TML實(shí)現(xiàn)文件夾的上傳和下載,前端如何用HTML5實(shí)現(xiàn)分片上傳GB級(jí)大文件,網(wǎng)頁中實(shí)現(xiàn)文件上傳下載的三種解決方案(推薦),HTML5實(shí)現(xiàn)文件批量上傳組件,JQUERY 實(shí)現(xiàn)文件夾上傳(保留目錄結(jié)構(gòu)),B/S大文件上傳支持?jǐn)帱c(diǎn)上傳,WebService 大文件上傳,斷點(diǎn)續(xù)傳分片,HTML+AJAX實(shí)現(xiàn)上傳大文件問題,用HTML實(shí)現(xiàn)本地文件的上傳,HTML5實(shí)現(xiàn)大文件上傳,HTML5實(shí)現(xiàn)大文件分片上傳思路,利用HTML5分片上傳超大文件思路,
WEBUPLOADER 支持 超大上G,多附件上傳,JS 大文件分割/分片上傳,
百度WEBUPLOADER上傳視頻等大文件,WEBUPLOAD組件實(shí)現(xiàn)文件上傳功能和下載功能,JS大文件切片上傳,斷點(diǎn)續(xù)傳實(shí)現(xiàn)DEMO,前端上傳大文件的解決方案,前端上傳大文件處理(切片、斷點(diǎn)續(xù)傳),前端大文件上傳優(yōu)化方案——分片上傳,vue大文件上傳解決方案,vue大文件上傳解決方案10G,vue大文件上傳解決方案50G,vue大文件上傳解決方案100G,html5如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,
java如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,SpringBoot如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,SpringMVC如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,SpringCloud如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,
webuploader如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,百度webuploader如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,html5實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,vue如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,前端如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,JavaScript如何實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳、秒傳,
html5大文件斷點(diǎn)續(xù)傳、秒傳解決方案,html5大文件斷點(diǎn)續(xù)傳、加密上傳解決方案,html5大文件斷點(diǎn)續(xù)傳、加密存儲(chǔ)解決方案,html5大文件斷點(diǎn)續(xù)傳分片解決方案,html5大文件斷點(diǎn)續(xù)傳分塊解決方案,html5大文件斷點(diǎn)續(xù)傳分割解決方案,html5大文件斷點(diǎn)續(xù)傳切割解決方案,
后端我們公司項(xiàng)目組選的是JAVA,因?yàn)楣居凶约旱漠a(chǎn)品,所以直接使用就行了,針對(duì)客戶需求這塊是進(jìn)行擴(kuò)展。
客戶這邊實(shí)際上要傳的文件單個(gè)大小就有50G左右,所以需要支持?jǐn)帱c(diǎn)續(xù)傳和分片上傳,并且要支持多線程上傳,能夠充分利用帶寬資源。
之前在網(wǎng)上找過相關(guān)的資料,論壇里面也有網(wǎng)友交流過,還加過很多QQ群和微信群,但是結(jié)果都不太令人滿意。
技術(shù)選型的話用的是jquery,也是一個(gè)企業(yè)內(nèi)網(wǎng)系統(tǒng),用的是之前公司的框架,只是進(jìn)行功能擴(kuò)展
分片網(wǎng)上討論的很多,基本上全部都是用的HTML5的API,這個(gè)方案也不是不能用,但是在IE下面就不行了,兼容性差了點(diǎn),并且也不能進(jìn)行擴(kuò)展,不能進(jìn)行二次開發(fā),限制性非常大,我們技術(shù)同事提的要求是需要提供產(chǎn)品完整源代碼,
網(wǎng)上的文章全部都沒有提供文件夾上傳和續(xù)傳的代碼,也沒有提供數(shù)據(jù)庫操作的代碼,
另外這塊我們是要求必須提供產(chǎn)品完整源代碼,因?yàn)楹竺嫖覀冃枰砸褋砭S護(hù),同時(shí)是要求能夠自主可控的
研發(fā)部門的同事調(diào)研過百度的webuploader這個(gè)組件,發(fā)現(xiàn)他實(shí)際上就是對(duì)Flash和HTML5進(jìn)行了一個(gè)封裝,本質(zhì)還是調(diào)的HTML5的API,之前在項(xiàng)目中也用過,嘗試過,但是最終都不太滿意,一個(gè)是兼容性非常差,說的是兼容IE,但是在IE用的是Flash,在很多用戶的電腦上用不了,卡頓崩潰發(fā)生的太頻繁,文件上傳的數(shù)量一多比如幾千個(gè),前端頁面就開始卡了,用戶體驗(yàn)非常差。這些問題研發(fā)部的同事都向百度反應(yīng)過,但是百度webuploader那邊一直沒人回,基本上沒人管,領(lǐng)導(dǎo)說要求付費(fèi)提供技術(shù)支持,那邊也是沒人回,聯(lián)系不上他們?nèi)魏稳恕?/p>
webuploader這邊連個(gè)開發(fā)人員都聯(lián)系不到,這個(gè)是怎么回事?
用戶上傳的文件比較大,有20G左右,直接用HTML傳的話容易失敗,服務(wù)器也容易出錯(cuò),需要分片,分塊,分割上傳。也就是將一個(gè)大的文件分成若干個(gè)小文件塊來上傳,另外就是需要實(shí)現(xiàn)秒傳功能和防重復(fù)功能,秒傳就是用戶如果上傳過這個(gè)文件,那么直接在數(shù)據(jù)庫中查找記錄就行了,不用再上傳一次,節(jié)省時(shí)間,實(shí)現(xiàn)的思路是對(duì)文件做MD5計(jì)算,將MD5值保存到數(shù)據(jù)庫,算法可以用MD5,或者CRC,或者SHA1,這個(gè)隨便哪個(gè)算法都行。
切片的話還有一點(diǎn)就是在服務(wù)器上合并,一個(gè)文件的所有分片數(shù)據(jù)上傳完后需要在服務(wù)器端進(jìn)行合并操作。
視頻教程:https://www.ixigua.com/7227314770696012322
導(dǎo)入項(xiàng)目:
導(dǎo)入到Eclipse:http://www.ncmem.com/doc/view.aspx?id=9da9c7c2b91b40b7b09768eeb282e647
導(dǎo)入到IDEA:http://www.ncmem.com/doc/view.aspx?id=9fee385dfc0742448b56679420f22162
springboot統(tǒng)一配置:http://www.ncmem.com/doc/view.aspx?id=7768eec9284b48e3abe08f032f554ea2
下載示例:
https://gitee.com/xproer/up6-jsp-eclipse/tree/6.5.40/
工程
NOSQL
NOSQL示例不需要任何配置,可以直接訪問測試
創(chuàng)建數(shù)據(jù)表
選擇對(duì)應(yīng)的數(shù)據(jù)表腳本,這里以SQL為例
修改數(shù)據(jù)庫連接信息
訪問頁面進(jìn)行測試
文件存儲(chǔ)路徑
up6/upload/年/月/日/guid/filename
相關(guān)問題:
1.javax.servlet.http.HttpServlet錯(cuò)誤
2.項(xiàng)目無法發(fā)布到tomcat
3.md5計(jì)算完畢后卡住
4.服務(wù)器找不到config.json文件
相關(guān)參考:
文件保存位置
源碼工程文檔:https://drive.weixin.qq.com/s?k=ACoAYgezAAw1dWofra
源碼報(bào)價(jià)單:https://drive.weixin.qq.com/s?k=ACoAYgezAAwoiul8gl
OEM版報(bào)價(jià)單:https://drive.weixin.qq.com/s?k=ACoAYgezAAwuzp4W0a
產(chǎn)品源代碼:https://drive.weixin.qq.com/s?k=ACoAYgezAAwbdKCskc
授權(quán)生成器:https://drive.weixin.qq.com/s?k=ACoAYgezAAwTIcFph1
lt;h2 id="title1">開發(fā)工具(工欲善其事必先利其器)</h2>
為了讓大家更快的融入到編程的世界中, 不被繁瑣的英語單詞所困擾, 不用每天編寫很多沒有意義的重復(fù)代碼, 提升大家的開發(fā)效率今后的課程中我們統(tǒng)一采用最高級(jí)高發(fā)工具來編寫網(wǎng)頁
<h3 id="title2">常見的前端開發(fā)工具</h3>
記事本: 提示功能較差
editplus/nodepad++: 提示功能較差
Dreamwaver: 更偏向設(shè)計(jì)
Sublime: 輕量級(jí),自帶功能不太全, 但是插件十分豐富
WebStorm: 重量級(jí), 自帶功能全面
其它ide(zend studio、netbean等)
為了讓大家更快的融入到編程的世界中, 不被繁瑣的英語單詞所困擾, 今后的課程中我們統(tǒng)一采用最牛逼最高級(jí)的高發(fā)工具WebStorm
<h3 id="title3">WebStorm安裝和使用</h3>
安裝軟件
1.png
2.png
3.png
4.jpg
5.jpg
6.png
7.jpg
8.png
破解軟件
9.png
10.png
11.jpg
12.jpg
13.png
14.png
漢化軟件
15.png
16.jpg
設(shè)置模版
創(chuàng)建文件
17.png
18.jpg
關(guān)注微信訂閱號(hào):網(wǎng)頁設(shè)計(jì)輕松學(xué) 有更多內(nèi)容
19.png
WebStorm常見快捷鍵
如何在WebStorm中利用快捷鍵創(chuàng)建一個(gè)新的.html的文件
同時(shí)按下鍵盤上的Ctrl + Alt + Insert
如何在WebStorm中讓光標(biāo)移動(dòng)到當(dāng)前行的末尾
按下鍵盤上的End鍵即可
如何在WebStorm中讓光標(biāo)移動(dòng)到當(dāng)前行的最前面
按下鍵盤上的Home鍵即可
如何在WebStorm中讓光標(biāo)在多行中閃爍
按住鍵盤上的Alt鍵不放, 然后再按住鼠標(biāo)的左鍵不放, 然后再拖動(dòng)鼠標(biāo)即可
如何在WebStorm中快速的復(fù)制光標(biāo)所在的那一行
按下鍵盤上的Ctrl + D
如何在WebStorm中快速的刪除光標(biāo)所在的那一行
按下鍵盤上的Ctrl + X
如何在WebStorm中讓標(biāo)簽包裹一段內(nèi)容, 也就是自動(dòng)在一段內(nèi)容前后加上標(biāo)簽
按下鍵盤上的Ctrl + Alt + T, 然后按下回車, 然后輸入對(duì)應(yīng)的標(biāo)簽即可
<h2 id="title4">基礎(chǔ)標(biāo)簽學(xué)習(xí)</h2>
<h3 id="title5">H系列標(biāo)簽(Header 1~Header 6)</h3>
作用:
用于給文本添加標(biāo)題語義
格式:
<h1>xxxxxx</h1>
注意點(diǎn):
H標(biāo)簽是用來給文本添加標(biāo)題語義的, 而不是用來修改文本的樣式的
H標(biāo)簽一共有6個(gè), 從H1~H6, 最多就只能到6, 超過6則無效
被H系列標(biāo)簽包裹的內(nèi)容會(huì)獨(dú)占一行
在H系列的標(biāo)簽中, H1最大, H6最小
在企業(yè)開發(fā)中, 一定要慎用H系列的標(biāo)簽, 特別是H1標(biāo)簽. 在企業(yè)開發(fā)中一般情況下一個(gè)界面中只能出現(xiàn)一個(gè)H1標(biāo)簽(和SEO有關(guān))
<h3 id="title6">P標(biāo)簽(Paragraph)</h3>
作用:
告訴瀏覽器哪些文字是一個(gè)段落
格式:
<p>xxxxxxxx</p>
注意點(diǎn):
在瀏覽器中會(huì)單獨(dú)占一行
<h3 id="title7">Hr標(biāo)簽(Horizontal Rule)</h3>
作用:
在瀏覽器上顯示一條分割線
格式:
<hr />
注意點(diǎn):
在瀏覽器中會(huì)單獨(dú)占一行
通過我的觀察發(fā)現(xiàn)HR標(biāo)簽可以寫/也可以不寫/, 如果不寫/那么就是按照HTML的規(guī)范來編寫, 如果寫上/那么就是按照XHTML的規(guī)范來編寫.但是在HTML5中, 由于HTML5兼容HTML和XHTML所有寫不寫都可以.那么以后我們?cè)谧銮岸碎_發(fā)時(shí)到底寫還是不寫呢? 按照高級(jí)開發(fā)工具的提示來寫即可.
由于hr標(biāo)簽是用來修改樣式的, 所以不推薦使用. 今后開發(fā)中添加水平線一般都使用CSS盒子來做
<h2 id="title8">HTML注釋(Annotation)</h2>
什么是注釋?
注釋是在所有計(jì)算機(jī)語言中都非常重要的一個(gè)概念,從字面上看,就是注解、解釋的意思
注釋可以用來解釋某一段程序或者某一行代碼是什么意思,方便直接或程序員之間的交流
為什么要使用注釋?
適當(dāng)?shù)淖⑨?,能夠讓我們的程序更加可讀,所以用中文提示自己,這里的程序是干什么的
注釋格式
<!--被注釋的內(nèi)容-->
注意點(diǎn):
被注釋的內(nèi)容不會(huì)在瀏覽器中顯示, 注釋是寫給我們自己看的
注釋不能嵌套使用
<!--<!--被注釋的內(nèi)容-->-->
快捷鍵: ctrl + /
<h3 id="title9">img標(biāo)簽(image)</h3>
作用: 在網(wǎng)頁上插入一張圖片
格式: 
標(biāo)簽的屬性
寫在標(biāo)簽中K="V"這種格式的文本我們稱之為標(biāo)簽屬性
屬性名稱 | 作用 |
---|---|
src(source) | 告訴瀏覽器需要插入 的圖片路徑, 以便于瀏覽器到該路徑下找到需要插入的圖片 |
alt(alternate) | 規(guī)定圖像的替代文本, 只有 在src指定的路徑下找不到圖片 ,才會(huì)顯示alt指定的文本 |
title | 懸停文本(介紹這張圖片, 只有在鼠標(biāo)移動(dòng)到圖片上時(shí)才會(huì)顯示) |
height | 設(shè)置圖片顯示的高度 |
width | 設(shè)置圖片顯示的寬度 |
注意點(diǎn):
img標(biāo)簽添加的圖片默認(rèn)不是占一整行空間
如果想讓圖片等比拉伸, 只寫高度或者寬度即可
關(guān)注微信訂閱號(hào):網(wǎng)頁設(shè)計(jì)輕松學(xué) 有更多內(nèi)容
<h3 id="title10">br標(biāo)簽(Break)</h3>
作用:
讓內(nèi)容換行
格式:
<br/>
注意點(diǎn):
br的意思是不另起一個(gè)段落進(jìn)行換行, 而網(wǎng)頁中99.99%需要換行時(shí)都是因?yàn)榱砥鹆艘粋€(gè)段落, 所以應(yīng)該用p來做
<h3 id="title11">相對(duì)路徑和絕對(duì)路徑</h3>
圖片路徑分為兩種, 一種是絕對(duì)路徑, 一種是相對(duì)路徑, 我們重點(diǎn)學(xué)習(xí)相對(duì)路徑
, 因?yàn)樵谄髽I(yè)級(jí)開發(fā)中沒有人使用絕對(duì)路徑
絕對(duì)路徑
從電腦的具體盤符開始尋找我們需要的資源

以上代碼表示在F盤下查找lnj文件夾, 然后在lnj文件夾下查找girl.png圖片
相對(duì)路徑
一個(gè)文件相對(duì)于另外一個(gè)文件的位置尋找我們需要的資源

假設(shè)html文件和girl.png都在lnj文件夾下, 以上代碼表示在lnj文件夾下查找girl.png圖片
為什么沒人使用絕對(duì)路徑?
可以移植性太差.
什么是可移植性?
可以簡單的理解為把寫到的代碼拷貝到另外一臺(tái)電腦上是否能夠正常運(yùn)行
為什么絕對(duì)路徑可移植性差?
假如我編寫的html文件放在我電腦的 F:/lnj
目錄下, html文件中用到的圖片放在F:/lnj/images
目錄下, 我給src指定的絕對(duì)路為F:/lnj/images/girl.png
. 那么將來我將整個(gè)lnj文件夾拷貝給你
, 如果你將lnj文件夾放在非F盤下, 那么將無法顯示圖片
例如你存放在C盤根目錄, 那么圖片的絕對(duì)路徑會(huì)變?yōu)?code>C:/lnj/images/girl.png, 而src會(huì)去F盤找, 所以不會(huì)顯示
你只有將lnj
文件夾存放在F盤根目錄下時(shí)圖片才會(huì)正常運(yùn)行, 這就叫做可移植性不好
Q群;162542073
為什么相對(duì)路徑可移植性好?
同上, 如果src指定的路徑為images/girl.png
, 那么無論你拷貝到那個(gè)盤, 哪個(gè)文件夾. 系統(tǒng)都只會(huì)在當(dāng)前文件夾中的images下去查找圖片
, 不會(huì)受到盤符和存儲(chǔ)位置的影響, 只要保證頁面和圖片位置的相對(duì)關(guān)系不變就不會(huì)影響到圖片的顯示
相對(duì)路徑幾種查找方式
../代表訪問上級(jí)目錄
假設(shè)a文件夾下面有b文件夾, 圖片存放在a文件夾中, html文件存放在b文件夾中, 那么路徑為../girl.png
因?yàn)閔tml文件在b文件夾中, 所以路徑是相對(duì)于b文件夾的, 所以../代表訪問b文件夾的上一級(jí)目錄, b文件夾的上一級(jí)目錄是a文件夾, 所以../girl.png就代表在a文件夾查找girl.png
直接編寫, 例如abc/girl.png
加上./ 編寫, 例如./abc/girl.png
相對(duì)當(dāng)前目錄有幾個(gè)文件夾,就在后面依次補(bǔ)全幾個(gè)文件夾名稱即可, 例如 abc/bbb/ccc/ddd/girl.png
或./abc/bbb/ccc/ddd/girl.png
直接編寫, 例如: girl.png
加上./ 編寫, 例如./girl.png
./代表當(dāng)前目錄, ./girl.png
代表在當(dāng)前目錄下查找
同級(jí)
下級(jí)
上級(jí)
注意事項(xiàng):
相對(duì)路徑不會(huì)出現(xiàn)這種格式aaa/../bbb/girl.png
雖然可以顯示, 但是企業(yè)開發(fā)中千萬不要這么寫
<h3 id="title12">a標(biāo)簽(anchor)</h3>
格式: <a >江哥博客</a>
作用: 用于從一個(gè)頁面鏈接到另一個(gè)頁面
注意事項(xiàng):
在a標(biāo)簽之間一定要寫上文字, 如果沒有, 那么在頁面上找不到這個(gè)標(biāo)簽
a標(biāo)簽也叫做超級(jí)鏈接
或超鏈接
a標(biāo)簽的屬性
屬性名稱 | 作用 |
---|---|
href(hypertext reference) | 指定跳轉(zhuǎn)的目標(biāo)地址 |
target | 告訴瀏覽器是否保留原始界面, _blank保留, _self不保留 |
title | 懸停文本(介紹這個(gè)鏈接, 只有在鼠標(biāo)移動(dòng)到超鏈接上時(shí)才會(huì)顯示) |
base標(biāo)簽和a標(biāo)簽結(jié)合使用
如果每個(gè)a標(biāo)簽都想在新頁面中打開,那么逐個(gè)設(shè)置a標(biāo)簽的target屬性比較麻煩, 這時(shí)我們可以使用base和a標(biāo)簽結(jié)合的方式,一次性設(shè)置有a標(biāo)簽都在新頁面中打開
格式: <base target="_blank" />
注意事項(xiàng):
base必須嵌套在head標(biāo)簽里面
如果標(biāo)簽上指定了target,base中也指定了target,那么會(huì)按照標(biāo)簽上指定的來執(zhí)行
a標(biāo)簽其它用法
例如<a href="girl.zip">下載福利資源<a/>
格式: <a href="01-錨點(diǎn)鏈接.html#location">跳轉(zhuǎn)到指定位置</a>
只需要在01-錨點(diǎn)鏈接.html
頁面添加一個(gè)id位置即可
2.1.格式<a href="#location">跳轉(zhuǎn)到指定位置</a>
2.2.在頁面的指定位置給任意標(biāo)簽添加一個(gè)id屬性
例如 <p id="location">這個(gè)是目標(biāo)</p>
格式<a href="#">江哥博客</a>
格式<a href="javascript:">江哥博客</a>
假鏈接(本質(zhì)是跳轉(zhuǎn)到當(dāng)前頁面)
跳轉(zhuǎn)到當(dāng)前
頁面指定位置
(錨點(diǎn)鏈接)
跳轉(zhuǎn)到指定
頁面的指定位置
下載(極力不推薦使用)
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。