Java通过将近20年的发展壮大,框架体系已经丰满俱全;从前端到后台到数据库,从智能终端到大数据都能看到Java的身影,我的感受作后台进要求愈来愈高,愈来愈难。html
为何如今Java程序员愈来愈难作,一是Java框架体系众多,学习成本提升,每个细分问题又有不少可选方案;二是通过移动互联网的洗礼,之前单机单线程那一套行不通了,如今面临的是高并发低延迟,你可能要掌握缓存、分布式、集群、微服务等;物联网时代渐渐到来,将IT行业技能要求推向一个新高度,你的产品要提供7x24小时不间断服务,就像家里的自来水管,打开阀门水不间断流出来。面对成千上万的智能终端上传的海量数据,从数据压缩上传、优化存储、管理、备份防灾、分析利用等方面,要掌握的技能还不少。前端
因此我把这些年收集的资源共享给你们。大体分为Java基础框架,网络通信相关框架,论文算法类、工具类型框架。java
1、Java基础框架
- spring Framework
对于java读者来讲spring再熟悉不过了,它就像一个拥有无限插孔的插线板,大部分框架均可以集成到spring容器当中即插即用,固然魔力不只于此。
- ORM Framework Hibernate vs mybatis
Hibernate和mybatis都是目前最流行的ORM框架,各有优缺,仁者见仁。
2、网络通信相关框架
- dubbo分布式服务框架
- zookeeper分布式应用程序协调服务
- netty网络应用通信框架
- MQ消息队列
知名的消息队列框架有ActiveMQ、RabbitMQ、Kafka,RocketMQ这些,根据需求场景选择不一样的消息队列框架。
- 序列化框架protobuf
protobuf是google 的一种数据交换的格式,相似json和xml,它独立于语言,独立于平台。做为一种效率和兼容性都很优秀的二进制数据传输格式,能够用于诸如网络传输、配置文件、数据存储等诸多领域。
框架部分暂时介绍这么多,各个框架间可灵活组合使用;之因此整理出来分享给你们,有如下几个缘由:git
- 它们都是开源的,而且获得普遍使用和验证
- 它们是解决某个问题的最佳选择
- 足够好的灵活性、扩展性让你轻松应对需求迭代
- 它们都是基础框架,基础意味着重要,就比如房子的稳固程度取决于地基是否稳固
还有吗?固然有,程序员
3、算法类
4、工具类
工具类不详细罗列网址了,能够本身去搜索一下。github
- mvn仓库:http://mvnrepository.com/
- Json库:fastjson / Gson
- Collections库:Guava
- Html内容匹配:Jsoup
- Http Client:Apache HttpClient
- JDBC Pools: Commons DBCP / Druid
- 模拟测试:Mockito
- 代码简化:lombok
- 图片处理:Thumbnails
- Mail:JavaMail API (compat)
- 定时器:Quartz
- 权限控制:Shiro / spring Security
- 长链接:spring-websocket
- 即时通信:Openfire
- NoSQL:Jedis / spring-data-redis / spring-data-mongoDB
本次Java进阶资料汇总整理就到这里,欢迎你们留言补充。web
你也能够关注个人微信公众号『ITNotes』, 一块儿交流学习 。
redis