java web開發必備知識

從各類招聘網站的要求上篩選出了一些java開發的一些基本的要求,對照自身看看有哪些缺陷。javascript

java基礎前端

既然是java web開發,java SE確定要學好了。java

多線程,IO,集合等,對隊列,緩存,消息等機制有了解。java併發模型,內存模型node

java虛擬機mysql

而後java虛擬機(jvm)也要懂,包括垃圾回收機制;jquery

java EElinux

傳統的java web的開發則是採用JSP+Servlet+Javabean實現的git

java web開發,或者通常的web開發分前端和後端。web

前端基礎部分包括:Html,CSS,Javascript,Html5,Ajaxredis

前端框架或者庫主要是從原生的javascript上開發的,好比jquery,angularJS,bootstrap,仍是先把javascript的基礎打牢再用這些框架。

後端的框架有SSH(Struts,Spring,Hibernate),EJB,MyBatis(持久層框架,原來叫ibatis),freemarker,Shiro

消息

MQTT,分佈式開放消息系統(RocketMQ)

數據庫

基本的增刪改查,索引,遊標,觸發器,存儲過程,查詢優化

Redis 是一個高性能的key-value數據庫。 redis的出現,很大程度補償了memcached這類key/value存儲的不足

oracle,sqlserver,mysql,mongdb,redis,memcache,NoSQL

ZooKeeper是一個分佈式的,開放源碼的分佈式應用程序協調服務,是Google的Chubby一個開源的實現,是Hadoop和Hbase的重要組件。它是一個爲分佈式應用提供一致性服務的軟件,提供的功能包括:配置維護、域名服務、分佈式同步、組服務等。

網絡

HTTP協議,HTTPS協議,網絡編程,TCP/IP

服務器

WebLogic的原理、使用和配置
Tomcat:輕量的JavaWeb容器,和WebLogic功能相似,使用簡單、方便、免費、開源,但不支持EJB
JBoss:相似於Tomcat,功能更強,支持EJB

Resin

ngix

Apache,Jetty的基本配置與web應用的部署
這三種應用服務器至少掌握其中的一種是很必要的。

項目構建

有Ant,Maven,Gradle,Buildr

接口開發

webservice,restful web service

軟件工程

能夠理解UML設計和使用UML進行簡單設計。

設計模式

單例模式,工廠模式

項目開發

敏捷編程,極限編程

大數據

Hadoop,spark,storm

數據結構和算法

鏈,隊列,樹,棧

加分項

規則引擎,如JBoss Drools,svn,git,jenkins

先寫這麼多,反正是要慢慢學的

 

2.有系統分析設計經驗,掌握PowerDesigner、Visio、Rose等Case工具;

MongoDb等相關的數據庫經驗;

Dubbo,Kafka等;

具有TCP方面的網絡編程經驗,Netty,NIO

具有WEB方面的開發經驗者更好。

分佈式

OSGi,SOAP,

熟練掌握Linux平臺命令與Tomcat的配置與應用管理能力;

C/C++服務器開發,各種主流開源框架

熟悉各種主流數據庫和操做,熟悉數據庫事務處理

熟悉項目管理流程

掌握sql語法,掌握如何優化數據庫,調優sql語句;

有服務器和數據庫優化經驗者優先。

精通springmvc/mybatis/memcached/thrift/dbcp2/mysql/activemq /velocity/boostrap(有部分便可); 

熟悉JBOSS、Tomcat等服務器產品,熟悉安裝、調試、發佈配置應用,熟悉Linux操做系統更佳;

加分項:zookeeper、redis、kafka等。

一、2年以上Java開發經驗,基礎紮實,理解IO、多線程、集合等基礎框架,對JVM原理有必定的瞭解,同時熟悉.NET語言者優先;
二、精通servlet,JMS,Jdbc開發,熟悉Spring、iBatis、Netty等開源框架,能瞭解它的原理和機制,熟悉各類經常使用設計模式;

計算機及相關專業本科以上學歷,兩年以上全職工做經驗。

熟練掌握java語言,有必定的數據結構和算法能力。

熟悉多線程,socket編程技術。

熟悉linux系統,瞭解經常使用系統性能分析工具和方法。

熟悉SQL,熟練使用至少一種SQL或NoSQL數據庫。

熟悉web前端技術者優先。

熟悉node.js者優先。

熟練使用mysql或mongodb者優先。

有分佈式系統,RPC調用開發經驗者優先。

有高併發系統設計和開發經驗者優先。

掌握運維技能者優先。

◆熟悉SVN、GIT等版本控制工具.

◆熟悉mysql數據庫,瞭解SQL優化

◆熟悉LINUX操做系統,熟悉SHELL編程.

◆有太高併發特色的大型互聯網應用的開發經驗;

◆熟悉緩存架構,分佈式架構;

紮實的Java基礎,熟悉HTTP、Servlet、Json、XML、Socket等

3.java基礎知識紮實,包括多線程、集合、緩存、消息隊列、全文搜索等;4.熟悉主流開源框架技術,包括Struts二、Spring 、Hibernate、iBatis、MyBatis、Dubbo等,並對其架構設計及實現有必定了解;6.熟悉Tomcat、Weblogic、Oracle Golden Gate、ESB 等應用服務器和中間件的使用,熟悉Linux系統使用者優先;7.熟悉經常使用的設計模式,有大型分佈式、高併發、高負載、高可用性系統的設計開發經驗者優先;

相關文章
相關標籤/搜索