其他

Java后台开发精选知识图谱

2017-05-31 程序源


作者 | 曹真,编辑 | ShirleyZ

原文 | http://www.jianshu.com/p/6c32868876f1

1.引言:


学习一个新的技术时,其实不在于跟着某个教程敲出了几行、几百行代码,这样你最多只能知其然而不知其所以然,进步缓慢且深度有限,最重要的是一开始就对整个学习路线有宏观、简洁的认识,确定大的学习方向,这样才能事半功倍。


我们经常会遇到这样的情况:


一开始学习一门新技术的时候,面对着很多很多陌生的名词,无从下手,一度想要放弃。


本文首先会给出关于java后台开发和前端适配的一些建议学习路线,接着简单解释一些应用到的高频技术,帮助大家理解和学习,算是一个入门篇。


2.Java后台开发知识一览


1、后端


  • WEB服务器:Weblogic、Tomcat、WebSphere、JBoss、Jetty

  • 核心框架:Spring Framework

  • 分布式服务框架 Dubbo(感谢@浅浅浅丿忧伤指正)

  • 安全框架:Apache Shiro

  • 视图框架:Spring MVC

  • 服务端验证:Hibernate + Validator

  • 布局框架:SiteMesh

  • 工作流引擎:Activiti

  • 任务调度:Spring Task + Quartz

  • 持久层框架: MyBatis + MyBatis-Plus

  • 数据库连接池:Alibaba Druid

  • 缓存框架:Ehcache 、Redis

  • 日志管理:SLF4J 、Log4j

  • 会话管理:Spring-Session

  • 工具类:Apache Commons、Jackson 、Xstream、Dozer 、POI

  • 消息队列: ActiveMQ

  • 云存储:阿里云 OSS 腾讯云 COS 七牛云

  • 版本管理: git(推荐) svn


2、前端


  • JS框架:jQuery 1.9。

  • 前端框架:Angular JS + Bootstrap + Jquery

  • CSS框架:Twitter Bootstrap 2.3.1

  • 客户端验证:JQuery Validation Plugin 1.11。

  • 富文本在线编辑:CKEditor

  • 在线文件管理:CKFinder

  • 动态页签:Jerichotab

  • 手机端框架:Jingle

  • 数据表格:jqGrid

  • 对话框:jQuery jBox

  • 下拉选择框:jQuery Select2

  • 树结构控件:jQuery zTree

  • 日期控件: My97DatePicker


3.高频技术(可大致浏览,作为目录查看)


  • Spring


  • 每个模块的功能如下:

    • 核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。

  • Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。

  • Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。

  • Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理。

  • Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。

  • Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。

  • Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。

    参考链接:

    https://www.ibm.com/developerworks/cn/java/wa-spring1/


  • RESTful风格



  • Mybatis
    MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。


  • Hibernate


参考链接:
Hibernate官网


  • Redis
    Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。


    特点:

    • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。

    • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。

    • Redis支持数据的备份,即master-slave模式的数据备份。

      参考链接:

      Redis官网


  • Zookeeper
    Zookeeper 分布式服务框架是 Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等等。



DUBBO
DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。


最近热文:

邀你参加11期 程序员专场相亲活动

加入群请加微信2518988391(备注岗位)

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存