日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
怎么找到程序員一起合伙創(chuàng)業(yè)?(現(xiàn)在開發(fā)JAVA后臺?)

本文由創(chuàng)新互聯(lián)(www.cdcxhl.com)小編為大家整理,本文主要介紹了怎么找到程序員一起合伙創(chuàng)業(yè)的相關(guān)知識,希望對你有一定的參考價值和幫助,記得關(guān)注和收藏網(wǎng)址哦!

創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)營銷推廣、網(wǎng)站重做改版、米林網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5、成都商城網(wǎng)站開發(fā)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)公司、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為米林等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

怎么找到程序員一起合伙創(chuàng)業(yè)?

的世界從來不缺乏創(chuàng)造力。很多人以為每天刷Tik Tok、玩就知道互聯(lián)網(wǎng)了。如果你 我從未從事過互聯(lián)網(wǎng)工作,也沒有做過互聯(lián)網(wǎng)產(chǎn)品,我建議你不要做。;不要嘗試,因為這筆錢很可能會被浪費掉。

互聯(lián)網(wǎng)產(chǎn)品推廣成本非常高。你可能會想象有人會用你的產(chǎn)品,但實際情況會完全不同。

第一,20萬不夠支持發(fā)展。根據(jù)你的問題,開發(fā)一個APP應(yīng)該是必須的,但是開發(fā)一個功能齊全的APP并沒有你想的那么簡單。一個完整的開發(fā)架構(gòu)至少需要一個ios開發(fā),一個Android開發(fā),一個后臺管理系統(tǒng)開發(fā)。

在技能上,分為前端開發(fā)、后端開發(fā)和數(shù)據(jù)庫管理。這樣的話,至少需要4個人。如果功能很強大,完整團隊需要6-8人。按照最低4人的配置,你每個月的開銷不會低于5萬。

一個完整的產(chǎn)品開發(fā)周期需要不斷的迭代和試錯。這個過程不是你加班就能完成的。也需要時間積累數(shù)據(jù)和市場反饋。開發(fā)正式版可能需要長達4個月的時間。你的20萬已經(jīng)只花了人工工資,推廣費用在服務(wù)器費用,辦公費用等之前基本沒有了。

第二,it 開始的時候盈利并不容易,但是現(xiàn)在它變得越來越好了。;這太難了?;ヂ?lián)網(wǎng)產(chǎn)品總是先免費引流,再篩選細分用戶進行增值付費。一上來就要收費,沒人愿意馬上用。

不過如果針對B端用戶可能會更好。但是對于B端產(chǎn)品來說,技術(shù)要求非常高,技術(shù)團隊還得比較強。產(chǎn)品做好之后,還是需要銷售團隊去推廣。這20萬你基本不可能做到。

第三,要理解互聯(lián)網(wǎng)創(chuàng)業(yè)的基本邏輯。和所有行業(yè)一樣,互聯(lián)網(wǎng)也有自己的行業(yè)邏輯。如果你不 我一點也不理解互聯(lián)網(wǎng)的邏輯,它 就像一個人可以 不會游泳,突然去參加1000米比賽。沒有成功的可能。

你的建議是找一家互聯(lián)網(wǎng)公司做一段時間,這樣不僅可以了解互聯(lián)網(wǎng)的運作邏輯,還可以認識很多技術(shù)人員。多和互聯(lián)網(wǎng)從業(yè)者交流,視野會更開闊。

現(xiàn)在開發(fā)JAVA后臺?

謝謝邀請~

常年從事Java開發(fā),下面我給大家介紹一些常用的技術(shù)、框架和軟件。

Maven,三五年前的老項目:新老項目都是建立在Maven之上的,所以放在第一位;它是一個項目管理工具,主要功能有:項目建設(shè);Jar包的依賴管理;版本管理;持續(xù)整合等等;

Spring:是一個J2EE框架,它為IOC提供了很好的支持,并且非常好的封裝了AOP技術(shù)。

Spring MVC是Spring的子項目,實現(xiàn)了MVC設(shè)計模式。,目標是脫鉤;

MyBatis或者Hibernate:現(xiàn)在后者用的比較少,都是ORM框架;

JUint:單元測試工具;

Shiro:一個關(guān)于安全認證的框架,用于用戶身份認證、權(quán)限授權(quán)、加密、會話管理等。

Cxoraxis:老項目WebService用的比較多;

Quartz:定時服務(wù)框架,一般是獨立應(yīng)用;

Ehcache:一個緩存框架,也用于單機項目;

Log4j、logback:各種測井工具;

關(guān)系數(shù)據(jù)庫:Oracle,Mysql,DB2都用過。

在最近的新項目中使用了許多舊的框架,并且添加了許多新的框架和工具。

Spring Boot:其他框架的框架,主要提供各種啟動器,簡化各種配置,方便與其他框架集成,讓開發(fā)者快速上手。

春云:那 更多。It 這是一套框架。包括以下內(nèi)容:

Config:配置管理器;

網(wǎng)飛尤里卡:服務(wù)注冊、服務(wù)發(fā)現(xiàn)等。;

網(wǎng)飛海斯特里克斯:斷路器;

網(wǎng)飛佯:聲明式服務(wù)調(diào)用組件。

網(wǎng)飛絲帶:客戶端負載平衡。

網(wǎng)飛祖爾:門戶;

總線:消息總線;

Sleuth:日志收集;

《春云》里還有很多其他的,我 我只說我們用的。

Restful API、RPC:不同風(fēng)格的服務(wù);

java開發(fā)一個網(wǎng)站平臺技術(shù)方面需要考慮哪些?

Swagg只談?wù)摷夹g(shù)方面。通俗點說就是前端接口、后端邏輯、數(shù)據(jù)庫、web服務(wù)器、真實服務(wù)器(云服務(wù)器或真實硬件服務(wù)器)。

在前端,現(xiàn)在流行的技術(shù)是vue.js,Vue.js是一個基于數(shù)據(jù)驅(qū)動的漸進式前端開源框架,不僅適用于PC,也適用于移動?,F(xiàn)在很多大型網(wǎng)站都在用Vue.js,對了,vue.js的作者來自。

讓 讓我們來談?wù)労蠖?,它基本上是Springboot稱霸全球,其IOC和AOP特性以及一系列設(shè)計模式使得開發(fā)變得簡單高效。

在這部分數(shù)據(jù)庫中,市面上比較流行的商業(yè)數(shù)據(jù)庫有甲骨文公司的oracle,微軟的sqlserver,開源的有postgresql,mysql,redis,sqlite等。

Web,tomcat,nginx等。是常用的。

如果服務(wù)器是硬件,要么是云服務(wù)器(阿里云或者騰訊云),要么是真正的硬件服務(wù)器。

最后,網(wǎng)站開發(fā),說簡單也簡單,就是三層結(jié)構(gòu),不好說。其中,高并發(fā)大數(shù)據(jù)的負載均衡是現(xiàn)在的熱點問題。如果想快速開發(fā),建議使用現(xiàn)有的開源平臺,快速高效,省時省力。

Java難學(xué)么?

