从学习Java开发到现在虽然也已经快三年了,但是要说到分享一下经验实在是不敢当。权当是对自己的一个总结吧,希望大家不吝指教,互相交流。

   照旧,还是现来整理一下我学习Java的一个路线图吧,然后按照这个路线图来谈谈我的一些感受。

一、Java核心

   这是学习Java的基础,掌握程度的深浅甚至直接影响后面的整个学习进程。Java的核心主要包括几个部分:1、初级的有语法基础、面向对象思想。学习任何一门语言语法都是必须的,因为Java的接近自然语言,也是一种相对比较容易学的语言。同时面向对象编程更是其核心思想,要理解其实只要记住一句话就行了,那就是:一切皆是对象。2、中级的IO流、多线程、反射及注解等。IO流程、多线程等是相对比较高级一点的了,通过学习我们会发现这些都很有用而且很有趣。例如我们可以读取一个Excel文件、将一个文件分离,做一个时钟、使用多个线程发送邮件等等很多有意思的事。另外反射及注解更是后面流行框架SSH等的基础,在使用中你便会慢慢感受到它的无穷魅力。3、高级一点的就是设计模式和框架之类了。要学习好一门语言,仅仅会使用还是不够的,我们不仅要深入研究其原理,而且还要找到其一些共性的东西,从而减少反复的劳动,让代码可重用、更可靠且更容易被别人理解。

二、前端Web

  现在来说Java最流行的应用还是Web开发。那么作为Web开发,对于前台的知识的学习也是必须的,当然并不是一定要按照前端工程师的标准去要求。但是一些基础的知识也是必须要掌握的,毕竟Web应用是前台和后台的一个交互的过程。像HTML、CSS、Javascript等都是基础的知识,另外作为开发人员对目前最流行的Javascript框架Jquery更是必学不可的。

三、数据库

  有人说,所有的应用无非就是数据的输入、处理到输出的过程。期间同时可能还会涉及到数据的存储问题。对于结构化的数据,我们常用的还是像Oracle、Mysql和PostgreSQL之类的关系型数据库。同时针对数据库编程还是PL/SQL需要学习。使用Java访问数据库的话还有JDBC。那么对于非结构化的数据以及大数据该如何处理呢?其实这里也已经有了非常成熟的解决方案了,那便是Hadoop。就Hadoop而言他并不是一种思想,更多是一个实现了Mapreduce模式的框架。

四、J2EE

  好了,前面这么多准备的工作。下面我们进入正题。作为Java开发,CoreJava是核心,而作为JavaWeb开发,我认为Servlet才是核心。Servlet是服务器端的Java应用程序,但是与普通的Java应用程序不同的是,它是由web服务器来加载启动,即我们常说的Servlet,如Tomcat便是servlet容器。另外谈到J2EE开发,这里有一个重要的模型不得不提一下,很多人其实已经想到了,那便是MVC(模型-视图-控制器)模型。在传统的web开发中,往往是JavaBean充当模型、JSP做视图而Servlet作为控制器。

五、框架

  说到框架,其实已经提到了著名的MVC模型,SSH(Struts+Spring+Hibernate)就是一个非常好的实现。对于每一个框架的作用,我想就不用多说了,毕竟这里并不是想写一本教程。另外还有工作流开发的JBPM,搜索引擎Lucence及使系统对外提供接口的webservice应用组件等都是应该要掌握的。

六、服务器

  关于服务器,像tomcat、jboss、weblogic及websphere等便不提了,因为太普遍了。这里要说的是Nginx,

Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器。其以占有内存少,并发能力强而著称,连新浪、网易、 腾讯这类知名企业也在使用,所以还有什么理由不去学它呢?

七、工具

 这里主要介绍几个开发辅助工具。如日志工具Log4j、测试工具Junit、版本管理工具SVN还有项目管理maven等。

另外还有第三方插件Ectable。

八、项目示例

Springside是以Spring框架为核心的J2EE应用参考示例,是JavaEE中的比较主流的技术选型及最佳实践的总结与演示,非常值得一看。把它看透了,J2EE就差不多了甚至是比较厉害的了。

九、话外话

其实说到底,对于技术的学习,有一个规则是通用的,那便是实践。把学习到的东西马上用起来做出一个示例来,我认为是一种比较好的学习方法。首先它是对零散知识的一个自然总结,另外通过一些小示例的实践,可以增加学习的兴趣。而且可以通过示例,深入学习其实现的原理,加深掌握的程度且能更快的应用到实际开发中,提高工作效率。

转载于:https://www.cnblogs.com/yisawatbek/p/7632979.html

