【招生對象】
本課適合于理工科專業(yè),有一定Java基礎(chǔ)、通過入學考核,且有志于從事軟件的人
【課程簡介】
本課程重點培養(yǎng)掌握MySQL、Oracle數(shù)據(jù)庫、JDBC編程、Java Web、Struts1、Struts2、Hibernate、Spring、JPA、Java EE、3G Android開發(fā)的實戰(zhàn)與理論雙結(jié)合軟件工程師,本實訓營重點講解Web Service、CXF、工作流jBPM、搜索引擎Lucene、OSEM框架Compass、EJB3.0、JPA、Android等眾多高新、熱門技術(shù)。除此之外,本課程還包括工作流技術(shù)、搜索引擎優(yōu)化等Java EE高級編程技術(shù),并通過實踐項目介紹數(shù)據(jù)緩存、頁面緩存、負載均衡等系統(tǒng)性能調(diào)優(yōu)技術(shù)。
【培訓目標】
通過本課程的多個真實項目的訓練,學員還可從理論聯(lián)系實際的掌握軟件設(shè)計模式、編程范式,并直接提升對軟件架構(gòu)設(shè)計思想的把握。 讓學員畢業(yè)后真正具備兩年左右軟件開發(fā)經(jīng)驗(注:此課程包括“JavaEE+3G/4G就業(yè)突擊營”的全部課程)。
課程安排
*階段
Java8高級技術(shù)+MySQL+Oracle數(shù)據(jù)庫+JDBC、MyBatis框架+DAO封裝+ATM系統(tǒng)
泛型、注解、類加載與反射、AIO、動態(tài)代理。
Java 8新的接口語法、Lambda表達式、方法引用、構(gòu)造器引用、函數(shù)式編程、流式編程、新的日期、時間API、并行支持、改進的類型推斷、重復(fù)注解。
MySQL和Oracle數(shù)據(jù)庫、DAO封裝:Oracle和MySQL數(shù)據(jù)庫管理、SQL語言、多表查詢與子查詢,查詢結(jié)果集的交、并、差運算,包括SQL92、SQL99兩種規(guī)范的查詢;PL/SQL語言,函數(shù),存儲過程、觸發(fā)器的編寫,創(chuàng)建、使用視圖、游標等;數(shù)據(jù)庫設(shè)計范式;數(shù)據(jù)備份與移植;數(shù)據(jù)檢索技巧;大對象的讀寫技巧,數(shù)據(jù)優(yōu)化技巧,分區(qū)與索引。常見問題分析與解決。
JDBC 4.2開發(fā)技術(shù):Connection、Statement、PreparedStatement、CallableStatement、ResultSet、可滾動結(jié)果集、可更新結(jié)果集、RowSet和RowSetFactory,例如JDBC動態(tài)創(chuàng)建數(shù)據(jù)庫,執(zhí)行增、刪、改、查等操作;DataSource和數(shù)據(jù)庫連接池、JDBC Template、ORM思想與DAO封裝等。
JDBC是數(shù)據(jù)庫應(yīng)用的技術(shù)基礎(chǔ),后面Hibernate技術(shù)都是建立在其基礎(chǔ)上的,掌握JDBC是學好Hibernate的前提,千萬不要以為有了Hibernate就*JDBC。
經(jīng)典數(shù)據(jù)庫性能優(yōu)化技術(shù),橫向分表、縱向分表、分庫提升海量數(shù)據(jù)檢索數(shù)據(jù)庫性能。
MyBatis3的前身是iBatis,轉(zhuǎn)入Google后更名為MyBatis,數(shù)據(jù)持久層用起來比較靈活,速度快。
階段項目 金融銀行自助系統(tǒng)ATM
支持多用戶操作,使用BasicDAO完成持久層設(shè)計.實現(xiàn)用戶信息加密,數(shù)據(jù)安全鎖定,實現(xiàn)跨數(shù)據(jù)庫轉(zhuǎn)賬事務(wù)操作。
第二階段 Java Web+JavaMail + MyBatis + Struts 2+電子商務(wù)平臺
Java Web開發(fā)核心基礎(chǔ):XML的基本語法、XML的兩種語義約束:DTD、XML Schema、名稱空間。XML Schema是XML的重要基礎(chǔ),也是掌握Web Service本質(zhì)的重要基礎(chǔ)。、dom4j、JAXB等XML解析、生成、XML驗證技術(shù)、XPath。
Tomcat的安裝與啟動運行、Tomcat的體系結(jié)構(gòu)、在Tomcat中配置Web虛擬目錄與發(fā)布Web應(yīng)用程序的各種方式、設(shè)置應(yīng)用認網(wǎng)頁、使用Tomcat配置虛擬主機。
HTTP協(xié)議詳解,Web服務(wù)器的工作原理。
Tomcat+Apache整合、集群管理、負載均衡、MMCache會話同步。
JSP與Servlet技術(shù):JSP運行原理、JSP的3個編譯指令、page指令及其重要的屬性:import、session、errorPage、isErrorPage、contentType、pageEncoding、isELIgnored,include指令及其典型應(yīng)用;JSP中的9個內(nèi)置對象和作用,application、config、request、response、session、pageContext對象的詳細講解;JSP表達式;JSP腳本片段;JSP聲明;JSP注釋;EL表達式詳解。在web.xml文件中設(shè)置全局錯誤處理。JSP中的。JSP的7個動作指令:、各種腳本標簽、指令標簽。JSP中文亂碼的各種原因分析。JavaBean、JSP中與JavaBean相關(guān)的三條指令(行為元素)。Session及Session域的應(yīng)用,Session跟蹤機制,Session實現(xiàn)購物車,利用Session防止表單重復(fù)提交,MD5算法及其應(yīng)用,Session的持久化。HttpServletResponse和HttpServletRequest的應(yīng)用、HttpServlet以及Servlet的生命周期。
Java Web高級開發(fā)技術(shù):過濾器及典型案例、Web監(jiān)聽器及典型應(yīng)用:例如監(jiān)聽網(wǎng)站在線人數(shù)列表,結(jié)合Java國際化開發(fā)國際化的Web應(yīng)用 自定義標簽和JSTL:開發(fā)自定義標簽;自定義標簽API介紹,Tag接口與SimpleTagSupport,自定義標簽的屬性(動態(tài)屬性值與動態(tài)屬性),IterationTag接口及其開發(fā)案例,用自定義標簽定義JSP腳本變量(TLD文件和TagExtraInfo兩種方式),BodyTag接口及其開發(fā)案例。簡單自定義標簽與標簽文件,標準標簽庫(JSTL)。
JavaMail開發(fā)技術(shù):域名解析與MX記錄、電子郵件的工作原理、郵件傳輸協(xié)議:SMTP、POP3、IMAP、郵件的組織結(jié)構(gòu):RFC822郵件格式、MIME協(xié)議、郵件編碼。
Struts2框架的工作原理與架構(gòu)分析,struts-default.xml與default.properties文件分析,Action開發(fā)與配置、Action的屬性注入,使用通配符配置Action、,ResultType與Result配置,配置Struts 2異常機制,Struts 2與Convention插件,Struts 2中的國際化,Struts 2中的表單校驗,Struts 2文件上傳、多文件上傳;Struts 2的文件下載;自定義類型轉(zhuǎn)換器、輸入校驗;OGNL表達式與Struts2標簽;自定義攔截器。
階段項目 仿X東的電子商務(wù)平臺:使用學習的Java Web 、MyBatis、數(shù)據(jù)庫技術(shù)開發(fā)一個電子商務(wù)平臺,使用URL重寫技術(shù)。學習使用常見的HTML標簽,深入的JavaScript編程,JavaScript校驗、CSS樣式管理。使用Java Mail提供郵件支持,log4j記錄日志,提供微信支付、支付寶支付等在線支付功能。
使用Tomcat + Apache整合、集群管理、負載均衡處理高并發(fā)應(yīng)用場景。
第三階段 jQuery、Bootstrap、EasyUI、LigerUI、Ajax等流行前端技術(shù)
深入JavaScript編程、DHTML、DOM:深入講解JavaScript的動態(tài)特征,包括如何創(chuàng)建JavaScript類、如何創(chuàng)建JavaScript對象,JavaScript的偽繼承,call和apply等。DOM編程,理解DOM樹,DOM對象,常用DOM對象的屬性、方法和事件,跨瀏覽器問題解決,JavaScript性能優(yōu)化等。使用JavaScript搜索文檔中的元素、修改文檔內(nèi)容、添加新內(nèi)容、修改CSS樣式單等。
Ajax的工作原理:B/S請求響應(yīng)機制與Web開發(fā)模式、XMLHttpRequest對象、DOM與Ajax、使用DOM操作HTML文檔,Ajax封裝與Ajax框架的原理:Ajax編程的重點和難點,開源Ajax框架,商業(yè)Ajax框架。jQuery框架、EXT JS的功能與用法。
Bootstrap 是目前實際開發(fā)中*的 HTML、CSS 和 JavaScript 框架,用于開發(fā)響應(yīng)式布局、移動設(shè)備優(yōu)先的WEB項目。
Bootstrap讓前端開發(fā)更快速、簡單。所有開發(fā)者都能快速上手、所有設(shè)備都可以適配、所有項目都適用。
階段項目
房地產(chǎn)行業(yè)大型客戶關(guān)系管理系統(tǒng),使用當前學習的Struts 2、MyBatis框架,前端使用Ajax技術(shù)和jQuery、EasyUI、Bootstrap等框架提升用戶體驗?;趧討B(tài)代理實現(xiàn)自定義AOP功能,項目采用控制器層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層的三層架構(gòu),保證項目具有良好的擴展性和可維護性。
整個項目包括員工管理、*管理、角色管理、客戶管理、客戶狀態(tài)跟蹤、客戶類型維護、客戶訪談記錄分析、客戶來源分析、客戶信息挖掘、郵件功能、房屋信息中心管理、公告管理、系統(tǒng)報表生成等幾大模塊。
第四階段 Hibernate 5、JPA、Spring 4.x、Spring MVC、UML、Gradle/Maven、SVN/Git、框架整合+電信增值業(yè)務(wù)平臺
高級Hibernate開發(fā)技術(shù):ORM思想,Hibernate映射原理,Hibernate高級映射:集合映射與組件映射,Hibernate多表關(guān)聯(lián)映射,HQL查詢,條件查詢,原生SQL查詢,Hibernate大對象讀取技術(shù),Hibernate攔截與回調(diào)技術(shù),Hibernate二級緩存技術(shù),Hibernate分頁技術(shù),Hibernate性能優(yōu)化技術(shù)。
JPA介紹及開發(fā)環(huán)境搭建、單表實體映射、一對多/多對一、一對一、多對多關(guān)聯(lián)、實體繼承、復(fù)合主鍵、JPQL查詢、EntityManager API、事務(wù)管理。
Spring框架的思想與原理,IoC思想,Spring容器與容器中的Bean,Bean作用域范圍,依賴注入,高級依賴注入配置,Bean生命周期管理,Spring的簡化配置,Sp EL的功能與用法,使用Sp EL簡化配置。Spring零配置支持,使用注解定制Bean的生命周期行為。
AOP原理與思想,編譯時增強與運行時增強,AspectJ的功能與用法。AspectJ與Spring AOP對比與優(yōu)勢分析;Spring的聲明式事務(wù)管理、數(shù)據(jù)源配置,基于AOP的權(quán)限控制、性能監(jiān)控。
結(jié)合Spring源代碼深入剖析工廠模式、代理模式、策略模式、門面模式等經(jīng)典設(shè)計模式的應(yīng)用場景及優(yōu)勢。
Spring MVC的控制器映射,數(shù)據(jù)驗證、格式化和數(shù)據(jù)綁定機制,Restful風格支持, 各種視圖技術(shù)整合,包括FreeMarker、Velocity等,Spring MVC的控制器組件、視圖組件、工作流程管理。
常用注解機制、標簽庫、國際化、數(shù)據(jù)轉(zhuǎn)換、格式化、數(shù)據(jù)校驗、攔截器、文件上傳下載等。
Spring MVC + Spring 4.x + Hibernate 5整合、Struts 2+Spring 4.x+Hibernate 5整合。
軟件工程與UML:軟件的生命周期、瀑布模型與增量和迭代模型;用例圖、類圖、順序圖與協(xié)作圖、狀態(tài)圖、活動圖、對象圖、包圖、組件圖、部署圖。 使用基于項目對象模型概念的項目管理軟件Maven,集中管理整個項目的開發(fā)、構(gòu)建過程,第三方j(luò)ar包依賴,部署,報告和文檔等。
GRADLE:Gradle是一個基于Apache Ant和Apache Maven概念的項目自動化構(gòu)建工具。它使用一種基于Groovy的特定領(lǐng)域語言(DSL)來聲明項目設(shè)置,拋棄了基于XML的各種繁瑣配置更加靈活及敏捷。
GIT:開源的分布式版本控制系統(tǒng),可以有效并高速的處理團隊開發(fā)中項目版本管理問題。
階段項目 VAS(Value-added service)電信增值業(yè)務(wù)平臺
該項目是針對廣東電信局業(yè)務(wù)的飛速發(fā)展,激活*電信電話用戶、寬帶用戶來開發(fā)該系統(tǒng).在保證滿足互聯(lián)星空vnet用戶,天翼用戶,我的e家及e家套餐用戶等消費者基本通信需求業(yè)務(wù)的同時,電信運營商提供給消費者更高層次的信息需求。增值業(yè)務(wù)自身特性決定其必然是一種多元化,綜合性的捆綁式業(yè)務(wù),打造數(shù)字生活及創(chuàng)造附加價值的一系列業(yè)務(wù)組合,給用戶帶來全新體驗!
本項目涉及到Oracle數(shù)據(jù)庫、Struts2.x、Ajax、jQuery、EasyUI前端開發(fā)、Hibernate、Spring等開源技術(shù)。
第五階段 Linux、Activiti流程引擎、Spring Data、Web Service與CXF、SOA+協(xié)同辦公自動化平臺
Linux 系統(tǒng)使用、Linux的核心思想、Linux用戶管理、文件管理、系統(tǒng)管理、遠程登陸、權(quán)限配置、網(wǎng)絡(luò)管理。Linux下Java EE開發(fā)環(huán)境的搭建,Linux下安裝Web服務(wù)器、應(yīng)用服務(wù)器,F(xiàn)TP服務(wù)器,samba服務(wù)器的配置。掌握Linux環(huán)境下開發(fā)Java EE應(yīng)用的方法,Linux服務(wù)器上部署真實商業(yè)應(yīng)用,分布式集群技術(shù),包括數(shù)據(jù)庫、應(yīng)用服務(wù)器、負載均衡和集群配置,搭建互聯(lián)網(wǎng)高并發(fā)、高可靠的服務(wù)器架構(gòu)。
工作流與業(yè)務(wù)流程管理,Activiti流程引擎簡介和常見應(yīng)用場景介紹、Activiti工作流定義模型分析,數(shù)據(jù)庫表模型分析、使用Activiti 5.x流程引擎以及與Spring集成、使用流程設(shè)計器定義流程、部署流程定義到引擎中、查詢已部署的流程定義。啟動流程、渲染啟動表單、查詢流程實例、查看流程實例的詳情、設(shè)置流程創(chuàng)建人、傳遞變量到引擎中、使用流程變量。查詢待辦任務(wù)、打開待辦任務(wù)詳情、渲染任務(wù)表單、完成任務(wù)。
Web Service的功能與應(yīng)用,Web Service與SOA架構(gòu),Web Service在云計算上的應(yīng)用。Web Service的原理,基于XML的數(shù)據(jù)交換,SOAP協(xié)議與WSDL協(xié)議、XML Schema與WSDL文檔詳解、UDDI 注冊中心運行原理。
使用CXF開發(fā)Web Service,使用CXF開發(fā)Web Service客戶端,直接編寫Web Service客戶端。CXF攔截器,基于CXF攔截器進行權(quán)限控制,CXF與Spring整合,S2SH應(yīng)用對外發(fā)布Web Service、S2SH應(yīng)用整合第三方Web Service。
學員一定要掌握Web Service的本質(zhì),而不是僅僅停留在使用CXF或Axis2(至于XFire、Axis就不要提了,早過時了)開發(fā)Web Service的層次,這種方式都需要借助于第三方框架,但在Android平臺上將無法使用@WebService等注解,因此開發(fā)者必須真正掌握Android的本質(zhì)(不借助于任何框架進行Web Service交互),才能面對、解決任何Web Service問題,才能在任何語言、任何平臺上隨心所欲地使用Web Service。
階段項目 協(xié)同辦公自動化平臺
項目里整合了jQuery、EasyUI、Bootstrap、Spring MVC、Spring、Hibernate、Spring Data、CXF、Activiti、Lucene等的主流框架,項目基于Lucene提供全文檢索功能;基于Web Service暴露跨平臺的API ,可整合各種語言的客戶端,提供Android、iOS APP整合,打造真正跨平臺、移動協(xié)同辦公系統(tǒng),Activiti負責處理大量復(fù)雜、多變的業(yè)務(wù)流程,能快速處理企業(yè)流程審核、業(yè)務(wù)流程變更等復(fù)雜的業(yè)務(wù)需求。
最終系統(tǒng)通過Linux部署,支持負載均衡、和集群配置,滿足高可用、高并發(fā)業(yè)務(wù)場景的需求。
第六階段 Lucene與Solr、云計算之Hadoop大數(shù)據(jù)技術(shù)、數(shù)據(jù)采集系統(tǒng)+大型網(wǎng)站優(yōu)化技術(shù)
Lucene框架(全文搜索技術(shù)):框架介紹、作用、建索引庫、搜索、分詞器(單字分詞器、二分法分詞器、詞庫分詞器、IKAnalyzer、mmseg4j)、索引庫維護(CRUD)。
創(chuàng)建Query的兩種方式、檢索排序、檢索過濾、檢索分頁、高亮器、提升權(quán)重、Spring+Hibernate+Struts2+Lucene整合開發(fā)項目。
Redis是一個key-value存儲系統(tǒng),是當下互聯(lián)網(wǎng)公司最常用的NoSQL數(shù)據(jù)庫之一Redis目前在公司開發(fā)應(yīng)用越來越多庫之一,是進入互聯(lián)網(wǎng)行業(yè)的Java開發(fā)工程師必備技術(shù)。了解Redis技術(shù)的原理,使用場景,了解NoSQL的使用場景和概念,快速掌握Redis的安裝配置、數(shù)據(jù)類型、常用操作命令、Redis持久化、主從復(fù)制、事務(wù)控制以及用Jedis操作進行Java開發(fā)等知識。Redis/memcache/MongDB等主流Nosql對比講解、 Redis數(shù)據(jù)類型和基本操作命令、Redis總體配置Redis.conf講解、Redis持久化(RDB和AOF)、Redis事務(wù)控制、Redis發(fā)布和訂閱、Redis(Master/Slave)主從復(fù)制、Redis的Java客戶端操作Jedis。
大型網(wǎng)站性能優(yōu)化:基于數(shù)據(jù)緩存+頁面緩存的性能優(yōu)化。靜態(tài)服務(wù)+動態(tài)服務(wù)整合的性能優(yōu)化;服務(wù)器集群的優(yōu)化技術(shù),服務(wù)器集群優(yōu)化時的failover技術(shù)、session同步、文件同步等。
階段項目 職業(yè)能力綜合評測、職業(yè)素養(yǎng)培養(yǎng)、簡歷編寫、崗前心理輔導及就業(yè)指導
第七階段 4G和Android移動應(yīng)用開發(fā)+電子商城APP
隨著移動互聯(lián)網(wǎng)時代和通信技術(shù)的迅猛發(fā)展,移動App已經(jīng)越來越深入人心。移動App市場突飛猛進,移動App已經(jīng)成為了移動互聯(lián)網(wǎng)的主流。移動時代的便攜性,產(chǎn)生了巨大的移動互聯(lián)網(wǎng)用戶群,App可以進一步滿足人們的生活業(yè)務(wù)需求,無論是生活類App(出行,旅游,打車,購物)還是游戲類的App以及游戲類的App都成為了現(xiàn)今人們生活中不可或缺的一部分 Android編程的基本概念與要點,搭建Android開發(fā)、調(diào)試環(huán)境,Android項目結(jié)構(gòu),Android應(yīng)用設(shè)計模式,Android界面組件與界面編程,Android事件機制,Android資源管理,Intent與IntentFilter,文件系統(tǒng),讀寫SDCard、SharedPreferences、Android四大核心組件(Activity、Service、ContentProvider和BroadcastReceiver),SQLite數(shù)據(jù)庫(增、刪、改、查)、拖拉與多點觸摸、手勢構(gòu)建與手勢識別,應(yīng)用調(diào)試與Android JUnit。
圖形、圖形處理,游戲動畫處理,逐幀動畫與Tween動畫,圖像扭曲、濾鏡,音頻、視頻的錄制、播放,控制手機拍照,傳感器編程,GPS應(yīng)用,Android網(wǎng)絡(luò)編程和Web Service等。
階段項目 電子商城APP 、Android的微博客戶端、Android五子棋、Android連連看、Android天氣預(yù)報、植物大戰(zhàn)僵尸等游戲軟件。
電子商城APP是為電子商務(wù)平臺個性化業(yè)務(wù)提供的完整解決方案。包括云端Java開發(fā)的web服務(wù)器管理系統(tǒng)、移動終端APP客戶端等個性化業(yè)務(wù)的監(jiān)控及管理。依托平臺+App軟件的服務(wù)差異化、體驗差異化是電商的不二選擇。采用平臺+APP的營銷形式,不僅可以占領(lǐng)用戶的電腦還可以占領(lǐng)用戶的手機,獲取用戶的數(shù)據(jù)并對數(shù)據(jù)加以分析,為日后的精準營銷可以創(chuàng)造數(shù)據(jù)基礎(chǔ),占領(lǐng)用戶手機,同時也方便用戶二次或多次訪問,提高用戶的重復(fù)轉(zhuǎn)化率,APP電子商務(wù)是未來網(wǎng)絡(luò)營銷的新趨勢,誰能占領(lǐng)用戶手機,誰能獲得更多精準用戶的數(shù)據(jù),誰能更好的做到重復(fù)轉(zhuǎn)化,誰就能取得未來的主動權(quán)。
注:整個課程體系和項目實戰(zhàn)中還將涉及的技術(shù):Ant、JUnit、Log4j、CVS、SVN、JBoss、WebLogic、Velocity、SSI、OSCache、 JFreeChart、JasperReports、CGLib、TopLink、OpenJPA、Android、XmlPull、HttpClient等高級企業(yè)級應(yīng)用技術(shù)。