,碰巧我以前寫過四本Java工程師的學(xué)習(xí)指南。讓 讓我們用前兩個問題的內(nèi)容來回答這個問題。我寫了一本Java工程師學(xué)習(xí)指南,分為四個部分。第一步,打好Java基礎(chǔ),掌握Java的核心技術(shù)。第二步,掌握Java 工程與技術(shù)公司簡介。;的學(xué)習(xí)指南。最近有很多朋友問我Java小白怎么入門,學(xué)習(xí)路線怎么安排,每一步怎么走。本來以為前面的文章可以解決大家 s的問題,其實不然,因為我之前寫的文章都是對Java后端整體情況的思考和總結(jié),忽略了很多小白的感受,很多朋友需要更基礎(chǔ)更詳細的學(xué)習(xí)路線。所以,今天我們重新開一個新話題,按照四篇文章(初級、初級、中級、高級)來講Java的學(xué)習(xí)路線。我也打算借此機會回憶一下自己學(xué)習(xí)Java的過程。今天,我們要談?wù)勑“资侨绾伍_始Java的。首先,文章內(nèi)容不會詳細到如何操作每一步,只會提供一個大概的思路。給你靈感。如果真的要一步一步的指導(dǎo)操作,至少需要一本書的厚度。本文介紹的方法可能并不適合所有人,如有錯誤請見諒。我們經(jīng)常跳過為準備工作設(shè)置開發(fā)環(huán)境這一步,但是因為這是針對小白的教程,所以讓 let’在這里提一下。首先,你需要一臺電腦,然后安裝JDK和JRE。JDK提供Java開發(fā)工具,也就是一些必要的jar包,而JRE是Java的運行環(huán)境組件,我們熟悉的JVM就在其中。安裝這兩樣?xùn)|西后,一般需要配置環(huán)境變量,否則可能會找不到某些目錄。選擇和安裝IDE是指本地開發(fā)編輯器。沒有它,你只能直接在記事本等工具中鍵入代碼。IDE最大的優(yōu)點就是集成了大量的工具和功能模塊,讓你非常輕松的完成開發(fā)。以前大家都用eclipse,但是eclipse已經(jīng)不流行了?,F(xiàn)在我推薦你直接用intellij idea作為你的第一個代碼編輯器。如果是用過eclips《Java編程思想》這樣的書。新手千萬不要看。我個人建議你只需要先看《Java入門到精通》這一類型的書,因為這部分的學(xué)習(xí)只是你后期學(xué)習(xí)的開始,以后可能還要回去重新學(xué)習(xí)這些內(nèi)容。目前市面上介紹Java基礎(chǔ)知識的書籍太多,質(zhì)量參差不齊,內(nèi)容同質(zhì)化嚴重。事實上,我還沒有 不要讀太多的書。這里 這是一個建議。你只需要選擇一兩本書來讀。這里有兩個最簡單的,《head first java》和《Java從入門到精通》。看博客這里推薦另一種學(xué)習(xí),就是看博客。相比書本,博客更適合學(xué)習(xí)某個技術(shù)點。你可以在網(wǎng)上很容易找到這個知識點相關(guān)的原理、實現(xiàn)方法和代碼示例。我的博客里沒有關(guān)于特殊基礎(chǔ)的內(nèi)容。如果看了一些基礎(chǔ)的文章,可以去Runoob等網(wǎng)站上查一下。如果你有明確的想學(xué)的知識點,相信搜索引擎會給你更好的答案。除此之外,一般的Java書籍或者視頻課程都會要求你相應(yīng)地完成一些練習(xí)。您需要使用IDE在您的計算機上完成這一部分。在IDE中,你可以熟悉Java語言的使用和基本代碼的實現(xiàn)。同時可以嘗試各種API,測試一些語言特性,比如繼承、封裝、多態(tài)等等。另外,這也是你熟悉IDE的一個好機會,因為IDE的各種功能在公司可能會用到開發(fā)。提前熟悉IDE是絕對有益無害的。03 Java入門:在Java入門階段,可能需要接觸以下知識。不管你用哪種方法學(xué)習(xí),這些內(nèi)容都是你能掌握的重點。;學(xué)習(xí)Java基礎(chǔ)知識時,不要繞來繞去。Java的基礎(chǔ)知識是你必須掌握的。在入門階段,你需要打好扎實的基礎(chǔ),這樣上一層樓就能學(xué)會《In》中的以下內(nèi)容。如何打牢基礎(chǔ)?最好的方法是在IDE上實現(xiàn)書中或視頻中的每個示例。當然,有時候你也可以自己寫一些有趣的例子。1基本數(shù)據(jù)類型,如int、double、char及其包裝類。熟悉基本數(shù)據(jù)類型的使用,了解每種類型占用的字節(jié)數(shù),以及它們與包裝類之間的轉(zhuǎn)換。2過程控制,如for循環(huán),IF else、while循環(huán)等。如果你是學(xué)過C語言的學(xué)生,可以跳過這一部分。3 String類型String是Java中一個重要的類型。它不是一種基本的數(shù)據(jù)類型,但很常用。熟悉并練習(xí)與string相關(guān)的api,開始你對string的學(xué)習(xí)。4數(shù)組的初始化方法有哪些?二維數(shù)組應(yīng)該怎么寫?我們應(yīng)該如何對待數(shù)組作為方法參數(shù)?5類和對象是Java中最重要的兩個概念:類和對象。它們的用途是什么?它們的區(qū)別和聯(lián)系是什么?請在您的代碼中實踐它們。對于Java核心技術(shù)這部分內(nèi)容,我相信很多白人只能理解其基本用法,但他們并不 不明白背后的一些原理:比如為什么接口和抽象類會有這些區(qū)別,多態(tài)的意義是什么,為什么會有反射。初學(xué)者在學(xué)習(xí)這部分的時候,只需要知道怎么用就可以了。當然,你 你最好實現(xiàn)所有這些功能來加深你的印象。至于為什么會有這些特征,這些特征背后的原理是什么,不是我們現(xiàn)在討論的,這個我們會在初級和中級的文章里講。因為,要理解這些原理,你得理解JVM,并發(fā)技術(shù)的基礎(chǔ),網(wǎng)絡(luò)的基礎(chǔ),甚至更多。很明顯,這不是你現(xiàn)在能做到的。1.為接口和抽象類寫一些接口,為實現(xiàn)這些接口寫一些實現(xiàn)類,搞清楚為什么我們需要接口,為什么子類需要在接口中實現(xiàn)方法。同樣,實現(xiàn)一些抽象類。然后,看它和界面有什么不同。2.封裝和多態(tài)如何理解繼承?子類和父類有什么聯(lián)系?封裝是保護代碼的一種。實現(xiàn)封裝有哪些方法?多態(tài)一般分為重載和重寫。分別是如何使用的?3異常處理Java中的異常處理主要用于捕捉和處理錯誤。請編寫一些try catch代碼塊來捕獲錯誤。第四類集合類集合類是我們經(jīng)常需要處理的東西,比如列表、地圖、集合等。趕緊熟悉一下API,然后寫一些測試實例。5 IO輸入流和輸出流IO輸入流和輸出流可以操作文件、網(wǎng)絡(luò)數(shù)據(jù)等。如何用Java代碼完成如此復(fù)雜的操作?事實上,只需要幾個簡單的API。6多線程為了以最合理的分配和調(diào)度系統(tǒng)資源,我們需要多線程。多線程會讓程序變得有趣,也會帶來很多問題。使用Thread和相關(guān)的API來嘗試這些有趣的東西??蛇x內(nèi)容:1反射(剛知道,入門不需要)2枚舉類型和泛型(剛知道,入門不需要)3網(wǎng)絡(luò)通信(剛知道基本的socket使用,需要網(wǎng)絡(luò)基礎(chǔ))4數(shù)據(jù)庫操作(剛知道基本的JDBC,需要數(shù)據(jù)庫基礎(chǔ))04總結(jié)總之,對于一個就Java而言,入門Java可以分為這幾個步驟:1。第一,搭建Java開發(fā)環(huán)境;2.通過Runoob等一些網(wǎng)站熟悉Java的基本語法;3.通過看書、看視頻熟悉Java的基礎(chǔ)知識;4.通過看書、看視頻,初步了解Java核心技術(shù);并通過代碼實踐加深理解。

本文主要是給大家提供一個學(xué)習(xí)思路,推薦一些學(xué)習(xí)方法。如果你能按照這些步驟,用一些適合自己的學(xué)習(xí)方法來完成學(xué)習(xí)計劃,相信你也能很好的完成《Java入門》。