我的学习JavaEE路线相关推荐

  1. 一篇文章一张思维导图看懂Android学习最佳路线

    一篇文章一张思维导图看懂Android学习最佳路线 先上一张android开发知识点学习路线图思维导图 Android学习路线从4个阶段来对Android的学习过程做一个全面的分析:Android初级 ...

  2. Python爬虫你需要积累这些基本知识_Python学习基础路线

    Python爬虫你需要积累这些基本知识_Python学习基础路线 爬虫定义.分类和流程 爬虫定义 网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则, ...

  3. Docker 学习实战路线

    每日一图 FileName: Docker.md Auther: alvinszhang Email: alvinszhang@outlook.com CreateDate: 2021-10-20 D ...

  4. C/C++ Linux后台服务器开发高级架构师学习知识点路线总结(2021架构师篇完整版)

    C/C++ Linux后台服务器开发高级架构师学习知识点路线总结(2021架构师篇完整版) 前言: 小编之前有跟大家分享过一篇架构师体系知识点总结的文章,今天在原来的基础上有所改变更新(2021版). ...

  5. C/C++ Linux后台服务器开发高级架构师学习知识点路线总结(2022架构师篇完整版)

    C/C++ Linux后台服务器开发高级架构师学习知识点路线总结(2021架构师篇完整版) 前言: 小编之前有跟大家分享过一篇架构师体系知识点总结的文章,今天在原来的基础上有所改变更新(2021版). ...

  6. C语言研究性学习的路线之号外:一些朋友所提问题的反馈及第9章 指针

    首先感谢CSDN的朋友们,写本书困惑时总能受到你或TA的启发和指导,在此再次表示诚挚的感谢. C语言研究性学习的路线计划是本教材配套的学习或教学参考(教与学是一枚硬币的两面),在此发表为了记录,但也想 ...

  7. 30分钟带你了解软件测试行业,附送一份超清晰的学习规划路线...

    我个人进入软件测试这个行业也小十年了.回首过往,很感激在初入软件测试职场有大佬的提携,让我明白作为一个软件测试工程师应该具备的能力和对该职业的认知.也很感激,之后遇到赏识我的领导,给予我机会,可以带领 ...

  8. 浅谈学习Javaee所需安装的一系列工具(Tomcat篇)

    浅谈学习Javaee所需安装的一系列工具(Tomcat篇) 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.Tomcat是什么? 二.使用步骤 1.下载. 2.环 ...

  9. Python学习六大路线,教你快速上手

    最近几年随着互联网的发展学习Python人越来越多,Python的初学者总希望能够得到一份Python学习路线图,小编经过多方面汇总,总结出比较全套Python学习路线,快速上手.对于一个零基础的想学 ...

最新文章

  1. 洛谷——1115 最大子段和(区间DP)
  2. group by详解
  3. ROS 使用参数以及相应的 .launch 文件编写
  4. 【wpf WebBrowser 清空网站的CookieSession 清空用户登录状态】
  5. map-reduce的八个流程
  6. 如何在 ASP.NET CORE 中获取客户端 IP ?
  7. CUDA和LAPACK混编的MakeFile文件
  8. DRAM的动态刷新问题总结
  9. 力扣-53 最大子序和
  10. C语言的本质(2)——二进制、八进制、十六进制与十进制
  11. 如何隐藏UITabBar 已经如何使已经隐藏的TabBar重现(原创)
  12. 不容易系列之(3)—— LELE的RPG难题 (递推dp)
  13. 使用php glob函数查找文件,遍历文件目录(转)
  14. android的环境搭建与配置
  15. 个股解析软件排名推荐,股票行情分析软件排名
  16. 人工智能——皇帝的新脑还是人类的终结(学习笔记)
  17. 遥感影像、DEM免费下载以及MPT制作
  18. 恋人日记服务器维护中,知乐日记:恋人不会在最终相遇 因为他们本来就一直在一起...
  19. Linux/Centos nethogs 按进程监控网络带宽
  20. logrotate 详解

热门文章

  1. scala初学之Tuple、Array、Map、文件操作入门实战
  2. python画精美图案_Python语言的魅力------完美图案
  3. js删除数组中指定元素_js中数组操作详解
  4. java导出excel float_【Java】导入导出Excel表格
  5. 求n的阶乘的算法框图_算法|从阶乘计算看递归算法
  6. html div bgcolor,HTML body bgcolor transparent
  7. c++ linux 环境,C++ 环境设置
  8. python移动端web开发代码_移动web前端开发,前端开发工作总结,移动端页面开发-我主页-一个前端程序猿的博客...
  9. xshell 软件的窗口一直是置顶 调整为不置顶
  10. vsftpd的虚拟账户配置