学习Java编程,有两个方面建议:一是自学,二是去培训机构
1、自学:需要自己的搜集资料学习,遇到问题各位找,费时费力
2、培训:学习系统规划学习时间,课程安排,就业支持,在短时间内达到初级水平。
一、关于自学需要掌握的知识有:
一、JavaSE基础
建议初学者看看这套基础视频
1.1、J2SE
JAVA 开发基础知识 | Eclipse 开发环境 | J2SE 5.0 API | J2SE 8.0新特性 | 多线程技术 | Socket 网络技术
Regular Expression | Java反射技术 | Properties技术 | 各种实战设计模式| Java Debug技术 |
面向对象设
计原则详解 | 实例解决面向对象设计 | 面试题内部详解 | 面试答题技巧详解 | AWT/SWING技术
1.2、实战数据结构
数据结构实战训练 | 数组、链表等常用数据结构实战
1.3、正则表达式
正则表达式基本语法。预搜索、断言、分组。 JAVA操作正则表达式Matcher/Pattern
1.4、反射机制
JAVA的动态性、Reflection技术、JVM类加载器、Class对象、Method等。
1.5、CHAT项目
Chat项目通过完成一个模拟的在线聊天系统,主要锻炼大家对于TCP/IP、Socket编程、C/S模式的编程、线程的运用等方面的能力。
1.6、坦克大战单机版/图片版/网络版
这三个项目通过大家喜闻乐见的小游戏的形式来锻炼大家对于JavaSE综合运用的能力,并且能够初步运用面向对象的编程理念,锻炼初步的设计能力,并基本掌握多线程的编程。
二、Java Web开发
2.1、数据库技术
Oracle 基础管理;SQL 语言PL/SQL
语言;触发器、存储过程;MySQL,SQLServer简介;业界常见问题设计;数据库表的设计范式;数据备份与移植;多表连接难题详解;嵌入式数据库应用;
2.2、JDBC技术
JDBC基础; 连接池技术;使用设计模式开发连接池;详细扩展与测试池效率;
2.3、HTML4 & CSS & JavaScript
HTML 语言;CSS 语言; JavaScript 语言;JS常用模版;后台管理模版; DOM; JS操作CSS; JS操作DOM;
ECMAScript; JS操作DIV;protoype;js基于对象编程; ;Firefox和firebug调试技术;
2.4、Bootstrap
前端css框架,让我们的学生不会美工也能做出漂亮的页面;
2.5、Jquery
Jquery基本技术;Jquery使用插件;
2.6、Http协议深入
使用HttpWatcher深入理解协议内部机制;
2.7、JSTL标签库
JSTL核心标签库,JSTL函数标签库、JSTL格式化标签库,JSTL之XML解析标签库、自定义标签技术;
2.8、JSP & Servlet
Servlet 技术;JSP 技术; JSTL Tag Library 技术; Filter&Listener技术; 报表系统;
FileUploading; Tomcat 服务器技术;servlet 过滤器和AOP编程;servlet监听器;
2.9、SCM技术
CVS初步;SVN简介;
2.10、Java Web实战演练
综合运用所学知识; HTML + CSS + JS; JSP + Servlet + JavaBean; FileUploading; 分页技术;
数据校验; MVC初步; Filter; Listener;
2.11、XML 技术
XML + XSL + DTD/Schema;XML数据解析; XML应用详解;XQUERY技术;CAST技术(XML数据和对象互转);
2.12、AJAX技术
AJAX技术基础; AJAX技术框架; AJAX技术调试技巧;
2.13、项目实战
《基于servlet/JSP技术的电子商务网站》、《基于AJax和Jquery的BBS论坛系统》、《基于Apache Commons
FileUpload的网络硬盘系统》
三、主流框架技术及项目实战
3.1、流行Web 框架简介
Struts2/spring4.x/hibernate4.x/spring mvc / WebWork /mybatis等简介
3.2、MVC 模式
Model View Controller 模式深入
3.3、SpringMVC
springmvc概述; springmvc的开发流程;springmvc基本配置; springmvc的注解开发; 常用注解;
service,control,reposity,reques+mapping,responseboby等
3.4、Struts2.x
Struts2的基本开发流程;action类的三种实现方法; XML配置的几种方法; Struts2国际化支持; Struts2异常处理;
Struts2的验证框架; Struts2的多模块配置;拦截器;
3.5、Hibernate4.x
Hibernate基本开发流程; ORM简介; 模拟SQL语句的自动生成; hibernate的检索; 性能优化 一级缓存 二级缓存 查询缓存 事务与并发
悲观锁、乐观锁
3.6、Spring4.x
简单工厂模式 ;抽象工厂; 工厂方法模式; Spring3简介; Spring的基本开发流程; IOC、DI; Bean的配置;
SSH框架的整合;Spring的注解开发; Spring AOP开发 代理模式 静态代理、动态代理、CGLIB;
3.7、Mybatis
Mybatis简介; Mybatis的开发流程; 配置文件 ;映射文件; 面向接口的Mybatis开发;
3.8、手工编写实战开发 struts2.x框架
亲自动手开发struts2.x框架,融入设计模式,让大家的对struts的核心机制烂熟于胸!
3.9、手工编写实战开发 Hibernate4.x框架
芯学苑名师亲自带领你开发hibernate框架,让你真正将ORM框架理解透彻!
3.10、手工编写实战开发mybatis框架
完成另一个ORM框架mybatis的开发工作!
3.11、手工编写实战开发 Spring 4.x框架
Spring是最著名的框架之一!也是业界应用范围非常广泛的框架!是否对其核心机制有透彻了解,往往是高薪的关键!因此,芯学苑名师带领你完成spring框架核心机制的开发。当别人还在探讨如何使用spring时,你已经更上层楼!
3.12、项目实战
《基于struts2+spring+mybatis的电子政务系统》、《基于spring MVC+hibernate的在线考试系统》
当然,这套视频教程蛙课网上就可以观看,如果你想了解这套视频教程的话就赶快观看吧。
~
对于这个问题,我觉得自己很有发言权,因为我就是从SSH那个时代过来的。
关于SSH
我刚入行的时候,SSH还是挺火的,额...大概是十年前了。
-
Spring:首先现在Spring依然很火,也归功于Spring一直在快速迭代升级,现在大多数项目都在用Spring;而且现在Spring下面的子框架非常的多,这里说的Spring主要还是指Spring Framework。
-
Hibernate:一直没有被淘汰,但是一直也火不起来,现在更多的项目在用Mybatis或者JPA。说实话,我觉得Hibernate还是挺强的,但是想用好Hibernate不容易。
-
Struts:Struts1和2我都有用过,到现在已经没落了,新项目很少有人在用,至少我们好多年前就不用了(除非是一直维护的老项目),现在Struts的工作基本上被Spring MVC代替了。而且Struts一而再,再而三的曝出漏洞,在信息安全方面有着很大的隐患。
为什么说SSH过时了?
现在很流行的一个架构是前后端分离,为什么这种架构这几年会很火,我觉得还是由于移动端的快速发展。
以往的系统都是以PC端为主,开发一套程序,页面和后端代码都在一个包里,部署好了就能用。
但是现在,不仅仅需要支持PC端,还要支持各种移动端,如果再专门为移动端开发一套应用,不仅费时,而且需要维护多套程序。
所以现在前端就是纯页面,后端只提供接口,前后端的交互是通过Http接口。
现在学什么?
-
对于SSH来说,Spring可以好好学习一下(当然要学习新版本),Hibernate可以了解一下,Struts就不要再学习了。
-
现在单体应用,使用最多的是SSM组合:Spring + Spring MVC + Mybatis;
-
关于JPA,我认为大多数的系统不适用,它适用于微服务场景下,对数据的查询都是单表查询(SQL简单),大多数公司的项目都到不了这个程度;不过虽然可能用不上,还是要学习一下。
-
Spring boot:现在很流行的一个框架,提供了各种启动器、简化配置、方便集成、有助于开发效率。
-
如果接触前后端分离,甚至是微服务的架构,需要熟悉HTTP接口、Rest API,最好可以掌握一套微服务框架,例如Spring Cloud、或者Dubbo(如果不是工作需要,我推荐Spring Cloud)。