更多信息請關(guān)注官方賬號【Java技術(shù)江湖】某阿里Java工程師的技術(shù)站。黃小謝,作者,重點講述Java相關(guān)技術(shù):SSM,SpringBoot,MySQL,分布式,中間件,集群,Linux,網(wǎng)絡(luò),多線程,偶爾也講講Docker,ELK。同時也分享技術(shù)干貨和學(xué)習(xí)經(jīng)驗,致力于Java全棧開發(fā)!(關(guān)注官方賬號后,回復(fù) "Java和,可以免費領(lǐng)取Java基礎(chǔ)、高級、項目、架構(gòu)師等學(xué)習(xí)資料,還有數(shù)據(jù)庫、分布式、微服務(wù)等熱門技術(shù)學(xué)習(xí)視頻,內(nèi)容豐富,兼顧原理與實踐。此外,你也將放棄作者 的原創(chuàng)Java學(xué)習(xí)指南,Java程序員面試指南等干貨資源。)最近有很多小伙伴問我Java怎么入門,學(xué)習(xí)路線怎么安排,每一步怎么走。本來以為前面的文章可以解決大家 s的問題,其實不然,因為我之前寫的文章都是對Java后端整體情況的思考和總結(jié),忽略了很多小白的感受,很多朋友需要更基礎(chǔ)更詳細的學(xué)習(xí)路線。所以,今天我們重新開一個新話題,按照四篇文章(初級、初級、中級、高級)來講Java的學(xué)習(xí)路線。我也打算借此機會回憶一下自己學(xué)習(xí)Java的過程。今天,我們要談?wù)勑“资侨绾伍_始Java的。首先,文章的內(nèi)容贏了 我不會詳細說明如何操作每一步,而只會為你的靈感提供一個大概的思路和方向。如果真的要一步一步的指導(dǎo)操作,至少需要一本書的厚度。本文介紹的方法可能并不適合所有人,如有錯誤請見諒。01 Java Web項目指南jav在上一篇文章中,我們談到了Java入門的幾個步驟,先設(shè)置好環(huán)境,然后熟悉基本語法,再熟悉Java的一些核心技術(shù),用代碼實現(xiàn)。如果你已經(jīng)完成了這部分的學(xué)習(xí),應(yīng)該感覺你已經(jīng)對Java有所了解了,可以很輕松的編寫一些Java代碼,比如多線程輸出數(shù)字。,如操作IO流等。當然,這些代碼通常只是演示。在實際項目中,我們可能不會如此簡單地使用這些技術(shù)。我們可以同時使用集合類、多線程和API來操作數(shù)據(jù)庫。所以,在今天 的初級文章,讓 讓我們談?wù)勅绾巫鲞@個項目。Java Web項目對于大多數(shù)Java新手來說,最適合他們?nèi)腴T的項目就是Java Web。因為Java天然適合Web應(yīng)用,而且它的生態(tài)很完善,所以有很多開源的工具和框架來支持這些應(yīng)用,比如Spring、Hibernate、SpringMVC等等。那么,如何開始一個Java Web項目呢?我個人認為最好的是看視頻。因為,看書的時候,很多內(nèi)容都是過時的,一般不提供源代碼。也有一些老板喜歡推薦開源項目(GitHub上的項目),但是對于小白來說,如果沒有完整的文檔來指導(dǎo),是沒有意義的。曾幾何時,Java Web項目還在用JSP Servlet開發(fā),后來出現(xiàn)了Struts2,然后是我們一直在用的SpringMVC。說實話,無論你使用哪個開發(fā)框架,你都需要先花些時間學(xué)習(xí)相關(guān)技術(shù),否則你會發(fā)現(xiàn)你不 不知道什么 即使你看了錄像,里面也在發(fā)生著什么。做好一個JavaWeb項目,不僅需要一門好的項目課程,還需要足夠的知識儲備。讓 讓我們看看這些內(nèi)容。我們上次講了Java知識儲備的基礎(chǔ)部分,所以我們贏了 這里就不重復(fù)了~讓 讓我們分別談?wù)勚R儲備的其他方面。推薦02前端知識資源:在w3cschool學(xué)習(xí)html、css、js,支持在線代碼測試。既然是Web,就不可避免的涉及到前端技術(shù)。但是,前端和后端分離是一種趨勢。所以,如果對前端不感興趣,沒必要花太多時間學(xué)習(xí)。對大多數(shù)學(xué)生來說,你 d最好了解html的基本標簽和格式,可以自己寫一些簡單的頁面。如果你有CSS,也可以和他們有一點點接觸。相比前兩種樣式服務(wù)技術(shù),我們更應(yīng)該學(xué)習(xí)JavaScript,一些基本語法和ajax的使用,因為ajax在前端和后端交互時非常重要。因此,要制作一個Java W《JavaWeb入門到精通》等網(wǎng)站的JavaWeb基礎(chǔ)課程,海量開放在線課程,極客學(xué)院等這是Java Web開發(fā)最原始的形式,現(xiàn)在很少直接使用,但是后來的框架其實都是建立在servlets上的。你需要知道這兩種技術(shù)是用來做什么的,你 你最好寫一些演示來練習(xí)。對于JSP來說,有時候你可能要學(xué)習(xí)jstl之類的標記語言,因為這些標記可以讓你更容易的將Java代碼插入到JSP中。Spring和SpringMVC推薦資源:《Spring實戰(zhàn)》、海量開放在線course.com、極客學(xué)院等網(wǎng)站的SpringMVC基礎(chǔ)課程。其實除了以上資源,你還可以直接在官網(wǎng)查看快速入門文檔。Struts2早就被時代拋棄了,春天現(xiàn)在是霸主。你需要知道如何使用Spring,如何使用SpringMVC,并學(xué)會在項目中使用。因為SpringBoot最近很流行,而且構(gòu)建方法比SpringMVC簡單,所以你也可以先學(xué)習(xí)SpringBoot,這樣可以更快的構(gòu)建你的第一個Java W《Sql必知必會》、Runoob上的mysql基礎(chǔ)教程、course.com海量開放在線、極客學(xué)院等網(wǎng)站的視頻課程等。JavaWeb應(yīng)用程序必須有數(shù)據(jù),所以我們需要使用數(shù)據(jù)庫。其實搭建一個Mysql數(shù)據(jù)庫很簡單,但是對于初學(xué)者來說最麻煩的就是寫sql。所以,先學(xué)會如何建表,熟悉SQL,對你會大有裨益。4 Hibernate和Mybatis的推薦資源:Runoob上的Hibernate和Mybatis基礎(chǔ)課程,massive open online course.com、極客學(xué)院等網(wǎng)站的視頻課程等當你學(xué)會使用sql查詢數(shù)據(jù)時,你在項目中方便地處理數(shù)據(jù)可能還不夠,因為我們還需要多一步,那就是把數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)換成Java中的對象。Orm框架就是為了解決這個問題。它可以使一個表與Java類一一對應(yīng),數(shù)據(jù)查詢非常方便。Hibernate和mybatis都是orm框架,但是現(xiàn)在Mybatis越來越流行了。因此,你需要了解這項技術(shù),因為它會被廣泛應(yīng)用于大多數(shù)Java Web項目中。5 Maven推薦資源:,馬在的教程course.com和極客學(xué)院等網(wǎng)站上的Ven教程、視頻課程等。我們剛剛講了Spring、orm框架、MySQL等技術(shù)。事實上,一個簡單的Java Web項目只需要這些東西。但是,有一個問題:當一個項目中用到這么多技術(shù)時,會有很多jar包。我們?nèi)绾喂芾磉@些jar包?如果直接導(dǎo)入需要的jar包,那么每次jar包更新或者需要更換的時候都要手動操作,非常麻煩。另外,jar包多的時候,項目打包后的war格式文件會很大,不利于傳輸。為了解決上述問題,maven應(yīng)運而生。Maven通過pom.xml文件指定所需的jar包,并且附帶了很多與構(gòu)建相關(guān)的功能,比如編譯、打包、運行單元測試等。,因為它本身就是一個構(gòu)建工具。當然,新手可能還是很難理解這些概念。你必須知道的是,大多數(shù)Java Web項目都需要用maven來管理。你需要學(xué)習(xí)maven的基本用法,最基本的用法是:學(xué)習(xí)修改pom.xml文件。6 Tomcat推薦資源:海量開放在線course.com、極客學(xué)院等網(wǎng)站的視頻課程。對小白來說,Tomcat相關(guān)的技術(shù)非常復(fù)雜。畢竟是應(yīng)用服務(wù)器。其實這個時候你只需要學(xué)會如何安裝Tomcat就可以了。畢竟它在項目中的作用是提供一個運行環(huán)境。正常情況下,只需要下載壓縮包就可以解壓Tomcat了。由于目前的IDE支持Tomcat的集成,一般來說,你可以在IDE中配置你的Tomcat路徑,然后設(shè)置你的項目路徑。IDE會自動將您的工程代碼部署到Tomcat服務(wù)器。如果想用IDE直接把項目部署到Tomcat上,也可以直接把項目編譯打包得到war格式的文件(這一步可以用maven完成),然后把war文件復(fù)制到Tomcat下的特定目錄下。以上兩種部署的詳細步驟,請去搜索引擎尋找答案。7 Git和GitHub推薦資源:廖雪峰Git教程、GitHub官網(wǎng)視頻課程、海量開放在線course.com、極客學(xué)院等網(wǎng)站。既然要做項目,為什么不在GitHub上發(fā)布。當您熟悉Git指令時,您可以方便地發(fā)布項目中的每個更新,并將其同步到GitHub。這樣不僅能讓你更好的管理項目版本,還能讓你的GitHub更活躍,為你以后的面試加分。所以,趕快學(xué)習(xí)Git指令,開始你的項目之旅吧。其他常用組件除了以上必備的技術(shù),有時候我們會在項目中用到其他的東西。這里我們稱之為組件。這里只是簡單介紹一下。至于怎么用,在網(wǎng)上很容易找到相關(guān)文章。1日志系統(tǒng)項目代碼多的時候,容易出錯。日志可以很好地記錄代碼運行的錯誤。常用的日志系統(tǒng)有l(wèi)og4j、logging等。另外,你還需要了解slf4j。單元測試日志系統(tǒng)可以記錄代碼問題,而單元測試是為了避免代碼錯誤。常用的單元測試組件是JUnit。建議你找個文檔看看,然后下載玩玩。3 JSONJSON逐漸成為前端數(shù)據(jù)交互的標準格式。為了使用JSON s API,您還需要導(dǎo)入它的jar包。一般我們會用阿里提供的fastjson。下載它,玩得開心。當然還有很多常用的Java Web組件,比如HTTPClient,一些加密工具,一些壓縮工具等等,所以我就不多說了 這里就不一一列舉了。那個 今天的總結(jié)到此結(jié)束。;的內(nèi)容。It 更像是a "項目文章 "而不是主要文章。因為學(xué)完基礎(chǔ)內(nèi)容后,做項目是最好的復(fù)習(xí)和練習(xí)。所以它 毫不奇怪,這篇文章圍繞著做項目。今天主要講的是做好一個JavaWeb項目需要哪些知識儲備和技術(shù),我也推薦一些優(yōu)秀的視頻課程。我后面還會寫一篇文章,具體講講項目怎么做,會更詳細,更側(cè)重于怎么做。敬請期待。今天總結(jié)以下幾點:1 Java基礎(chǔ)知識儲備2前端知識儲備3了解和使用JavaWeb常用技術(shù)4 Java Web常用組件介紹5視頻課程推薦俗話說,磨刀不誤砍柴工。相信看完這篇文章,你可以做更好的知識儲備,然后開始Java Web項目實踐。我希望你能成功完成你的第一個項目。在這個秋天 的招聘,作者成功地獲得了R ampampBAT頭條網(wǎng)易等大廠的D offer。在這期間,我總結(jié)了很多經(jīng)驗和技巧。我把它們寫成文字,做成專題,發(fā)布在官方賬號,希望更多有需要的朋友能看到。關(guān)注官方賬號【Java技術(shù)江湖】后,可以回復(fù) "信息與廣告在后臺接收3T優(yōu)秀學(xué)習(xí)資源(不斷更新,不只是Java)。學(xué)習(xí)資源包括基礎(chǔ)知識、實戰(zhàn)和求職等。我寫了一本Java工程師學(xué)習(xí)指南,分為四個部分。第一步,打好Java基礎(chǔ),掌握Java的核心技術(shù)。第二步,掌握Java Web技術(shù)棧,能夠做一些項目。第三步,掌握Java中的高級技術(shù),包括網(wǎng)絡(luò)編程、并發(fā)編程、JVM等。第四步,掌握后端先進技術(shù),如分布式、緩存、消息隊列等。按照這樣的思路,我想你得能掌握這里的大部分內(nèi)容,并有一些相應(yīng)的練習(xí),才能學(xué)好Java。當然,學(xué)好Java只是開始。要真正做好工作,做好項目,以及其他技術(shù)性的工作,是在學(xué)好Java的基礎(chǔ)上才會去延伸和擴展。接下來是具體文章。建議你按順序讀。It 有點長了。收藏的時候記得點贊或者評論。續(xù)杯!Java工程與應(yīng)用導(dǎo)論。;s學(xué)習(xí)指南最近有很多朋友問我Java小白怎么入門,學(xué)習(xí)路線怎么安排,每一步怎么走。本來以為前面的文章可以解決大家 s的問題,其實不然,因為我之前寫的文章都是對Java后端整體情況的思考和總結(jié),忽略了很多小白的感受,很多朋友需要更基礎(chǔ)更詳細的學(xué)習(xí)路線。所以,今天我們重新開一個新話題,按照四篇文章(初級、初級、中級、高級)來講Java的學(xué)習(xí)路線。我也打算借此機會回憶一下自己學(xué)習(xí)Java的過程。今天,我們要談?wù)勑“资侨绾伍_始Java的。首先,文章的內(nèi)容贏了 我不會詳細說明如何操作每一步,而只會為你的靈感提供一個大概的思路和方向。如果真的要一步一步的指導(dǎo)操作,至少需要一本書的厚度。本文介紹的方法可能并不適合所有人,如有錯誤請見諒。我們經(jīng)常跳過為準備工作設(shè)置開發(fā)環(huán)境這一步,但是因為這是針對小白的教程,所以讓 let’在這里提一下。首先,你需要一臺電腦,然后安裝JDK和JRE。JDK提供Java開發(fā)工具,也就是一些必要的jar包,而JRE是Java的運行環(huán)境組件,我們熟悉的JVM就在其中。安裝這兩樣?xùn)|西后,一般需要配置環(huán)境變量,否則可能會找不到某些目錄。選擇和安裝IDE是指本地開發(fā)編輯器。沒有它,你只能直接在記事本等工具中鍵入代碼。IDE最大的優(yōu)點就是集成了大量的工具和功能模塊,讓你非常輕松的完成開發(fā)。以前大家都用eclipse,但是eclipse已經(jīng)不流行了?,F(xiàn)在我推薦你直接用intellij idea作為你的第一個代碼編輯器。如果是用過eclipse的同學(xué),基本可以無痛切換。IntelliIdea可以直接從官網(wǎng)下載。試用版持續(xù)30天。如果你想永久使用,有一些方法可以在網(wǎng)上下載。至于jar包,什么是jar包,其實就是封裝了一堆類格式文件,Java里叫jar包。這些jar包可以在編譯器中直接識別出來,供開發(fā)人員使用。對于初學(xué)者,您可能只需要使用JDK附帶的一些API,但是但是如果要引用外部的jar包,可能會遇到一些困難。對于idea來說,導(dǎo)入外部jar包有兩種,一種是手動導(dǎo)入jar包,另一種是使用maven。后者將在Java Web相關(guān)文章中提及。事實上,它 手動導(dǎo)入jar包并不困難。你需要先下載jar包,然后選擇導(dǎo)入對應(yīng)項目下的jar包。具體方法這里就不展開了,因為網(wǎng)上可以查到。02學(xué)習(xí)Java基礎(chǔ)的幾種方法。了解基本語法。學(xué)習(xí)一門語言,首先要做的是學(xué)習(xí)它的語法。我第一次學(xué)習(xí)Java語法是在Runoob。這個網(wǎng)站可以讓你完成任何語言最快的語法介紹。當然,這只是相當于你瀏覽了一遍基礎(chǔ)語法。要真正掌握Java語言的基礎(chǔ),僅僅看基礎(chǔ)語法是遠遠不夠的。大三的時候第一次接觸Java課程,聽到老師講面向?qū)ο蟮娜筇攸c,我不知所措。我不能。;甚至不了解數(shù)組的初始化方法,但這些內(nèi)容都是我們需要掌握的。所以為了學(xué)好Java的基礎(chǔ),我們還需要看視頻或者看書來學(xué)習(xí)。想看視頻可以去極客學(xué)院或者海量開放在線course.com聽Java基礎(chǔ)課程,當然也可以看我分享的Java視頻課程。眾所周知,現(xiàn)在Java培訓(xùn)班很多,上學(xué)基本的東西都差不多,但是他們的一些課程還不錯。有渠道的話也可以看看??匆曨l的好處是可以更好的接收知識,同時也會耗費你更多的練習(xí),所以有時候可以選擇看書??磿臅r候,不建議小白看太復(fù)雜的書,比如《Java編程思想》這樣的書。新手千萬不要看。我個人建議你只需要先看《Java入門到精通》這一類型的書,因為這部分的學(xué)習(xí)只是你后期學(xué)習(xí)的開始,以后可能還要回去重新學(xué)習(xí)這些內(nèi)容。目前市面上介紹Java基礎(chǔ)知識的書籍太多,質(zhì)量參差不齊,內(nèi)容同質(zhì)化嚴重。事實上,我還沒有 不要讀太多的書。這里 這是一個建議。你只需要選擇一兩本書來讀。這里有兩個最簡單的,《head first java》和《Java從入門到精通》??床┛瓦@里推薦另一種學(xué)習(xí),就是看博客。相比書本,博客更適合學(xué)習(xí)某個技術(shù)點。你可以在網(wǎng)上很容易找到這個知識點相關(guān)的原理、實現(xiàn)方法和代碼示例。我的博客里沒有關(guān)于特殊基礎(chǔ)的內(nèi)容。如果看了一些基礎(chǔ)的文章,可以去Runoob等網(wǎng)站上查一下。如果你有明確的想學(xué)的知識點,相信搜索引擎會給你更好的答案。除了代碼練習(xí),一般的Java書籍或者視頻課程都會要求你相應(yīng)的完成一些練習(xí),這些都是你需要的。用IDE在電腦里自己做。在IDE中,你可以熟悉Java語言的使用和基本代碼的實現(xiàn)。同時可以嘗試各種API,測試一些語言特性,比如繼承、封裝、多態(tài)等等。另外,這也是你熟悉IDE的一個好機會,因為IDE的各種功能在公司可能會用到開發(fā)。提前熟悉IDE是絕對有益無害的。03 Java入門:在Java入門階段,可能需要接觸以下知識。不管你用哪種方法學(xué)習(xí),這些內(nèi)容都是你能掌握的重點。;學(xué)習(xí)Java基礎(chǔ)知識時,不要繞來繞去。Java的基礎(chǔ)知識是你必須掌握的。在入門階段,你需要打好扎實的基礎(chǔ),這樣上一層樓就能學(xué)會《In》中的以下內(nèi)容。如何打牢基礎(chǔ)?最好的方法是在IDE上實現(xiàn)書中或視頻中的每個示例。當然,有時候你也可以自己寫一些有趣的例子。1基本數(shù)據(jù)類型,如int、double、char及其包裝類。熟悉基本數(shù)據(jù)類型的使用,了解每種類型占用的字節(jié)數(shù),以及它們與包裝類之間的轉(zhuǎn)換。2過程控制,如for循環(huán)、if else、while循環(huán)等。如果你是學(xué)過C語言的學(xué)生,可以跳過這一部分。3 String類型String是Java中一個重要的類型。它不是一種基本的數(shù)據(jù)類型,但很常用。熟悉并練習(xí)與string相關(guān)的api,開始你對string的學(xué)習(xí)。4數(shù)組的初始化方法有哪些?二維數(shù)組應(yīng)該怎么寫?我們應(yīng)該如何對待數(shù)組作為方法參數(shù)?5類和對象是Java中最重要的兩個概念:類和對象。它們的用途是什么?它們的區(qū)別和聯(lián)系是什么?請在您的代碼中實踐它們。對于Java核心技術(shù)這部分內(nèi)容,我相信很多白人只能理解其基本用法,但他們并不 不明白背后的一些原理:比如為什么接口和抽象類會有這些區(qū)別,多態(tài)的意義是什么,為什么會有反射。初學(xué)者在學(xué)習(xí)這部分的時候,只需要知道怎么用就可以了。當然,你 你最好實現(xiàn)所有這些功能來加深你的印象。至于為什么會有這些特征,這些特征背后的原理是什么,不是我們現(xiàn)在討論的,這個我們會在初級和中級的文章里講。因為,要理解這些原理,你得理解JVM,并發(fā)技術(shù)的基礎(chǔ),網(wǎng)絡(luò)的基礎(chǔ),甚至更多。很明顯,這不是你現(xiàn)在能做到的。1.為接口和抽象類寫一些接口,為實現(xiàn)這些接口寫一些實現(xiàn)類,搞清楚為什么我們需要接口,為什么子類需要在接口中實現(xiàn)方法。同樣,實現(xiàn)一些抽象類。然后,看它和界面有什么不同。2.封裝和多態(tài)如何理解繼承?子類和父類有什么聯(lián)系?封裝是保護代碼的一種。實現(xiàn)封裝有哪些方法?多態(tài)一般分為重載和重寫。分別是如何使用的?3異常處理Java中的異常處理主要用于捕捉和處理錯誤。請編寫一些try catch代碼塊來捕獲錯誤。第四類集合類集合類是我們經(jīng)常需要處理的東西,比如列表、地圖、集合等。趕緊熟悉一下API,然后寫一些測試實例。5 IO輸入流和輸出流IO輸入流和輸出流可以操作文件、網(wǎng)絡(luò)數(shù)據(jù)等。如何用Java代碼完成如此復(fù)雜的操作?事實上,只需要幾個簡單的API。6多線程為了以最合理的分配和調(diào)度系統(tǒng)資源,我們需要多線程。多線程會讓程序變得有趣,也會帶來很多問題。使用Thread和相關(guān)的API來嘗試這些有趣的東西??蛇x內(nèi)容:1反思(剛知道,入門沒必要)2枚舉類型和泛型(剛知道,入門沒必要)3網(wǎng)絡(luò)通訊(剛知道基本的socket使用,需要網(wǎng)絡(luò)基礎(chǔ))4數(shù)據(jù)庫操作(剛知道基本的JDBC,需要數(shù)據(jù)庫基礎(chǔ))04總結(jié)總之,對于一個Java小白來說,Java入門可以分為這幾個步驟:1 .第一,搭建Java開發(fā)環(huán)境;2.通過Runoob等一些網(wǎng)站熟悉Java的基本語法;3.通過看書、看視頻熟悉Java的基礎(chǔ)知識;4.通過看書、看視頻,初步了解Java核心技術(shù);并通過代碼實踐得到更深入的理解。本文主要是給大家提供一個學(xué)習(xí)思路,推薦一些學(xué)習(xí)方法。如果你能按照這些步驟,用一些適合自己的學(xué)習(xí)方法來完成學(xué)習(xí)計劃,相信你也能很好的完成《Java入門》。最近有很多朋友問我Java怎么入門,學(xué)習(xí)路線怎么安排,每一步怎么走。本來以為前面的文章可以解決大家 s的問題,其實不然,因為我之前寫的文章都是對Java后端整體情況的思考和總結(jié),忽略了很多白人的感受,很多朋友需要更基礎(chǔ)更詳細的學(xué)習(xí)路線。所以,今天我們重新開一個新話題,按照四篇文章(初級、初級、中級、高級)來講Java的學(xué)習(xí)路線。我也打算借此機會回憶一下自己學(xué)習(xí)Java的過程。今天,我們要談?wù)勑“资侨绾伍_始Java的。首先,文章的內(nèi)容贏了 我不會詳細說明如何操作每一步,而只會為你的靈感提供一個大概的思路和方向。如果真的要一步一步的指導(dǎo)操作,至少需要一本書的厚度。這篇文章描述了方法不一定適合所有人,如有錯誤請諒解。01 Java Web項目指南jav在上一篇文章中,我們談到了Java入門的幾個步驟,先設(shè)置好環(huán)境,然后熟悉基本語法,再熟悉Java的一些核心技術(shù),用代碼實現(xiàn)。如果你已經(jīng)完成了這部分的學(xué)習(xí),應(yīng)該感覺你已經(jīng)對Java有所了解,可以很輕松的編寫一些Java代碼,比如多線程輸出數(shù)字,操作IO流等等。當然,這些代碼通常只是演示。在實際項目中,我們可能不會如此簡單地使用這些技術(shù)。我們可以同時使用集合類、多線程和API來操作數(shù)據(jù)庫。所以,在今天 的初級文章,讓 讓我們談?wù)勅绾巫鲞@個項目。Java Web項目對于大多數(shù)Java新手來說,最適合他們?nèi)腴T的項目就是Java Web。因為Java天然適合Web應(yīng)用,而且它的生態(tài)很完善,所以有很多開源的工具和框架來支持這些應(yīng)用,比如Spring、Hibernate、SpringMVC等等。那么,如何開始一個Java Web項目呢?我個人認為最好的是看視頻。因為,看書的時候,很多內(nèi)容都是過時的,一般不提供源代碼。也有一些老板喜歡推薦開源項目(GitHub上的項目),但是對于小白來說,如果沒有完整的文檔來指導(dǎo),是沒有意義的。曾幾何時,Java Web項目還在用JSP Servlet開發(fā),后來出現(xiàn)了Struts2,然后是我們一直在用的SpringMVC。說實話,無論你使用哪個開發(fā)框架,你都需要先花些時間學(xué)習(xí)相關(guān)技術(shù),否則你會發(fā)現(xiàn)你不 不知道什么 即使你看了錄像,里面也在發(fā)生著什么。做好一個JavaWeb項目,不僅需要一門好的項目課程,還需要足夠的知識儲備。讓 讓我們看看這些內(nèi)容。我們上次講了Java知識儲備的基礎(chǔ)部分,所以我們贏了 這里就不重復(fù)了~讓 讓我們分別談?wù)勚R儲備的其他方面。推薦02前端知識資源:在w3cschool學(xué)習(xí)html、css、js,支持在線代碼測試。既然是Web,就不可避免的涉及到前端技術(shù)。但是,前端和后端分離是一種趨勢。所以,如果你對前端不感興趣,沒必要花太多時間學(xué)習(xí)。對大多數(shù)學(xué)生來說,你 d最好了解html的基本標簽和格式,可以自己寫一些簡單的頁面。如果你有CSS,也可以和他們有一點點接觸。相對于服務(wù)于風(fēng)格的前兩種技術(shù),我們應(yīng)該學(xué)習(xí)JavaScript,了解一些基本的語法,這樣才能以及ajax的使用,因為ajax在前端交互中非常重要。因此,要制作一個Java W《JavaWeb入門到精通》等網(wǎng)站的JavaWeb基礎(chǔ)課程,海量開放在線課程,極客學(xué)院等這是Java Web開發(fā)最原始的形式,現(xiàn)在很少直接使用,但是后來的框架其實都是建立在servlets上的。你需要知道這兩種技術(shù)是用來做什么的,你 你最好寫一些演示來練習(xí)。對于JSP來說,有時候你可能要學(xué)習(xí)jstl之類的標記語言,因為這些標記可以讓你更容易的將Java代碼插入到JSP中。Spring和SpringMVC推薦資源:《Spring實戰(zhàn)》、海量開放在線course.com、極客學(xué)院等網(wǎng)站的SpringMVC基礎(chǔ)課程。其實除了以上資源,你還可以直接在官網(wǎng)查看快速入門文檔。Struts2早就被時代拋棄了,春天現(xiàn)在是霸主。你需要知道如何使用Spring,如何使用SpringMVC,并學(xué)會在項目中使用。因為SpringBoot最近很流行,而且構(gòu)建方法比SpringMVC簡單,所以你也可以先學(xué)習(xí)SpringBoot,這樣可以更快的構(gòu)建你的第一個Java W《Sql必知必會》、Runoob上的mysql基礎(chǔ)教程、course.com海量開放在線、極客學(xué)院等網(wǎng)站的視頻課程等。JavaWeb應(yīng)用程序必須有數(shù)據(jù),所以我們需要使用數(shù)據(jù)庫。其實搭建一個Mysql數(shù)據(jù)庫很簡單,但是對于初學(xué)者來說最麻煩的就是寫sql。所以,先學(xué)會如何建表,熟悉SQL,對你會大有裨益。4 Hibernate和Mybatis的推薦資源:Runoob上的Hibernate和Mybatis基礎(chǔ)課程,massive open online course.com、極客學(xué)院等網(wǎng)站的視頻課程等當你學(xué)會使用sql查詢數(shù)據(jù)的時候,你在項目中方便的處理數(shù)據(jù)可能還不夠,因為我們還需要多一步,就是把數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)換成Jav。Orm框架的目標就是解決這個問題。它可以使一個表與Java類一一對應(yīng),數(shù)據(jù)查詢非常方便。Hib《maven實戰(zhàn)》、白一教程中的maven教程、海量開放在線course.com、極客學(xué)院等網(wǎng)站的視頻課程等剛才我們已經(jīng)講了Spring,orm框架,MySQL等技術(shù)。事實上,一個簡單的Java Web項目只需要這些東西。但是,有一個問題:當一個項目中用到這么多技術(shù)時,會有很多jar包。我們?nèi)绾喂芾磉@些jar包?如果直接導(dǎo)入需要的jar包,那么每次jar包更新或者需要更換的時候都要手動操作,非常麻煩。另外,jar包多的時候,項目打包后的war格式文件會很大,不利于傳輸。為了解決上述問題,maven應(yīng)運而生。Maven通過pom.xml文件指定所需的jar包,并且附帶了很多與構(gòu)建相關(guān)的功能,比如編譯、打包、運行單元測試等。,因為它本身就是一個構(gòu)建工具。當然,新手可能還是很難理解這些概念。你必須知道的是,大多數(shù)Java Web項目都需要用maven來管理。你需要學(xué)習(xí)maven的基本用法,最基本的用法是:學(xué)習(xí)修改pom.xml文件。6 Tomcat推薦資源:海量開放在線course.com、極客學(xué)院等網(wǎng)站的視頻課程。對小白來說,Tomcat相關(guān)的技術(shù)非常復(fù)雜。畢竟是應(yīng)用服務(wù)器。其實這個時候你只需要學(xué)會如何安裝Tomcat就可以了。畢竟它在項目中的作用是提供一個運行環(huán)境。正常情況下,只需要下載壓縮包就可以解壓Tomcat了。由于目前的IDE支持Tomcat的集成,一般來說,你可以在IDE中配置你的Tomcat路徑,然后設(shè)置你的項目路徑。IDE會自動將您的工程代碼部署到Tomcat服務(wù)器。如果想用IDE直接把項目部署到Tomcat上,也可以直接把項目編譯打包得到war格式的文件(這一步可以用maven完成),然后把war文件復(fù)制到Tomcat下的特定目錄下。以上兩種部署的詳細步驟,請去搜索引擎尋找答案。7 Git和GitHub推薦資源:廖雪峰Git教程、GitHub官網(wǎng)視頻課程、海量開放在線course.com、極客學(xué)院等網(wǎng)站。既然你想做一個項目,為什么不做?;你不在吉斯發(fā)表嗎?去吧,ub。當您熟悉Git指令時,您可以方便地發(fā)布項目中的每個更新,并將其同步到GitHub。這樣不僅能讓你更好的管理項目版本,還能讓你的GitHub更活躍,為你以后的面試加分。所以,趕快學(xué)習(xí)Git指令,開始你的項目之旅吧。其他常用組件除了以上必備的技術(shù),有時候我們會在項目中用到其他的東西。這里我們稱之為組件。這里只是簡單介紹一下。至于怎么用,在網(wǎng)上很容易找到相關(guān)文章。1日志系統(tǒng)項目代碼多的時候,容易出錯。日志可以很好地記錄代碼運行的錯誤。常用的日志系統(tǒng)有l(wèi)og4j、logging等。另外,你還需要了解slf4j。單元測試日志系統(tǒng)可以記錄代碼問題,而單元測試是為了避免代碼錯誤。常用的單元測試組件是JUnit。建議你找個文檔看看,然后下載玩玩。3 JSONJSON逐漸成為前端數(shù)據(jù)交互的標準格式。為了使用JSON s API,您還需要導(dǎo)入它的jar包。一般我們會用阿里提供的fastjson。下載它,玩得開心。當然還有很多常用的Java Web組件,比如HTTPClient,一些加密工具,一些壓縮工具等等,所以我就不多說了 這里就不一一列舉了。那個 今天的總結(jié)到此結(jié)束。;的內(nèi)容。It 更像是a "項目文章 "而不是主要文章。因為學(xué)完基礎(chǔ)內(nèi)容后,做項目是最好的復(fù)習(xí)和練習(xí)。所以它 毫不奇怪,這篇文章圍繞著做項目。今天主要講的是做好一個JavaWeb項目需要哪些知識儲備和技術(shù),我也推薦一些優(yōu)秀的視頻課程。我后面還會寫一篇文章,具體講講項目怎么做,會更詳細,更側(cè)重于怎么做。敬請期待。今天總結(jié)以下幾點:1 Java基礎(chǔ)知識儲備2前端知識儲備3了解和使用JavaWeb常用技術(shù)4 Java Web常用組件介紹5視頻課程推薦俗話說,磨刀不誤砍柴工。相信看完這篇文章,你可以做更好的知識儲備,然后開始Java Web項目實踐。我希望你能成功完成你的第一個項目。最近有很多朋友問我Java怎么入門,學(xué)習(xí)路線怎么安排,每一步怎么走。本來以為前面的文章可以解決大家 s的問題,其實不是,因為我寫的文章都是在Java后端整體情況上的思考和總結(jié),忽略了很多白人的感受,很多朋友需要更基礎(chǔ)。更詳細的學(xué)習(xí)路線。所以,今天我們重新開一個新話題,分四部分分別講述Java的學(xué)習(xí)路線。我也打算借此機會回憶一下自己學(xué)習(xí)Java的過程。今天我們要講的是第三部分,Java工程師學(xué)習(xí)指南(中級)。首先,文章贏了 我不會詳細說明如何操作每一步,而只會為你的靈感提供大致的思路和方向。如果真的要一步一步的指導(dǎo)操作,至少需要一本書的厚度。當然,本文提到的大部分內(nèi)容都可以在我的博客里找到。所以歡迎大家來我的博客找你需要的資源。本文的方法不一定適合所有人,如有錯誤請諒解。上一篇文章主要討論了如何做一個Java Web項目,前期需要哪些方面的基礎(chǔ)。最后,我也推薦幾個不錯的視頻課程,供大家參考。當然,用視頻課程完成一個項目后,你只是跟著瓢,再練一遍。也許這里面有很多你不知道的東西。;我不太明白。比如你可能不知道為什么代碼要分層,為什么要用maven進行在線編譯,為什么Tomcat啟動的時候會輸出那么多日志。It 有疑問是正常的,因為在一個Java W《數(shù)據(jù)結(jié)構(gòu)與算法(Java語言描述)》。通過看書,結(jié)合代碼實踐,寫出基本的數(shù)據(jù)結(jié)構(gòu)算法就可以了。操作系統(tǒng):I 我讀了很多關(guān)于操作系統(tǒng)的書,但是我不喜歡。;我對它的感覺不是特別好,所以如果我有時間,我可以讀另一本書,《深入理解計算機系統(tǒng)》,它講述了許多計算機的基本概念,不僅限于操作系統(tǒng)。那你可以看看唐寫的《《操作系統(tǒng)》》,或者你們學(xué)校的教材。電腦:網(wǎng)上也有很多書。我推薦讀《計算機網(wǎng)絡(luò):自頂向下方法》,還有一本《TCP/IP 詳解:卷一》的書,也很受推崇。此外,我還想推薦劉鑫先生的《《碼農(nóng)翻身》》,這本書用一些有趣的故事解釋了操作系統(tǒng)和計算網(wǎng)絡(luò)的一些復(fù)雜概念,有助于你理解這一部分。00JVM虛擬機為什么JVM虛擬機要把JVM放在第一位,因為它是最基礎(chǔ)最重要的一塊內(nèi)容。所有Java代碼都在JVM上運行。事實上,JVM只是操作系統(tǒng)中的一個進程。為了理解Java代碼是如何運行的,底層引擎的執(zhí)行原理,內(nèi)存的分配,我們必須學(xué)習(xí)JVM虛擬機。推薦資源:《深入理解JVM虛擬機》很高興地告訴你,學(xué)習(xí)JVM只需要通讀這本書。當然,讀一遍是不夠的。我前后至少看了三遍。如果可能的話,最好能把書中的例子都通讀一遍。另外,JVM也是面試的必考部分,所以要相應(yīng)準備一些面試問題。如果你已經(jīng)掌握了這本書的內(nèi)容,我相信你贏了。;不要害怕任何JVM面試問題。03設(shè)計模式與源代碼閱讀設(shè)計模式為什么在這里提到設(shè)計模式?因為設(shè)計模式是Java編程規(guī)范的經(jīng)典總結(jié),并且經(jīng)常在JDK源代碼中使用,正如我們稍后將談到的JDK源代碼的學(xué)習(xí)一樣,我們建議您首先學(xué)習(xí)設(shè)計模式。最好的學(xué)習(xí)方法是結(jié)合閱讀和實踐,自己體會一些常見的設(shè)計模式。推薦資源:《head first 設(shè)計模式》JDK源代碼(主要指聚合源代碼)。下一個參賽者是:JDK源代碼。但是對于大多數(shù)人來說,只要能掌握集合類,字符串的源代碼就夠了,其他部分的源代碼主要集中在JUC和簽約,這些內(nèi)容會放到Java并發(fā)技術(shù)中。為什么我們需要掌握集合類的源代碼?第一,我們喜歡面試考試;第二,因為集合類的源代碼比較經(jīng)典,難度不算太大,而且使用了很多優(yōu)化方法,所以知道它對學(xué)習(xí)Java的同學(xué)大有裨益。推薦資源市面上沒有專門介紹JDK源代碼的書,所以這部分的學(xué)習(xí)資源主要是兩部分,一是JDK源代碼本身,而是一些技術(shù)博客。1對于JDK的源代碼,可能很難直接閱讀。不建議新手這么做。解釋源代碼的文章質(zhì)量參差不齊,所以我只推薦幾個我比較熟悉的,一個是importn《你不可錯過的Java學(xué)習(xí)資源》,也推薦了很多大牛和博客。你也可以去看看。說實話,Spring源代碼的復(fù)雜度遠高于collection類,這也是因為Spring使用了很多設(shè)計模式,有非常復(fù)雜的類關(guān)系。因此,我不。;t不建議你直接看Spring源碼,因為就算是看Spring源碼分析的書也會讓你覺得很辛苦。所以,我推薦的是看一些好的源代碼分析文章。另外,我想告訴你,Spring的源代碼有很多,并不是所有的都需要你去掌握。我們都知道Spring最常用的特性是IOC和AOP,所以在看源代碼分析的時候,這兩部分是最重要的。另外,看了Spring的源代碼分析,don 別忘了閱讀SpringMVC的源代碼分析。學(xué)習(xí)方法是一樣的,找重點內(nèi)容就行了。推薦資源:《Spring源碼深度》,我的博客專欄04 Java并發(fā)技術(shù)Java并發(fā)技術(shù)相信你已經(jīng)花了很大力氣去獲取聚合源代碼和Spring源代碼,然后it 輪到Java并發(fā)技術(shù)了。其實我們在入門章節(jié)已經(jīng)講了多線程,只是停留在使用Thread或者Runnable實現(xiàn)簡單的多線程演示。其實要了解Java并發(fā)技術(shù)的底層實現(xiàn),我們還需要了解JMM模型,了解synchronized和volatile的底層實現(xiàn),同時了解Java中多線程和操作系統(tǒng)中多線程的聯(lián)系和區(qū)別。除此之外,我們常說的線程安全,以及如何實現(xiàn),也是這一部分的重點。學(xué)習(xí)并發(fā)技術(shù),我建議三步走:1。先熟悉Java多線程的基礎(chǔ)知識,比如線程的使用,線程的狀態(tài)轉(zhuǎn)換,一些API的使用。2了解一些理論基礎(chǔ),如JMM,操作系統(tǒng)的多線程實現(xiàn)。這部分建議通過看書和看博客來學(xué)習(xí)。3了解并使用JUC的一些API,然后開始看JUC的一些源代碼。這個階段是最重要的,也是最困難的。推薦資源:書籍:《Java并發(fā)編程藝術(shù)》,《Java并發(fā)編程實戰(zhàn)》網(wǎng)站:我的博客專欄,并發(fā)編程網(wǎng),importn《你不可錯過的Java學(xué)習(xí)資源》05 Java網(wǎng)絡(luò)編程了解Java并發(fā)編程技術(shù)后,相信這部分對你來說不會很難。當然前提是你有一定的計算機網(wǎng)絡(luò)知識,因為網(wǎng)絡(luò)編程涉及到TCP和HTTP相關(guān)的知識點。學(xué)習(xí)這部分的時候,首先要了解socket的使用和原理,然后學(xué)習(xí)NIO的相關(guān)API,多寫一些客戶端與服務(wù)器通信的demo,這樣才能熟悉這些內(nèi)容。為了更好地理解網(wǎng)絡(luò)編程,還需要了解UNIX網(wǎng)絡(luò)編程模型。除此之外,如果想更好的理解Java網(wǎng)絡(luò)編程,還需要了解Tomcat的實現(xiàn)原理。同時,N《Java網(wǎng)絡(luò)編程》,《你不可錯過的Java學(xué)習(xí)資源》05 Java8Java版本一直在更新,但目前主要使用Java8和Java7,這部分可能過幾年就過時了。但目前看來,學(xué)習(xí)和理解Java8還是很重要的。畢竟面試也和考試一樣。學(xué)習(xí)這部分內(nèi)容最好的方法就是閱讀文章代碼,練習(xí)推薦資源:echo 35-@ . com 06 Summary Today amp;;s的內(nèi)容好像有點多,會不會有點不知所措?它不 沒關(guān)系,因為這部分真的要花很多時間去學(xué)。對于一個在校的Java學(xué)習(xí)者來說,可能接觸不到這么高大上的項目,所以修煉內(nèi)功尤為重要??磿瑢慸emo,看源代碼,看似簡單的事情,其實要耗費大量的時間和精力。這個過程需要你靜下心來,慢慢安定下來。在學(xué)習(xí)的過程中,你也可以像作者一樣寫一些總結(jié)和博客,以便更好的回顧自己的學(xué)習(xí)過程。讓 s今天總結(jié)以下內(nèi)容:1計算機基礎(chǔ)課程:數(shù)據(jù)結(jié)構(gòu)、網(wǎng)絡(luò)和操作系統(tǒng)2 JVM基本原理3設(shè)計模式、JDK源代碼、Spring源代碼4 Java并發(fā)技術(shù)、JUC源代碼5 Java網(wǎng)絡(luò)編程6 Java8如果您對以上內(nèi)容還有疑問或一些建議,也可以和我交流。關(guān)注官方賬號后,回復(fù) "少俠 "后臺。歡迎調(diào)侃。在Java工程師 s學(xué)習(xí)指南,需要說明的是,文章不會深入到如何操作每一步的細節(jié),只會為你的靈感提供大概的思路和方向。如果真的要一步一步的指導(dǎo)操作,至少需要一本書的厚度。由于作者只是在校學(xué)生,所寫內(nèi)容主要針對Java初學(xué)者或長期接觸Java后端的朋友,對于工作多年的Java大佬并不適用。所以,本文的方法不一定適合所有人。如有錯誤,敬請諒解。本期是系列文章的最后一部分。這個系列可能還有很多東西沒有說清楚,很多內(nèi)容被忽略了。不過這些內(nèi)容真的是作者根據(jù)自己的經(jīng)驗總結(jié)出來的。希望能對大家有用。當然,如果有什么建議,可以隨時和作者交流。回顧上一期,我們重點討論了Java工程師為了進階需要掌握的一些技術(shù)內(nèi)容。尤其是對于即將到來的校招。同學(xué)們,最重要的是這部分。你需要了解JVM虛擬機和Java并發(fā)的原理,熟悉JDK的一些源代碼,了解這些API的底層實現(xiàn)。我把這一部分放在Java Web項目之后的原因是我不知道 t認為你在項目開始的時候已經(jīng)可以掌握以上內(nèi)容了,可以帶著問題做項目,花時間學(xué)習(xí)底層原理,這樣結(jié)合之前練習(xí)過的代碼就可以很好的理解那些底層技術(shù)。主題本期主要介紹一些 "高端 "Java后端技術(shù)的內(nèi)容,也就是我們常說的分布式、架構(gòu)、緩存、消息隊列等內(nèi)容。此外,我們還會介紹一些大的后端相關(guān)技術(shù),比如云計算(OpenStack和dock《深入分析Java Web技術(shù)內(nèi)幕》》和《《大型網(wǎng)站技術(shù)架構(gòu)》》都是阿里出版的書,兩人都是淘寶系的技術(shù)大牛。前一本書主要講Java W《從Paxos到zookeeper分布式一致性原理與實踐》,我的技術(shù)博客分布式系統(tǒng)理論與實踐;"是一本普及分布式系統(tǒng)基礎(chǔ)知識,介紹zookeeper原理和使用方法的書。理解zookeeper是理解分布式技術(shù)的重要部分。1 CAP和BASE講分布的時候要講CAP,一致性,高可用,為什么網(wǎng)絡(luò)分區(qū)的容忍度只能從三個選擇中選擇,為什么必須考慮網(wǎng)絡(luò)分區(qū)的容忍度。加拿大P在實際應(yīng)用中真的可靠嗎?BASE出現(xiàn)的原因,為什么BASE更容易實現(xiàn),更適合實際應(yīng)用,有哪些技術(shù)可以用來實現(xiàn)BASE?2一致性協(xié)議和算法一致性協(xié)議也是分布式理論的一個重點。2PC和3PC指的是什么,它們的問題是什么?3PC解決了2PC的一個問題,但還是不完美。Paxos和Raft是兩種一致性算法,顯然前者比后者復(fù)雜得多,但Raft可能更實用。為什么我們需要一致性算法,它們的用途是什么?3分布式事務(wù)和最終一致分布式事務(wù)是復(fù)雜的概念,主要指分布式系統(tǒng)中需要強一致場景時使用的事務(wù)。而理解和認識它并不是一件簡單的事情。如果我們選擇最終一致性而不是強一致性,我們可以使用更靈活的方案,比如事務(wù)消息。分布式技術(shù)常用推薦資源:《從Paxos到zookeeper分布式一致性原理與實踐》、我的技術(shù)博客專欄 "分布式系統(tǒng)理論與實踐《分布式服務(wù)框架原理與實踐》 《深入理解Spring Cloud與微服務(wù)構(gòu)建》。1 zookeeper如上所述,zookeeper是分布式技術(shù)的重要組成部分。這是因為zookeeper用于管理和協(xié)調(diào)分布式組件。雖然來自hadoop生態(tài)系統(tǒng),但是在很多應(yīng)用中都有使用?;旧嫌蟹植嫉牡胤骄陀衵k。簡單來說,zk可以提供全球統(tǒng)一的節(jié)點樹結(jié)構(gòu),通過節(jié)點來管理資源。同時zk本身是以集群部署的,所以保證了高可用。根據(jù)這一特點,可以作為服務(wù)注冊中心,還可以實現(xiàn)分布式鎖等功能。2分布式服務(wù)分布式服務(wù)是一個很有趣的東西,也很常用。簡單來說,就是將服務(wù)組件部署在不同的節(jié)點上,通過rpc進行訪問。為了實現(xiàn)這個功能,我們需要考慮通信協(xié)議和序列化方法。此外,我們需要知道如何注冊和發(fā)現(xiàn)服務(wù),以及如何限制電流,融合和降級服務(wù),等等。常見的分布式服務(wù)框架包括dubbo和Spring Cloud等產(chǎn)品。相信學(xué)習(xí)如何使用它們,然后理解它們的底層實現(xiàn)原理,會是一個非常有趣的過程。3負載均衡關(guān)于負載均衡,其實很簡單,就是將一組請求分成多組,按照一定的規(guī)則分布到多臺服務(wù)器上。但是負載均衡也涉及到很多內(nèi)容,包括負載均衡的算法和實現(xiàn)。我們需要知道它是在哪一層實現(xiàn)的。一般來說,常用的負載均衡方法有nginx和lvs兩種,分別是7層和4層負載均衡,一種是基于域名的,一種是基于端口號的。了解它們是如何實現(xiàn)的,有助于你更好地理解這一部分。4分布式會話n和分布式鎖也是分布式項目中常用的。理解它們的使用和實現(xiàn)原理有助于將來在項目中的實踐。一般來說,分布式會話有多種實現(xiàn),可以存儲在數(shù)據(jù)庫或緩存中,也可以單獨部署為服務(wù)??傊钪匾氖切阅芎?,可用性高。分布式鎖用于一些需要一致性的場景,比如訂單生成的全局唯一功能。分布式鎖通常可以通過緩存或者數(shù)據(jù)庫來實現(xiàn),但是為了保證高性能和避免死鎖,我們通常使用R《Redis設(shè)計與實現(xiàn)》這里,我們主要介紹三個部分,我個人認為比較重要。1數(shù)據(jù)結(jié)構(gòu)與底層實現(xiàn)Redis數(shù)據(jù)結(jié)構(gòu)豐富,但更有趣的是這些數(shù)據(jù)結(jié)構(gòu)背后的底層實現(xiàn),即作者是如何用C語言實現(xiàn)這些結(jié)構(gòu)的。會有熟悉的數(shù)組,鏈表,還有一些有趣的結(jié)構(gòu)比如跳轉(zhuǎn)表,哈希表。2持久化方法持久化方法有兩種,aof和rdb。前者基于附加日志,而后者基于備份數(shù)據(jù)。3分布式方案這是Redis最有趣也是最復(fù)雜的部分。首先,Redis可以以主從模式部署,其中 "哨兵 "組件用于故障轉(zhuǎn)移?;赟entinel的主從部署后來發(fā)展為Redis集群部署模式,即Redis集群。Redis集群采用分片部署,集群中的任何節(jié)點都可以用來對外提供服務(wù)。當然,除了Redis集群,還有codis的分布式方案,通過代理實現(xiàn)。表面上,它仍然使用原來的Redis API,但它實際問的是一個Redis集群。05消息隊列一般來說,消息隊列的作用是削峰、流控和解耦。目前業(yè)內(nèi)有很多消息隊列產(chǎn)品,很多公司都在使用。當然,它們各有利弊,所以我們不 我不需要知道他們所有人。這里我們將介紹三種消息隊列,它們各自的特點相當鮮明,值得學(xué)習(xí)。1 RabbitMQ我剛開始接觸的消息隊列是RabbitMQ,使用方法比較簡單。RabbitMQ是erlang開發(fā)的AMQP(Advanced Message Queue,高級消息隊列)的開源實現(xiàn),具有以下特點:安裝部署簡單,訪問方便?!窆δ茇S富,符合AMQP標準;企業(yè)級消息隊列,經(jīng)過大量實踐測試高度可靠;集群易于擴展,增加或減少集群節(jié)點也很容易;有一個強大的網(wǎng)絡(luò)管理頁面。與其他MQ相比,Kafka有一些優(yōu)點和缺點,主要表現(xiàn)在:擴展性。Kafka集群可以透明地擴展,向集群中添加新的服務(wù)器。高性能??ǚ蚩?的性能遠遠優(yōu)于傳統(tǒng)的ActiveMQ、RabbitMQ等。Kafka支持批量操作。容錯。Kafka的每個分區(qū)數(shù)據(jù)都會被復(fù)制到幾個服務(wù)器上。當一個代理失敗時,Zookeeper會通知生產(chǎn)者和消費者使用其他代理。缺點:消息重復(fù)??ǚ蚩ūWC每條消息至少傳遞一次。雖然概率很小,但一條消息可能會傳遞多次。這消息不正常。Kafka的固定分區(qū)內(nèi)部的消息保證是有序的,但是如果一個主題有多個分區(qū),分區(qū)之間的消息傳遞就不能保證是有序的。復(fù)雜。Kafka需要Zookeeper的支持,Topic一般需要手動創(chuàng)建,比一般MQ的部署和維護成本更高。RocketMQRocketMQ是一個開源的消息中間件,純java,分布式,隊列模型。它的前身是Metaq。Metaq 3.0發(fā)布時,產(chǎn)品名稱改為RocketMQ。它具有以下特點:1 .它能保證嚴格的消息順序;2.可以提供豐富的消息拉?。?.它可以有效地擴大用戶的層次;4.它可以訂閱實時消息;5.它可以積累數(shù)十億條消息。此外,它還具有支持事務(wù)消息的優(yōu)點,使得分布式事務(wù)的實現(xiàn)變得簡單。05分布式數(shù)據(jù)庫數(shù)據(jù)庫 "這里其實指的是數(shù)據(jù)庫的分布式方案,更確切的說,主要是指數(shù)據(jù)庫。主從復(fù)制和讀寫分離,這是數(shù)據(jù)庫高可用性的基礎(chǔ)。MySQL數(shù)據(jù)庫會使用日志完成主從復(fù)制,先寫主庫,再同步到從庫。讀寫分離一般是指從庫負責(zé)讀,主庫負責(zé)寫。2子數(shù)據(jù)庫和子表方案子數(shù)據(jù)庫和子表是解決大表性能瓶頸的方法。當然也可以分為橫劈和豎劈。水平拆分是指減少單個表中的數(shù)據(jù)量,放入其他表或其他數(shù)據(jù)庫中??v向拆分一般是指按照業(yè)務(wù)拆分,將不必要的字段放在其他表中。數(shù)據(jù)庫和表共享可以在應(yīng)用程序?qū)油瓿?,通過散列id或其他字段來映射到相應(yīng)的表。當然也可以通過數(shù)據(jù)庫中間件來完成,比如mycat,通過代理實現(xiàn)數(shù)據(jù)庫和表的分離非常方便。筆者對這部分后端相關(guān)技術(shù)也只是略知一二,這里只是建議。It 這只是一個簡單的科普。畢竟我們這些學(xué)技術(shù)的先說深度后說廣度。等你對前面的內(nèi)容有了很好的把握,再看看大后端的其他一些技術(shù)會很有意思。以下技術(shù)主要是我在自己的學(xué)習(xí)旅途中接觸到的一些內(nèi)容,所以在分享之前比較熟悉。至于它們是否適合每個人 的口味,觀點可能不同。hadoop的作者之前參與過數(shù)據(jù)倉庫相關(guān)項目,所以對這方面有所了解,感覺Hadoop生態(tài)還是挺有意思的。你不妨先了解一下基本組件,然后自己玩一個集群。常見的組件有hdfs、hbas《大數(shù)據(jù)技術(shù)原理與應(yīng)用》。這本書對于hadoop生態(tài)入門完全夠用。如果你想成為一名大數(shù)據(jù)平臺開發(fā)人員或數(shù)據(jù)研發(fā)人員。ampd工程師,你可能需要對這些組件的底層原理有一個非常全面的了解。云計算初步探索筆者之前參與過私有云相關(guān)的項目,所以對這方面有所了解,感覺還挺有意思的。我 m在項目中主要接觸到OpenStack、docker和kubenetes。OpenStack是私有云生態(tài),內(nèi)部結(jié)構(gòu)對我們來說還是比較復(fù)雜的,但是最根本的虛擬化技術(shù)是基于kvm虛擬化。Docker是一個非常流行的容器,用于快速部署應(yīng)用程序。Kubenetes還流行dock《Docker技術(shù)入門與實戰(zhàn)》和《kubenetes權(quán)威指南》的其他常用后端技術(shù)。此外,我 我相信你 我知道很多其他的技術(shù),但是不同的企業(yè)使用的組件通常是不同的,所以你不知道。;我不需要什么都知道。比如搜索引擎技術(shù)Lucene,基于它的兩個產(chǎn)品solr和elasticsearch,通常出現(xiàn)在需要搜索功能的項目中。比如重流計算技術(shù),如storm和spark streaming,通常用于大數(shù)據(jù)部門進行實時數(shù)據(jù)采集。再比如ELK實現(xiàn)的分布式日志系統(tǒng),多用于分析和定位系統(tǒng)問題,經(jīng)常出現(xiàn)在一些重要的應(yīng)用中。當然還有現(xiàn)在大火的人工智能,有太多的技術(shù)我們沒有機會去了解和使用。我們能做的就是在自己的能力范圍內(nèi)盡力而為。所以,你不 我不需要知道所有的事情,但是如果你有時間的話。話,還是建議多了解一下。摘要摘要今天有幾個詞。;的代碼,所以它 有些糟糕的寫作是難免的。我希望你能原諒我。整篇論文主要講了這些內(nèi)容:1 Web架構(gòu)2分布式基礎(chǔ)理論3常見分布式技術(shù)4緩存5消息隊列6數(shù)據(jù)分布式解決方案7后端相關(guān)技術(shù)。至此,本系列文章結(jié)束。不知道大家有什么問題或者建議可以和作者交流~請加我聊天。寫這一系列文章也是因為很多朋友想了解更清晰的Java后端學(xué)習(xí)路線,所以我總結(jié)了自己之前的學(xué)習(xí)過程才創(chuàng)作了這四篇文章,希望對大家有所幫助~


網(wǎng)頁標題:怎么找到程序員一起合伙創(chuàng)業(yè)?(現(xiàn)在開發(fā)JAVA后臺?)
鏈接URL:http://m.5511xx.com/article/cdocgjo.html