❶ 塗料客戶定製化需求多怎麼處理
如何處理左右為難的客戶定製需求?
BeeArt
重塑數字化產品管理新模式
來自專欄數字化產品設計社區
(文章作者:產品經理 錢冰沁)
自從孵化 BeeArt 以來,常常收到各種各樣的用戶反饋與客戶需求,它們在需求分析看板中有著專屬的一列,不完全統計多達上百個。只是對於一款 B端產品而言,這樣多的個性化需求是非常頭疼的一個問題。面對這類需求,到底該如何處理?這裡面有多少是真需求,是核心需求,哪些又只是邊緣性需求,哪些應該被通用,哪些屬於個性化,又有多少其實是偽需求呢?
作為一名 B端的產品經理,你該如何面對它們呢?在此我有一些個人經驗想分享給大家,我是如何思考這些客戶需求?又是如何合理處理它們?
01. 客戶需求可以分為哪些?
a. 個性化功能
我希望在我的團隊空間中,左上角 BeeArt Logo 可以替換成自己的品牌 Logo
當接到這個需求後,我了解到這個團隊需要舉辦一次線上工作坊大會,參會者會使用 BeeArt 作為交流工具,因此希望自己大會的 Logo 可以更多的對參會者露出。對他們來說,左上角的 BeeArt Logo 會混淆主辦方的品牌。因此他們提出可以更換主 Logo 的需求。
那麼這個需求屬於個性化需求嗎?我相信不少產品經理也接到過企業客戶提出換 Logo 與換膚的需求,這似乎是一個可以被通用的常規需求。在判斷這個問題時,我從以下幾方面思考:
這個需求之前是否有其他許多客戶提出過?
提出此需求的客戶是否是產品的主要目標客戶群體?
在翻閱了之前的需求池與反饋記錄中發現,沒有除此之外的任何客戶提出過該需求,當客戶在使用一款 SaaS 軟體時,心裡便會默認左上角為軟體品牌 Logo,這對使用者似乎並不造成混淆。而此團隊舉辦線上工作坊今年也只有這一次,並非一個高頻通用場景。坦白說,在之後的產品銷售時也不會將此客戶當做核心目標客戶。
因此,依照當下即可判斷,這就是一個個性化功能!
b. 定製類功能
定製是 B 端產品始終繞不開的話題,SaaS 產品的噩夢。我粗粗的會分為以下 3種情況:
產品的角色許可權分類需要匹配我們的組織架構
1. 對於 大型客戶,因為本身規模大、業務結構復雜、流程固定,因此他們所需要的解決方案都帶有極強的專屬風格,很多需求只能依靠定製才能完美匹配;
提供更多的教程指引,再來幾個小游戲模板
2. 對於 中小客戶,由於他們業務還沒有標准化,流程也不一定成熟,因此很多規范的通用需求對於他們使用門檻較高,需要很多開箱即用的定製需求;
白板內字型大小從14跳到18,差別過大,字型大小選項增加 16號;
3. 一些 偏視覺類 的定製需求,由於每個客戶甚至個人的視覺偏好差異較大,字體字型大小,顏色邊距,每個人可能都不一樣。
其實定製類的需求往往也是一種個性化需求,由於客戶 A 所定製的功能,很可能其他客戶都不需要。因此面對較為完整的具有時間節點的定製需求,我會考慮通過付費的項目制進行推進。
隨著 B 端產品逐年演進成熟,目標客戶群體中高端大型客戶佔比越高,所需要應對的定製化需求也就越多。產品面臨的架構臃腫,功能冗餘的風險也就越高。這也是很多 SaaS 產品堅持只走 SaaS 路線的原因。
c. 私有化部署功能
私有化部署就是將本有公有雲上的代碼部署在客戶的私有雲或本地機房中,本質上它已和公有雲上的 SaaS 產品不再是一套。
對接企業 SSO 登錄
一般需求私有化部署的客戶大致分為:
對於自身數據安全有嚴格要求的
需要對接企業已有系統的
需要二次開發自己的專屬功能的
擁有自主伺服器和開發人員,希望自己維護演進的
由於私有化部署需要團隊消耗更多的時間,人力與成本。因此,一般只有資金充沛的中大型客戶才會需要私有化部署。最大的風險即為當客戶在私有化部署之後又疊加了定製化功能,對於後續升級與維護將是難上加難。也就意味著這類客戶將由產品的升級訂閱轉為了項目制運維。
02. 評估價值與可行性
一個成熟的產品經理在面對這些客戶需求的時候,並不應該一味的滿足同意,應該站在需求的價值、投入產出比、可行性等角度進行綜合分析。
a. 價值評估
1. 是否具有 被通用的潛力有些需求可能是某個業務領先的客戶提的,從當前來看,極有可能是一個個性化需求。但是從長遠角度來看,這個需求可能會成長為一個通用化的需求,隨著整體客戶群的周期進入發展期後,這類需求將會逐漸通用化。
2. 能否為單體客戶提供足夠大的價值某個單個需求,可以為客戶帶來巨大價值,為客戶賺取巨大收益、或是縮減成本。
3. 能否為產品帶來品牌效應這個需求對於產品本身來說有沒有商業價值,但可以與客戶發生鏈接,最終達到客戶幫產品做宣傳與背書、幫我們轉介紹更多的客戶等。
b. 投入產出比
有些需求可能只是修改一下前端頁面的 UI,那麼這種改動就比較小,投入產出也就比較小,雖然價值不大,但是成本也很低,可以視緊急程度而決定。現有 BeeArt 中則是每個迭代都會安排固定的時間進行 UI 優化,既能滿足客戶需求,又不佔用過多資源。
c. 可行性
在前文所分類的 3種客戶需求中,私有化部署的需求往往是難度最大的。
1. 不同的硬體配置、不同的硬體架構、不同的操作系統、不同的網路情況等,不同的安裝、架構、運維都要與之兼容;
2. 每次的版本功能更新,都需要在各個客戶處私有化部署一次,工作量重復了好幾倍;
3. 私有化服務產生的 bug 會帶有特殊性,和 SaaS 中的同一種 bug 並不一定是因為相同原因產生的,增加了定位難度,同時修復後要單獨再發布更新,大大增加了問題的響應時間;
4. 不同私有化的部署的產品版本可能存在多個,迭代功能需要考慮不同版本的兼容和影響,成本巨大;
因此,如果你是一個創業小團隊,在產品還未成熟的早期,私有化部署會對產品迭代演進造成很大的阻力,更建議成熟後在做打算。
03. 如何正確的處理客戶需求?
1. 對於小功能型需求、頁面 UI 類型需求等個性化需求,如果客戶重要度較高、需求輕量度較小、且對業務流程基本無影響,可以考慮直接進入產品路線圖進行排期優化,或是擇機通過收費的形式進行定製。
2. 如果該個性化需求實現成本很高,且對現有業務流程影響很大,需要進行大量改造的,我建議再三慎重思考,尤其在產品孵化早期,接這樣的定製化需求會對產品本身的迭代帶來巨大的影響。因為這不僅是一次性研發,在未來的每次迭代,你都要額外考慮一套可能差異巨大的業務流程的兼容,從產品、開發、測試每個角度來說工作量都會大增,甚至會嚴重影響 SaaS 產品自身的發展。
3. 除非這個客戶真的是不能丟棄的客戶,做完這些定製化需求,客戶能給你帶來巨大的價值,那麼也只能硬著頭皮接了。接了需求後,一定要合理的分配 SaaS 和定製化的資源分配,不要本末倒置,長期把資源都投入到了定製化、私有部署中。這也是很多 B端 SaaS 產品還沒做起來就已經潛入一堆漿糊、瞻前顧後、和無休止的客戶扯皮中的原因。
作為一名產品經理,接需求往往最容易。難得是如何在紛亂的需求噪音中堅持本心,不被眼前的利益動搖,拒絕掉那些與產品形態和商業模式不符合的需求。
❷ 對於自學前端有什麼建議
自學方法:
1、作為一個初學者,你必須明確系統的學習方案,我建議一定有一個指導的人,全靠自己學,放棄的幾率非常大,在你對於web前端還沒有任何概念的時候,需要一個人領進門,之後就都靠自己鑽研,第一步就是確定web前端都需要哪些內容,並且在多少時間內學完,建議時間6個月保底。
2、視頻為主,書為輔。很多初學者在學習前端的時候非常喜歡去買書,但是最後的結果是什麼?看來看去什麼都不會寫,所以在這里給大家提醒,書可以看,但是是在建立於你已經對於某個知識點有了具體操作的執行後,在用書去鞏固概念,這樣更加利於你對於知識的理解。
3、對於學習技術來講,掌握一個學習方法是非常重要的,其實對於學習web前端來講,學習方法確實很多都是相通的,一旦學習方法不對,可能就會造成「方法不對,努力白費」。其實關於這方面還是很多的,我就簡單說個例子,有的人邊聽課邊跟著敲代碼,這樣就不對,聽課的時候就專心聽,做題的時候就專心做題,這都是過來人的經驗,一定要聽。根據每個人的不同,可能學習方法也會有所出路,找到適合你自己的學習法方法是學習的前提。
4、不建議自己一個人瞎學,在我了解學習編程的這些人來看,從零基礎開始學並且最後成功做這份工作的其實並沒有幾個,我覺得大部分原因就是因為他們都不了解web前端是干什麼的,學什麼的,就盲目的買書看,到處找視頻看,最後看著看著就放棄了,所以我建議初學者在沒有具體概念之前,還是找有經驗的人請教一下,聊過之後你就會知道web前端具體是干什麼的,該怎麼學,這是我個人的小建議,可以不採納。
自學路線:
第1階段:前端頁面重構(4周)
內容包含了:(PC端網站布局項目、HTML5+CSS3基礎項目、WebApp頁面布局項目)
第2階段:JavaScript高級程序設計(5周)
內容包含:(原生JavaScript交互功能開發項目、面向對象進階與ES5/ES6應用項目、JavaScript工具庫自主研發項目)
第3階段:PC端全棧項目開發(3周)
內容包含:(jQuery經典交互特效開發、HTTP協議、Ajax進階與PHP/JAVA開發項目、前端工程化與模塊化應用項目、PC端網站開發項目、PC端管理信息系統前端開發項目)
第4階段:移動端項目開發(6周)
內容包含:(Touch端項目、微信場景項目、應用Angular+Ionic開發WebApp項目、應用Vue.js開發WebApp項目、應用React.js開發WebApp項目)
第5階段:混合(Hybrid,ReactNative)開發(1周)
內容包含:(微信小程序開發、ReactNative、各類混合應用開發)
第6階段:NodeJS全棧開發(1周)
內容包括:(WebApp後端系統開發、一、NodeJS基礎與NodeJS核心模塊二、Express三、noSQL資料庫)
基礎書籍:
1、《Head First HTML與CSS(第2版)》,入門真的是經典書籍,手把手教學,豐富的案例讓你從 0 開始學前端。
2、《CSS權威指南(第三版)》,這本書作為 CSS 的經典著作,把原理講得非常的通透,除了 w3c 標准,算最權威的一本了,畢竟權威指南。
3、《CSS揭秘》神書,47 個 css 技巧讓你在面對各種 css 問題的時候游刃有餘。是 css 書籍中評分最高的了,css 進階必備。
4、《javascript語言精粹》,這本書可以在入門之前了解一下基本語法,以及在學習之前可以了解下 JS 裡面的精粹以及糟粕,雖然這本書很薄很薄,但是值得反復去讀的一本書。
5、《JavaScript DOM編程藝術(第2版)》,本書在簡潔明快地講述JavaScript和DOM的基本知識之後,通過幾個實例演示了專業水準的網頁開發技術,透徹闡述了平穩退化等一批至關重要的 JavaScript編程原則和最佳實踐。
6、《JavaScript權威指南》:犀牛書是每個FE都繞不過的一本書,可以先大致通讀幾遍,也可以把其當作工具書,時時翻閱。
望採納~
❸ 面對大量定製化的需求,企業要怎麼做才能實現大量定製化生產
一般來講,既然是定製化生產,客戶就要接受定製化交期一般要長這個要求;另外,因為是定製化,就要跟批量生產區別開來,不能完全按照批量要求滿足客戶,不要盲目擴大生產能力,最好使用飢渴營銷模式,不至於擴大規模後,矛盾轉化,將會給公司帶來不可逆轉的惡性循環。個人建議,僅供參考。
❹ web前端產業發展現狀
Web前端開發發展前景:
1、Web前端人才需求量大
據國內第三方數據統計,未來五年我國信息化人才總需求高達1500萬-2000萬人。其中「網路工程」「UI設計」「Web前端」等人才的缺口最為突出,所以2021年Web前端的市場需求很大。更有甚者目前不僅大型互聯網公司相繼成立了專屬的Web前端部門,中小型公司和創業公司也急需專業的Web前端工程師。
2、Web前端薪資待遇高
前端開發行業薪資水平呈上漲趨勢,Web前端開發早已不是做帶動動畫的下拉菜單的時代,他們已成為互聯網的主宰者,各行業都用其開發互聯網應用。
3、前端就業方向多
Web前端開發在軟體開發中,就業門檻較低好就業,薪資待遇平均超過13k。在目前互聯網只要公司有需要開發互聯網產品,包括網站,網頁h5,小程序,APP等等,就需要前端開發工程師崗位,具體的就業的方向還可以按公司的技術需求來區分,側重點各有不同,就業行業隨著互聯網的發展,已經變得越來越廣泛。
4、Web發展前景好
隨著5G時代的到來,知否在移動互聯網領域將會出現新的開發場景,包括自動駕駛,車聯網,物聯網,人工智慧還有可穿戴設備等領域將帶來大量的額前端開發需求,有需求就會有市場。
可以看出,Web前端工作無法被替代,客戶需求存在前景巨大。但IT行業只有不斷的自我學習更新才不會被行業所淘汰。
❺ web開發的發展前景怎麼樣
近幾年,前端的發展還是非常好的,市場需求大,加上學習起來也相對簡單,有眾多人選擇並學習。現在流行前後端都會的全棧技能,目前前沿的前端技能叫做web全棧工程師。
學習的內容包括:
①計算機基礎以及PS基礎
②前端開發基礎(HTML5開發、JavaScript基礎到高級、jQuery網頁特效、Bootstrap框架)
③移動開發
④前端高級開發(ECMAScript6、Veu.js框架開發、webpack、前端頁面優化、React框架開發、AngularJS 2.0框架開發等)
⑤小程序開發
⑥全棧開發(MySQL資料庫、Python編程語言、Django框架等)
⑦就業拓展(網站SEO與前端安全技術)
互聯網行業目前還是最熱門的行業之一,學習IT技能之後足夠優秀是有機會進入騰訊、阿里、網易等互聯網大廠高薪就業的,發展前景非常好,普通人也可以學習。
想要系統學習,你可以考察對比一下開設有相關專業的熱門學校,好的學校擁有根據當下企業需求自主研發課程的能力,能夠在校期間取得大專或本科學歷,中博軟體學院、南京課工場、南京北大青鳥等開設相關專業的學校都是不錯的,建議實地考察對比一下。
祝你學有所成,望採納。
❻ 現在Web前端是否已經飽和了
由於現在的互聯網行業的快速發展,企業之間的競爭日趨明顯,對Web前端工程師的要求也日益提高。對於基礎不扎實技能掌握不全面的小夥伴來說,面試成功率不似幾年前那樣火爆,本質原因還在於企業對人才的篩選更加理性化。所以導致了部分對於前端技術掌握不是很好的人很難找到工作,而企業也是難找到一個合適的前端人才。
因此,現在的前端行業出來了倆種不同的現象就是能力強的學習好的工作的機會很多,學習不好的,掌握的知識不扎實的導致工作機會比較少。所以現在的web前端也不是說是飽和了而是對於前端人才的要求提高了。
那作為Web前端開發師,需要掌握哪些能力才找到好的工作呢?
我認為有以下五個方面:
1、基礎知識牢固,而不僅僅滿足於框架。框架的學習是必然的,大部分公司都是基於各種不同的框架進行開發的,但是作為一個優秀的前端工程師,不僅僅要掌握框架的基本使用,也要懂得前端原理。這樣才能更好的使用各種工具。
2、具有「解決問題」的能力,並非機械化堆砌語句。簡單的代碼工作已經不適合現在企業的告訴發展,更多的是需要處理問題的思維能力,才能獲得更好的機會。
3、代碼規范,能夠快速融入團隊協作。尤其大公司對於團隊合作的要求是非常明顯的,所以需要開發者能嚴格的按照代碼規范書寫以及注釋。
4、了解用戶體驗,研究性能優化。產品最終使用者都是用戶,而企業對於用戶體驗的要求已經達到了極致,在市場競爭體制下,更好的了解用戶體驗,才能獲得更多的機會。
5、實戰經驗必不可少。一個前端工程師完成的項目數量以及質量是他在面試時候的加分項,也是提高薪資水平的前提。
Web前端開發工程師找工作需要更加真實的實力。所以想要進入Web前端開發領域的小夥伴,抓緊時間完善自身技術水平,多方面補充自己的能力吧。
不會,這才剛開始呢。等node這樣的東西更成熟些,市場份額據主流就差不多了。不過那時候,也就不分前後端了吧!
每一年都有人問這個問題,但是你會發現招聘信息只增不減, 科技 公司也越來越多,不過,初級前端確實不好找工作,大象招初級前端基本都是校招走了,目前來看,公司需求的是中級和高級前端。
下面是前端學習路線,你可以去嗶哩上看尚矽谷的視頻,免費的視頻和代碼資料
作為一名前端人員我認為這個問題應該一分為二來回答。首先說前端技術飽和了嗎?我認為沒有。高端的技術人員永遠都是搶手的。互聯網迅速發展,技術不斷更新,但是人員在增加的同時,一些高端的技術年齡也在老化,逐漸的退出舞台,但是新的人又沒有很快的補充上來,就拿我們前端 游戲 人員來說吧,主程級別的人才基本都是斷檔的,這種人我招了兩年了很難招到,這種人基本上是入不敷出,供小於求,從這方面講前端是不飽和的,但是每天又收到了很多簡歷,基本都是新手級別的,都是從各種培訓機構出來的,這些人基本都是教條化出來的人,技術能力潛力等參差不齊,導致很難挑大樑,你會發現這些人基本年年在換工作,在找工作,給人一種錯覺,前端技術飽和了。
第一 相對於前兩年我入行前端來說,前端確實人多太多,原因很簡單,前端培訓入門簡單,培訓班太多
第二 技術要求一般的前端職位確實已飽和,以前我面試一家大公司,那一次面試大概有200人,其中只有幾個前端,其他都是java和c,現在10多個人爭一個職位,身邊的人好幾個月找不到工作
第三 技術過硬的前端很缺,一般一個小公司只會招一兩個前端,大多還是一個,那麼他就要求你必須能一力承擔全部的前端工作,這不單純是工作量的問題,包括優化,推廣封裝,架構等等
第四 痛點,剛培訓出來的,沒有實際經驗,技術也很難達標,惡心循環,怎麼辦?無非是降低工資,或是騙得過去
大概就這么多,本人工作也兩年了,目前在公司是高級研發職位,有需要的私信我可以給你指導指導
互聯網時代不僅為人民的生活帶來了不盡的福祉,同時也造就了無數的就業崗位,並且這個數據在不斷增加中。web前端,大數據、區塊鏈、人工智慧這些新領域更是火爆,但是對IT行業從業人員也提出了更高的要求。
所以黑馬先鋒告訴你不要擔心會找不到工作,現在各大公司都缺人,所以不會出現找不到工作的
在選擇web前端培訓學院的時候,要多選擇幾家,進行比較,比如說, 他們是否有就業保障,班型大小,是否有實際的項目經驗,總體來說,web前端開發的就業前景還是很可觀的,但很多事情並不是一蹴而就的,還得需要前端技術人員靜下心來刻苦鑽研,中國的市場才有更大的發展空間。
每年都在說前端崗位飽和,但是前端依舊火熱,招聘需求一年比一年多,薪資持續上漲,發展前景非常廣闊。下面分享下前端的就業前景,讓你具體了解前端飽和是無稽之談。Web前端開發就業前景:1、Web前端人才需求量大據國內第三方數據統計,未來五年我國信息化人才總需求高達1500萬-2000萬人。其中「網路工程」「UI設計」「Web前端」等人才的缺口最為突出,所以2020年Web前端的市場需求很大。更有甚者目前不僅大型互聯網公司相繼成立了專屬的Web前端部門,中小型公司和創業公司也急需專業的Web前端工程師。2、Web前端薪資待遇高前端開發行業薪資水平呈上漲趨勢,Web前端開發早已不是做帶動動畫的下拉菜單的時代,他們已成為互聯網的主宰者,各行業都用其開發互聯網應用。3、前端就業方向多Web前端開發在軟體開發中,就業門檻較低好就業,薪資待遇平均超過13k。在目前互聯網只要公司有需要開發互聯網產品,包括網站,網頁h5,小程序,APP等等,就需要前端開發工程師崗位,具體的就業的方向還可以按公司的技術需求來區分,側重點各有不同,就業行業隨著互聯網的發展,已經變得越來越廣泛。4、Web發展前景好隨著5G時代的到來,知否在移動互聯網領域將會出現新的開發場景,包括自動駕駛,車聯網,物聯網,人工智慧還有可穿戴設備等領域將帶來大量的額前端開發需求,有需求就會有市場。以上就是總結的Web前端今年的就業前景。可以看出,Web前端工作無法被替代,客戶需求存在前景巨大。但IT行業只有不斷的自我學習更新才不會被行業所淘汰。
全國所有行業所有職位都是中低級飽和,缺高級,但企業又想拿中低級的錢招高級
計算機行業前後分離沒多久的 至少在國內還是很可以的,前端的技術也是要不斷進步的。高端的技術人員永遠都是搶手的。
目前沒有飽和,目前需求量還是比較大的
❼ 為什麼做WEB前端開發的人這么多呢
移動互聯網的快速發展,各類互聯網公司的網頁製作者正在向網路前端轉型,因此企業所需的網路前端工程師在市場上供不應求。並且,從就業趨勢來看,北京、上海、廣州、深圳等地HTML5前端工程師的薪資待遇也是一再飆升。
Web前端開發不僅薪資持續走高,崗位需求量也不斷增大。各個企業對於這塊的人才需求量很大。從招聘網站的數據分析,web前端的崗位需求已經跟主流編程語言,諸如Java、ASP、和ios等的開拓人員的數量差不多,甚至有超過的趨勢。各大廠也紛紛將視線轉向Web前端。
技術環境的飛速改變,使得前端所需要的技術在不斷更新,每個人必須不斷更新自己的知識技能儲備,否則隨時都可能脫離Web前端開發一線隊伍。
❽ web前端開發前景如何
關於WEB前端的開發前景:
1,市場:
在中國web前端的市場永遠都是巨大的,但是隨著信息的普及,人人都知道web前端開發做的時間久了,工資高,所以必然會增加競爭程度。
但這是好事,有競爭才有更多人才出現。
web前端的生態系統幾乎涵蓋了目前市面上所有的軟硬體,web前端在中國的地位20年都是霸主,幾乎是萬能的,你能想到的,web前端基本都能實現。
2,需求
目前智聯,boss,拉勾網的招聘來看,web前端的需求量還是排名第一,但是這個需求是有前提條件的,就是需要有工作經驗,因為你沒有工作經驗,公司就會認為你沒有開發項目的能力,自然不會要你,所以你在學習中,一定要培養自己的經驗。
什麼是經驗?就是多多遇到問題,然後解決問題,這就是解決,也可以稱為解決問題的能力。有人說web前端飽和了,這是絕對不可能的,只能說你現在競爭大,學習的人,質量差了而已。所以很多人說找不到工作。其實他自己啥都不會。
這只是針對一線城市而言,相對於二三線城市來說對於實際開發經驗是稍微的放鬆的。
3,穩定
其實想學web前端的人完全不用擔心,因為在中國web前端一直都是第一的,需求量非常大,這么多年web前端從未被超越,第一個問題已經說過了,web前端是有一個龐大的生態系統,它的覆蓋范圍非常廣,而且已經連續10幾年位居開發語言的榜首,所以web前端是相對於其他語言來說,非常穩定的,不用擔心失業的問題了。
❾ Web前端行業現在是不是已經飽和了呀
有人覺得前端的工作越來越難找了,就會想到是不是web前端行業已經飽和了?
的確,前幾年因為易學薪資高,前端市場一直處於風口浪尖,吸引了很多人入行,幾乎是懂一點HTML、JS、CSS的都來吃這碗飯。但現在,隨著互聯網和移動終端的普及,雨後春筍般的互聯網項目的發展,用戶對於用戶體驗的需求不斷提升,所以,不是市場飽和了,而是行業對前端工程師的要求提高了,當你覺得工作不好找,可能要從自身技術水平上找找原因了。
由於前端的入門門檻較低,大部分人認為HTML、CSS、JSt並不是很難掌握的語言,似乎只要花一些功夫,都可以通過網上教程或者書本入門。許多人懷著追求高薪的想法入行,其實也沒什麼錯,但是無法安心學習,淺嘗輒止,會一點皮毛便不再深入研究。
所以才有那麼多人有人抱怨說,前端工程師人太多了,web前端行業飽和了……
現在的市場已經不是最初的初級市場,現在的市場對前端工程師的從業要求越來越精,要求你必須對各模塊掌握熟練,基礎知識扎實,有良好的邏輯能力,舉一反三。
優秀的前端工程師在找工作時都擁有絕對的主動權,所以,繼續打怪升級、提升技術吧!
❿ 為什麼Java Web工程只能定製化
一個web中完全可以沒有web.xml文件,也就是說,web.xml文件並不是web工程必須的。
那什麼時候需要,什麼時候可以不需要呢?
要想回答上面的問題,得先了解web.xml文件使用來干什麼的。web.xml文件是用來配置:歡迎頁、servlet、filter等的。當你的web工程沒用到這些時,你可以不用web.xml文件來配置你的web工程。
那麼web.xml能做的所有事情都有那些?
其實,web.xml的模式(Schema)文件中定義了多少種標簽元素,web.xml中就可以出現它的模式文件所定義的標簽元素,它就能擁有定義出來的那些功能。web.xml的模式文件是由Sun公司定義的,每個web.xml文件的根元素<web-app>中,都必須標明這個 web.xml使用的是哪個模式文件。如:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
</web-app>
而且web.xml的模式文件中定義的標簽並不是定死的,模式文件也是可以改變的,一般來說,隨著web.mxl模式文件的版本升級,裡面定義的功能會越來越復雜,也即標簽元素的種類會越來越多,但有些是不常用的,我們只需記住一些常用的就可以了。
下面列出web.xml常用的標簽元素及這些標簽元素的功能:
1、指定歡迎頁面,例如:
<welcome-file-list>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index1.jsp</welcome-file>
</welcome-file-list>
上面的例子指定了2個歡迎頁面,顯示時按順序從第一個找起,如果第一個存在,就顯示第一個,後面的不起作用。如果第一個不存在,就找第二個,以此類推。
關於歡迎頁面:
訪問一個網站時,默認看到的第一個頁面就叫歡迎頁,一般情況下是由首頁來充當歡迎頁的。一般情況下,我們會在web.xml中指定歡迎頁。但web.xml 並不是一個Web的必要文件,沒有web.xml,網站仍然是可以正常工作的。只不過網站的功能復雜起來後,web.xml的確有非常大用處,所以,默認創建的動態web工程在WEB-INF文件夾下面都有一個web.xml文件。
對於tomcat來說,當你只指定一個web的根名,沒有指定具體頁面,去訪問時一個web時,如果web.xml文件中配置了歡迎頁,那麼就返回指定的那個頁面作為歡迎頁,而在文中沒有web.xml文件,或雖然有web.xml,但 web.xml也沒指定歡迎頁的情況下,它默認先查找index.html文件,如果找到了,就把index.html作為歡迎頁還回給瀏覽器。如果沒找到index.html,tomcat就去找index.jsp。找到index.jsp就把它作為歡迎頁面返回。而如果index.html和 index.jsp都沒找到,又沒有用web.xml文件指定歡迎頁面,那此時tomcat就不知道該返回哪個文件了,它就顯示The requested resource (/XXX) is not available的頁面。其中XXX表示web的根名。但如果你指定了具體頁面,是可以正常訪問的。
2、命名與定製URL。我們可以為Servlet和JSP文件命名並定製URL,其中定製URL是依賴一命名的,命名必須在定製URL前。下面拿serlet來舉例:
(1)、為Servlet命名:
<servlet>
<servlet-name>servlet1</servlet-name>
<servlet-class>net.test.TestServlet</servlet-class>
</servlet>
(2)、為Servlet定製URL、
<servlet-mapping>
<servlet-name>servlet1</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
3、定製初始化參數:可以定製servlet、JSP、Context的初始化參數,然後可以再servlet、JSP、Context中獲取這些參數值。下面哪servlet來舉例:
<servlet>
<servlet-name>servlet1</servlet-name>
<servlet-class>net.test.TestServlet</servlet-class>
<init-param>
<param-name>userName</param-name>
<param-value>Tommy</param-value>
</init-param>
<init-param>
<param-name>E-mail</param-name>
<param-value>[email protected]</param-value>
</init-param>
</servlet>
經過上面的配置,在servlet中能夠調用getServletConfig().getInitParameter("param1")獲得參數名對應的值。
4、指定錯誤處理頁面,可以通過「異常類型」或「錯誤碼」來指定錯誤處理頁面。
<error-page>
<error-code>404</error-code>
<location>/error404.jsp</location>
</error-page>
-----------------------------
<error-page>
<exception-type>java.lang.Exception<exception-type>
<location>/exception.jsp<location>
</error-page>
5、設置過濾器:比如設置一個編碼過濾器,過濾所有資源
<filter>
<filter-name>XXXCharaSetFilter</filter-name>
<filter-class>net.test.CharSetFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>XXXCharaSetFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
6、設置監聽器:
<listener>
<listener-class>net.test.XXXLisenet</listener-class>
</listener>
7、設置會話(Session)過期時間,其中時間以分鍾為單位,假如設置60分鍾超時:
<session-config>
<session-timeout>60</session-timeout>
</session-config>