分享一個比較好的學習網站 http://edu.51cto.com/roadmap/view/id-86.htmlhtml
================================J2EE========================================前端
一、常識:歷史、特色、運行環境JRE、開發工具(Eclipse[主流]免費、MyEclipse收費/IntelliJ IDEA社區版免費,商業版收費)java
二、Java開發環境:JDK (目前版本1.8),JRE(java runtime environment)mysql
三、Java語言基礎:企業編碼規範(參考Google Java編程風格指南中文版) Alibaba Java編程規範jquery
四、Java面向對象:封裝(encapsulation),繼承(Inheritance),多態(Polymorphism)web
五、常見設計模式(Design pattern):redis
整體來講設計模式分爲三大類:算法
建立型模式,共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式;spring
結構型模式,共七種:適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式;sql
行爲型模式,共十一種:策略模式、模板方法模式、觀察者模式、迭代子模式、責任鏈模式、命令模式、備忘錄模式、狀態模式、訪問者模式、中介者模式、解釋器模式;
五、JDK核心API: 語言核心包(lang、io、beans、math、net、security、util、time、sql、text、Concurrent(併發包)、noi(netty、Mina框架)等)
Lambda表達式(1.8+版本後支持)http://www.cnblogs.com/feichexia/archive/2012/11/15/Java8_LambdaExpression.html
異常處理:異常類(java.lang.Exception)繼承於java.lang.Object中的java.lang.Throwable類。
異常可分爲執行異常(RuntimeException)和檢查異常(Checked Exceptions)
集合(包括線程安全的集合)
自動打包與解包 (裝箱與拆箱)
Annotation(註解)
匿名類 內部類
利用Javadoc工具生成開發文檔(http://www.cnblogs.com/QQ931697811/p/5009571.html)
六、JavaEE核心:多線程 線程池 併發編程 線程的同步
網絡編程(Http、Https[Http+SSL]、TCP、UDP)
WebService【axi和cxf】 (如今多用web api)
Java反射機制
動態代理
JVM性能調優(JVM內存結構剖析、GC分析及調優、JVM內存參數優化)
Java泛型
JDK新特性
七、Linux(以CentOS爲例):基本操做,遠程鏈接工具(secureCRT)
八、SQL語言:SQL基本語句 數據庫設計三範式 多表設計 內鏈接查詢(inner join) 左外鏈接查詢(left join) 右外鏈接查詢 (right Join) 子查詢 視圖 存儲過程 觸發器 行列轉換 列存儲
九、JDBC: JDBC基礎API(驅動程序管理器drivermanager、數據庫鏈接Connection、執行Sql語句Statement、預編譯執行SQL語句PreparedStatement、調用存儲過程Preparecall、返回結果集ResultSet等)
JDBC高級技術(事務管理【首先設置事務爲非自動提交方式conn.setAutoCommit(false); 在try塊內添加事務的提交操做,表示操做無異常,提交事務 conn.commit(); 在catch塊內添加回滾事務,表示操做出現異常,撤銷事務 conn.rollback();設置事務提交方式爲自動提交conn.setAutoCommit(true);】)
批處理技術addBatch executeBatch clearBatch、樹狀結構的存儲於展示;RowSet與離線結果集、理解JDBC的不足;
鏈接池
十、XML: 解析與封裝
十一、JSON:JSON的封裝和解析 http://www.open-open.com/lib/view/open1397870197828.html
十二、HTML5/CSS:H五、easyUI
1三、JavaScript核心:JS語言基礎(數據類型、函數、對象、閉包)、Java DOM編程、事件模型、JavaScript面向對象編程,JS調試方法,熟悉Bootstrap和AngularJS 附一個前端網站:http://edu.csdn.net/course/detail/2714
1四、Jquery: http://www.runoob.com/jquery/jquery-tutorial.html
1六、Servlet :Servlet簡介、Servlet生命週期、servlet配置詳解、訪問servlet路徑分析、ServletConfig使用及servlet初始化參數的使 用,ServletContext使用、系統初始化參數、web 資源獲取, HttpServletResponse和 HttpServletRequest的應用、HTTP協議在web開發中應用、請求轉換與重定向使用,Cookie及Cookie的應用,HttpOnly的cookie,
Cookie實現商品瀏覽歷史記錄、Cookie實現記住用戶名和密碼, Session及Session域的應用,Session跟蹤機制,利用Session防止表單重複提交,MD5算法及其應用, Session的持久化。
1七、JSP 技術:JSP運行原理、JSP中的9個 內部對象和做用、JSP表達式、JSP腳本片斷、JSP聲明、JSP註釋,EL表達式簡介,EL得到數據、EL執行運算、EL內置對象、EL函 數。
page指令及其 重要 的屬性:import、session、errorPage、isErrorPage、contentType、 pageEncoding、isELIgnored、在web.xml文件中設置全局錯誤處理。
JSP中的include指令及其 典型應用 pageContext對象的詳細講解。JSP動做標籤介紹。
JSTL標準標籤庫的介紹及使用。JSP模式介紹、MVC模式介紹、JavaBean介紹、 BeanUtils使用。
1八、數據庫高級使用:事務特性、mysql事務使用、 JDBC事務使用、事務隔離級別,鏈接池介紹、DBCP鏈接池使用、C3P0鏈接池使用、tomcat內置鏈接池使用。
DBUtils介紹、 DbUtils類的使用、QueryRunner類的使用、ResultSetHandler詳解。多條件查詢實現及原理分析、分頁實現及原理分析。
1九、AJAX:AJAX介紹、XMLHttpRequest對象詳解、JSON介紹、JSONLIB插件的使用、JQuery的AJAX
20、JavaWEB高級開發技術:Servlet Listenert監聽器介紹及使用、Servlet Filter過濾器介紹、過濾器生命週期、過濾器鏈分析、FilterConfig介紹。
文件上傳介紹及原理分析、commons-fileupload 使用、上傳實際問題分析及解決,文件下載及下載文件中文亂碼處理。
自定義標籤:自定義標籤介紹、標籤接口繼承結構樹介紹、SimpleTag使用、TLD 文件配置、執行流程簡單分析。
2一、Web進階:自定義標籤庫、MVC、DAO、ServLet、標籤的做用、JSTL、DisplayTag等標籤庫的做用;
2二、Web 服務器(以Tomcat爲例):WEB服務器的工做原理、Tomcat的安裝與啓動運行、Tomcat的體系結構、在Tomcat中配置WEB虛擬目錄與發佈WEB應用程序的方式、設置目錄的默認網頁、使用Tomcat 配置 虛擬主機、WAR文件生成與使用。HTTP協議詳解。
2三、企業應用開發環境部署:Linux Shell命令、遠程登陸、Ant、JUnit單元測試技術、Maven構建技術、SVN應用技術
2四、持久層框架技術(Hibernate/Mybatis/JPA):Hibernate開發技術:ORM思想,hibernate4與JPA關係介紹,hibernate.cfg.xml配置,hbm.xml映射文件詳解,主鍵生成策略 PO對象三種狀態分析與切換、hibernate4一級緩存分析與測試,Hibernate4高級映射技術,Hibernate多表聯合查詢,hibernate4及hibernate3區別及新特性介紹
2五、Spring技術:
框架原理介紹,框架環境搭建,快速入門,IOC思想與AOP相關概念,建立Bean的方式及實現原理, Bean種類,Bean生命週期,Bean的做用域,Bean的注值方式,SpEL,整合Junit測試, Web項目集成spring,註解裝配Bean,AOP思想,AOP原理解剖,傳統方式實現AOP開發,AspectJ介紹及實現AOP開發
三種經常使用數據源的配置,聲明式事務介紹及原理分析,聲明式事務管理實現,註解實現事務管理, XML方式實現SSH框架集成,註解方式實現SSH框架集成
2六、Spring MVC
2七、Shiro :(數據權限,功能權限)Shiro 是一個 Apache Incubator 項目,旨在簡化身份驗證和受權。權限管理基礎、基於url攔截實現權限控制、Shiro入門、Shiro認證、Shiro受權、自定義Realm、Session管理、Shiro與Spring集成、Shiro與web集成、Shiro緩存、基於資源的權限管理綜合案例。http://www.ibm.com/developerworks/cn/web/wa-apacheshiro/
2八、Maven: Maven概述、使用Maven的優點、maven的一次構建、依賴管理、安裝配置介紹.使用Maven核心概念介紹( 座標、依賴、倉庫、插件、生命週期等)、Maven與第三方Elicpse整合及如何在Eclipse中使用Maven、Maven私服Nexus的安裝使用、如何使用Maven構建Web應用、使用Maven構建SSH應用、使用Maven進行多模塊和繼承使用、什麼是持續集成等 http://www.icoolxue.com/album/show/45
2九、SVN : SVN介紹及開發環境搭建、代碼版本管理的使用,TortoiseSVN工具使用,myeclipse與eclipse下SVN插件使用
Git :
30、JVM 瞭解
31 微服務:
32 分佈式 Dubbo+Zookper
33 OSGi(Open Service Gateway Initiative)技術是Java動態化 模塊化 系統的一系列規範。
擴展===============================================================
分佈式Dubbo:原理、使用、源代碼
註冊中心 zookeeper
消息隊列:RabbitMQ 消息/kafka
30、Redis(或者memcached):NoSql 介紹、什麼是redis、redis與memcached的區別、redis安裝配置、redis數據類型及操做(String、Hashs、Lists、Sets、Sorted Sets)、經常使用命令、事務控制、發佈訂閱、持久化、主從複製、高可用集羣搭建
3一、Lucence/Slor : Lucene內容:什麼是全文檢索、Lucene實現全文檢索分析、Lucene實現全文檢索程序實現、Analyzer分析器、索引維護、Query和QueryParser、至關度排序;
Solr內容:企業站內搜索技術選型、什麼是solr、solr安裝配置、solr索引、solr搜索、SolrJ、SolrCloud
ElasticSearch