想要通过学好Java技术找一份实习工作,你需要掌握的技术知识点有这些:
Javase:java基础,既然是基础,那肯定是最重要的,所以学习的时候也是需要重点学习的地方。
数据库:为什么要学数据库呢,因为我们的web数据需要持久化到磁盘上统一管理,而数据库无疑就是最好工具。目前主流的关系型数据库有mysql 和oracle。我建议先学mysql。为什么呢mysql相比Oracle难度要低,而在国内应用场景又是最多的。
前端基础:既然是做一个网站,那肯定不能是后台的数据,这样用户也是没办法看的,所以需要学习前端知识,把数据展示到页面上,而对于后台人员来说,学习阶段只需要学习前端基础就可以了。Html 、js、css、jquery就可以了。当然到离开后期你也可以学学专门为后端人员定制的前端框架,比如,layui,easyui。如果还觉得不够可以学学前端专用框架。比如vue element ,但是大前提是把自己的后台学到位了再学其他的。
Javaweb:jsp、servlet。为什么用了html还要学jsp呢。因为jsp和Java是无缝连接的。学了javaweb以后就可以自己做一个项目出来了,比如你想做一个个人网站。你可以给你们学校做一个教务管理系统都是可以的。
Spring:后台框架。为什么要用框架呢,可以快速开发,并且降低了耦合。Spring的AOP支持允许将一些通用任务如安全、事务、日志等进行集中式管理,从而提供了更好的复用,Spring的ORM和DAO提供了与第三方持久层框架的良好整合,并简化了底层的数据库访问。
Mybatis:持久层框架,当然持久层还有一个框架应用也很广的,那就是hibernate,一个是半自动的一个是全自动,而在国内应用最多的是mybatis,在国外用得最多的是hibernate,具体原因,大家可以百度查查。持久层框架有什么好处呢?如果你用原始的jdbc做开发,那你得自己来管理每一个连接,连接的打开和关闭,都是有开发人员来操作的,而且jdbc也没有实体的映射,需要我们写代码把值set进去,而用了框架这些都交给框架去做了。
Maven:mavne是一个工具,他的核心是pom.xml,这个配置文件,pom的全英文是project object model,意思是对象管理模型,也就是把项目也看成一个对象来操作了。给我们带来最直观的好处就是依赖问题,以前我们需要自己下载jar包,在构建到项目中,但是有了maven只需要写jar的依赖就可以自动给我们下载了。
Springboot:springboot是基于maven的,springboot最明显的特点就是开箱即用,也就是构建了一个springboot项目 直接就可以做开发了,而不需要像我们自己配一个springmvc的框架一样的需要去配置大量的xml文件。让我们开发人员更着重于业务上的开发。
Redis:前面的mysql,oracle是关系型数据库,什么是关系型呢,就是一对一 一对多 多对多。有表与表之间有这些关系在,所以就叫关系型数据库,而redis就是非关系型数据库,也就是他存储数据之间是没有这些关系,他是以键值对 list set方式存储的。
Springcloud:微服务框架,什么是微服务呢,就是把我们传统的单体服务拆分开了,就是将一个单体架构的应用按业务划分为一个个的独立运行的程序即服务,微服务架构其实就是一个分布式架构,具体的就不详细的讲了,因为这里面牵涉到的解决方案是灵活的。
Linux:linux的应用通常都是在底层,那我们上层开发人员为什么也要学它呢,其实我们的主要应用是在服务器上,也就是服务器的系统。当然系统也有Windows的,而Windows的和Linux的区别就是Windows服务器有问题是微软来解决,很方便:别人替你做,但也不方便:你遇到问题都得让他官方来解决漏洞,但是Linux就不一样,他是完全开源的,有问题自己马上就可以解决,只要开发人员能力够硬去改内核都是可以的。
Git:版本管理工具,与之对应的还有svn,最大的区别在于git是分布式系统,而svn不是分布式的,因为你们进企业以后都是协同开发 也就是一个项目小组里面几个小伙伴一起开发一个项目,所以就要有一个代码的管理工具来保证你们做的不同模块可以整合,所以说git也是需要学的。
在我们想要找一份Java实习工作,首先我们要进行分析,分析什么?企业在实习期需要什么人才,从哪分析,招聘网站。我就从百度java实习招聘来分析。
通常招聘实习生的简历就只有前三条有用,前两条更是重中之重,后面都是层级递减,重要性没有那么强,(大部分套路,小部分不敢保证)但为什么写这么多条呢?
没错,显得企业比较高端,hr招人比较专业,写的这么牛逼,其实招过去也就是个打杂的,实习期不打杂,难道还指望你能干什么大事么。所以我们只需要看前四条就行了,其他忽略,当你有想进去的公司,就拿他们的招聘自己去分析,成功几率能大很多。
1、熟悉分布式后端服务开发流程与规范。
这句话内涵是什么?就是说你要是正统学习的,脑子里要对java有一个大概框架,不管填不填充,只有框架稳定了,你填充进去的东西才是有用的,而在实习期间,表现出来的就是你不会一问三不知,说个专有名词最起码有点印象,大概在哪个模块。这样的人招过去实习打杂才有点用,我看了一下其他评论的流程图,比较推荐黑马程序员的,不过前几张图就够实习用的。
2、熟练掌握一些框架。
这真的是实习必备的东西,但真的需要熟练掌握么?不,你会看,能稍微修改,尽最大可能的保证不出错,初步掌握但不生疏就行了,具体形容的话,就是你驾照拿到手后再开加起来10个小时的车那种熟练度。
是否真的需要掌握那么多框架呢?最起码初步掌握两个左右,其他必须要比较了解。别人问问题能答上来。实习三个月后基本就熟练上手了,但别跟hr说我只是比较熟,事实上工作一两年的人都不见得称得上熟练这个词,其他几点的熟练也基本就是初步掌握的意思,自己去推断。
但放在一二点的基本就是工作的主要要用到的内容,所以他写什么,你就要在这方便多挖掘、多学习一些。宁愿发疯学习,超过他们预期,也不要差一点点让自己后悔。
3、精通多线程开发与线程池的使用。掌握一些体系。
多线程做到精确程度对于大部分实习生有多难准确实现都知道么!但你需要做什么?在无关紧要的地方进行涂涂改改而已,别慌,没那么可怕。谁都不会让3年以内的程序员挑大梁。
其他
其他几点虽然也有要学习的,但并没有前几条那么重要。但重要的还是真的重要。
奉劝一句,在实习前,自己先去找一些和以后工作方向相关的项目,边看边自己动手完成一遍。直到自己一个人能独立把一个小项目完成,那么你已经超过绝大部分人了。
你学到了,那就是你的,你甚至可以自己把小项目修改一下,再在简历上写,独立完成了一个小项目。因为你学会了,你也会直接动手做了。进公司实习也就领先别人好几步了。
最后:
如果你现在也在学习Java,在入门学习Java的过程当中有遇见任何关于学习方法,学习路线,学习效率等方面的问题,都可以随时申请加入我的Java新手交流群:798844620,这里面聚集了很多正在学习Java技术的初学者,其中不乏也有正在从事Java技术开发的大牛,有任何不懂的地方都可以随时在里面交流,群文件里面还有我做Java技术这段时间整理的一些学习手册,面试题,开发工具,PDF文档书籍教程,需要的话都可以来进行下载, 在不忙的时候我也会抽出相应的时间来给大家进行解答。