高级java学习
1. java需要学习些什么内容
1、软件技术基础、java基础编程、java语法,sql Server 2005基础编程、C#基础编程;
2、SQL server 高级编程、网页设计与制作、javascript编程、java高级编程、java web开发商务网站;
3、数据库:MySql、Oracle、DB2;
4、JDBC Java数据库连接。使用Java程序操作数据库。这部分非常重要。几乎所有的企业项目都会用到;
5、HTML、CSS、Java script。 HTML-(Hyper Text Mark-up Language)超文本标记语言。CSS -(Cascading Style Sheets)层叠样式表。JavaScript-是一种由Netscape的Live Script发展而来的脚本语
言;
6、学习如何使用及管理WEB服务器,例如tomcat,并且知道如何在其基础上扩展和维护WEB程序,如何使用它的附加服务,如连接池;
7、JSP 、Servlet,这两个是初级Java程序员必须掌握的基本技能,是所有B/S结构框架的基础;
8、企业流行框架:Struts、Spring、Hibernate、XML应用与开发、MVC应用与开发、Linux平台与应用;
9、UML与Java设计模式;
10、了解在Java项目中使用的新技术。如Ajax、javaee等。
2. java培训要学习哪些内容
目前Java培训内容包括:
1、HTML+CSS3+数据库
2、Java SE(Java面向对象思想;设计模式、面向对象原则、Java高阶API、线程、网络编程、反射、NIO)
3、Java web(Java web基础、JS、DOM操作、JSP/Servlet、第三方工具包、Tomcat...)
4、框架(网络原理、HTTP协议、Linux操作系统、云服务搭建、SSM框架应用、Oracle应用、Spring JPA、Hibernate...)
5、高可用、高并发、高扩展(SpringBoot、缓存、分布式、插件、全文索引、服务中间件、消息中间件、云服务器、云存储、云数据库、域名服务...)
6、微服务、大数据
以下是我们2020年更新的课程,您可以了解一下!
如想学习,可以在我们线上学习平台:百战程序员进行了解!
3. Java培训班的课程一般都学习什么内容呢
目前Java培训内容包括:
1、HTMLCSS3数据库
2、JavaSE(Java面向对象思想;设计模式、面向对象原则、Java高阶API、线程、网络编程、反射、NIO)
3、Javaweb(Javaweb基础、JS、DOM操作、JSP/Servlet、第三方工具包、Tomcat...)
4、框架(网络原理、HTTP协议、Linux操作系统、云服务搭建、SSM框架应用、Oracle应用、SpringJPA、Hibernate...)
5、高可用、高并发、高扩展(SpringBoot、缓存、分布式、插件、全文索引、服务中间件、消息中间件、云服务器、云存储、云数据库、域名服务...)
6、微服务、大数据
以下是我们2020年更新的课程,您可以了解一下!
如想学习,可以在我们线上学习平台:百战程序员进行了解!
4. 一个高级java工程师需要具备什么能力和技术
宏观方面
一、 JAVA。
要想成为JAVA(高级)工程师肯定要学习JAVA。一般的程序员或许只需知道一些JAVA的语法结构就可以应付了。但要成为JAVA(高级)
工程师,您要对JAVA做比较深入的研究。您应该多研究一下JDBC、IO包、Util包、Text包、JMS、EJB、RMI、线程。如果可能,希望您
对JAVA的所有包都浏览一下,知道大概的API,这样您就发现其实您想实现的很多功能,通过JAVA的API都可以实现了,就不必自己费太多的脑经 了。
二、 设计模式。
其实写代码是很容易的事情,我相信您也有同感。但如何写得好就比较难了。这个“好”字包括代码可重用性,可维护性,可扩展性等。如何写出好的代
码往往要借助一些设计模式。当然长期的代码经验积累,只要您用心,会使您形成自己代码风格。相信您的代码也比较符合代码的可重用性,可维护性,可扩展性。
但既然前人已经给我们总结出了经验,我们何不踩着前人的肩膀前进?
三、 XML。
现在的系统中不使用XML几乎是不可能的。XML的功能非常强大,它可以做数据转换、做系统的配置、甚至可保存您的系统业务数据。因此您必须了解
XML,包括它的语法,结构。您还需要比较熟练的使用解析XML的一些API,比如JDOM,SAX等,因为在我们一般的项目中,XML往往担当系统配置
信息的作用,您需要用这些API解析这些配置信息,开发完美的项目。
四、 精通使用一种或两种框架。
“框架都会有许多可重用的代码,良好的层次关系和业务控制逻辑,基于框架的开
发使你可以省出很多的开发成本”。这里希望您能精通,更多的是希望您能通过框架的使用了解框架的思想。这样您在开发一个项目时思路会开阔一些,比如您
会想到把SQL语句与您的JAVA代码分开,再比如您会考虑把您的业务逻辑配置到XML或者数据库中,这样整个项目就很容易扩张了。
五、 熟悉主流数据库。其实真正比较大的项目都是有人专门做数据库的,但往往很多项目要求作为(高级)工程师的您也参与数据库的设计以及SQL的编写。所以为了
更好的为国家做贡献,建议您还是多了解一些主流数据库,比如SQLSERVER,ORACLE,多连接SQL和存储过程以及触发器。如果您不是“科班”出
身,您还需要补充一些数据库原理方面的知识。
六、 精通一种或两种WEBServer。
因为作为JAVA工程师,特别时
想成为高级JAVA工程师的您,您不可避免地要部署您的项目到WebServer上,而且只有当您精通一种WebServer,您才可能最大限度地使用它
的资源,这往往可以节省很多时间和精力。
七、 UML。
您肯定想成为高级工程师,因此您有必要了解或熟练或精通UML,这取决于您有多大决心想成为高级工程师和项目经理。在比较正规的开发团队
中,UML是讨论项目的交流工具,您要想做一个软件工程师,您至少要能看懂,您要想做高级工程师,您要能通过它来描述您对项目的理解,尽管这不是必须,但
却很重要。
八、 站在高度分析问题:
这不是一个知识点,也不是通过书本就能学得到的。只所以提到这一点,是因为我比您还着急,我希望您更快的成为一个高级的软件工程师,而
不是一个一般的软件工程师。希望您在工作中多向您的系统分析员、需求分析员、系统设计员学习,多站在他们角度上去看您在开发的项目。在最好在项目之初先在
您的脑海里对项目有个大致的分析、设计,然后和他们进行比较,找找差别,想想缺点。
九、 工具。
您在这个阶段可能接触到不同的工具了,尽管您还需要使用JB或者IDEA,但能可能对
ROSE,Together要多了解一些,因为您要画UML了。不要再对Dreamweaver等HTML编辑器情有独钟了,那些JSP页面让初级程序员去写吧
微观方面
1.Core Java部分
这是最基础的,对于一个java高级开发/设计人员,你需要对这一部分达到精通的水平,重点内容如下:
a.面向对象编程思想(封装继承多态接口)
b.字符串处理
c.java.lang包,java.util包等常用包
d.java异常处理
2.Java高级部分
a.Java I/O流
b.Java多线程技术
c.Java网络编程
d.Java Swing
后两项可以了解即可,如果项目需要可以深入研究
3.前端基本技能
* HTML + CSS网页开发
* JavaScript
* Jquery
* 浏览器兼容性 CSS hack(了解)
4.熟练使用JSP + Servlet进行开发
5.MVC设计模式,原理,以及相关框架,如Struts
6.SSH框架
7.缓存技术 session & cookie
8.熟练使用一种以上Java开发工具(Eclipse/MyEclipse/Jbuilder/Jcreator/IntelliJIEDA/NetBeans)
9.熟练使用XML
JDOM w3c.dom SAX
10.Java设计模式
工厂模式,单例模式 ==
11.Java反射机制
反射的各种用法
12.了解或熟悉 C, C++, .NET
13.熟悉JDK的配置,环境变量
14.数据库oracle必学,其他最好了解一种以上(mysql,sql server,access==)
oracle:视图,索引,存储过程,触发器,游标,包,常用函数 ==
15.数据库原理
事务的原理,锁机制,表连接,复杂查询语句(工作经验),性能调优,锁表以及解决方案==
16.JDBC,连接池
17.Ajax,反向Ajax
18.HTTP协议,request 和 response的原理,HTTP status(了解常用的),Https原理
19.熟悉Linux基本命令,使用过Linux/Unix系统,可以编写shell脚本,可以在Linux上部署项目
20.了解windows系统批处理脚本bat
21.了解HTML5,最好学习过
22.熟悉一种JS框架,如Prototype
23.J2EE原理 熟悉一种以上web容器如Tomcat,JBoss,websphere,weblogic==
24.熟悉ant或maven
25.熟悉一门脚本语言,如python ,ruby
26.了解php/ asp
27.了解ftp协议及原理
28.熟练使用Junit测试,熟悉Mockito等测试工具
29,熟悉javac,javadoc,native,native2ascii等常用命令
30.熟悉常用的排序算法,如冒泡排序,快速排序等,最好自己研究过一些的算法。
31.了解Flex(不学也没关系)
32.了解敏捷开发模式
33.工作流workflow至少用过一种,如OSworkflow,了解原理
34.使用过VPN了解其原理
35.熟悉jstl表达式和el表达式
36.熟悉webservice,WSDL,SOAP
37.图片处理,如图片上传,预览,限制大小等
38.版本控制工具,CVS VSS SVN
39,JSON技术,JSON+AJAX
40.分页技术,最好自己实现过不仅仅是用过要知道原理
41.Java Mail
42.Java读写txt,excel,JXL技术
43.JVM原理,JVM内存管理,GC,Java堆栈池
44.熟练使用下面的工具:
office办公软件,word,excel,ppt等
plsql,sqldevelop 数据库开发工具
outlook大公司都用
ue编辑器
浏览器控制台,调试
SHH/PUTTY 远程
45.UML建模工具Rational Rose等
46. 使用log4j
47.使用过开放Api如网络,腾讯街景,新浪微博等
48.页面静态化技术(伪静态页面)
49.报表技术,使用过报表制作工具,如水晶易表。
50.定时任务,如Spring batch ,学会自定义batch任务(不适用第三方工具)
51.了解uuid
52.b/s 和 c/s架构
53.正则表达式
54.了解jndi jms
55.ERP
56.UNICODE编码,乱码解决
57.开源网络编辑器,如ckEditor
58.二进制原理
59.使用过,了解过开源论坛框架,如discuzz
60.GWT,Closure框架
61.了解大数据,云计算
62.搜索引擎搜索技术
63.软件工程,项目管理
5. java学习线路图是怎样的
Java学习路线图概述
学习Java需要遵循循序渐进的过程,以下为一份详细的学习路线图,覆盖从基础到高级的关键技术,以帮助你成为中高级Java程序员。
一、Java基础
学习Java基础是成为Java中级程序员的起点,包括Java SE基础、配套学习视频和资料等。
- Java SE基础:涵盖Java基础概念、语法、面向对象编程等。
- 配套学习视频:如“2020年抗疫之作Java基础进阶13天”。
- 配套资料:提供学习资源和代码示例。
二、数据库
数据库学习是Java开发工程师的必修课程,包括关系型数据库和非关系型数据库的学习。
- 关系型数据库:如MySQL、Oracle等,学习数据库操作、SQL查询等。
- 非关系型数据库:如Redis、MongoDB等,了解NoSQL数据库特点。
- 配套学习视频:如“5天玩转MySQL”、“深入Sharding-JDBC分库分表”等。
三、前端技术
学习前端技术,包括HTML、CSS、JavaScript等,是构建动态站点的基础。
- 前端框架:如Vue.js、React等,学习前端工程的编写。
- 配套学习视频:如“2018年Vue.js深入浅出教程”、“PHP基础完整视频”等。
四、动态网页技术
动态网页技术是中级程序员服务器端编程的基础,包括Servlet、Request、Response等核心概念。
- Javaweb核心技术:深入学习动态站点开发。
- 配套学习视频:如“27天超系统JavaWeb快速入门”等。
五、编程强化
深入学习多线程、JVM优化、NIO等高级编程技术,提高编程能力。
- 多线程高级:深入理解线程内存、通信等。
- JVM优化:学习JVM底层调优技术。
- NIO:同步非阻塞IO技术提高效率。
六、软件项目管理
掌握项目管理、团队协作开发等技能,包括Git、SVN、Maven、Jenkins、Sonar等工具。
- Git和SVN:团队协作开发工具。
- Maven:项目快速构建工具。
- Jenkins:项目持续集成工具。
- Sonar:项目代码质量管理工具。
七、热门技术框架
学习主流框架,如Spring、MyBatis等,提高开发效率。
- Spring框架:生态系统覆盖多方面解决方案。
- MyBatis框架:ORM思想进行数据库操作。
八、分布式架构方案
学习分布式架构,包括Dubbo、SpringBoot、Spring Cloud等技术。
- Dubbo:高性能RPC服务。
- SpringBoot:简化应用搭建。
- Spring Cloud:服务发现、配置中心、负载均衡等。
九、服务器中间件
学习服务中间件,包括远程服务框架、消息队列等,实现高效数据传输。
- 远程服务框架:如Dubbo。
- 消息队列:如RocketMQ、Kafka。
十、服务器技术
学习服务器相关技术,包括虚拟化、Linux、Nginx、Tomcat等。
- 虚拟化:如VMware。
- Linux:服务器操作系统。
- Nginx:反向代理服务器。
- Tomcat:项目发布服务器。
十一、容器技术
学习Docker和Kubernetes等容器化技术,提高开发效率。
- Docker:应用容器引擎。
- Kubernetes:管理容器化应用的平台。
十二、业务解决方案
学习搜索、日志分析、工作流引擎、任务调度等业务场景解决方案。
- 搜索业务场景:解决实际搜索需求。
- 日志收集与分析:实现日志收集和分析。
- 工作流引擎:提高业务流程自动化。
- 任务调度:实现任务自动化执行。
- 地图开发平台:地图功能集成。
- 支付开放平台:支付接口集成。
- 图表可视化:数据可视化展示。
以上Java学习路线图覆盖了从基础到高级的关键技术,通过系统学习,你将能够成为一名具备实际项目开发能力的中高级Java程序员。