Java提升营

最近有人提出能不能发一些大数据相关的知识,No problem ! 今天先从安装环境说起,搭建起自己的学习环境。

Hadoop的三种搭建方式以及使用环境:

  • 单机版适合开发调试;
  • 伪分布式适合模拟集群学习;
  • 完全分布式适用生产环境。
    阅读全文 »

在我们的日常工作中,经常会用到Spring、Spring Boot、Spring Cloud、Struts、Mybatis、Hibernate等开源框架,有了这些框架的诞生,平时的开发工作量也是变得越来越轻松,我们用 Spring Boot 分分钟可以新建一个Web项目。

记得自己刚开始工作的时候还是在用ServletWeb项目,自己写数据库连接池,用原生JDBC操作数据库,好了不发散了。回到这篇文章的主题,今天通过手写Spring框架,帮大家深入了解一下Spring的工作机制,文中涉及的代码只用来帮助大家理解Spring,不会在线上使用,有不严谨的地方还请大家掠过。

阅读全文 »

要点

  • Reactor 是一个运行在 Java8 之上的响应式流框架,它提供了一组响应式风格的 API
  • 除了个别 API 上的区别,它的原理跟 RxJava 很相似
  • 它是第四代响应式框架,支持操作融合,类似 RxJava 2
  • Spring 5 的响应式编程模型主要依赖 Reactor
    阅读全文 »

Swagger 是一个简单强大的 API 设计表达工具。它提供一套通过代码和注解自动生成文档的方法。当前主流编程语言都支持 Swagger。这里记录在 Spring boot 中使用 Swagger 记录。

阅读全文 »

HashMapHashTable有什么不同?在面试和被面试的过程中,我问过也被问过这个问题,也见过了不少回答,今天决定写一写自己心目中的理想答案。

1. 时间

HashTable产生于JDK 1.1,而HashMap产生于JDK 1.2。从时间的维度上来看,HashMap要比HashTable出现得晚一些。

阅读全文 »

背景

大多数系统都是从一个单一系统开始起步的,随着公司业务的快速发展,这个单一系统变得越来越庞大,带来几个问题:

  1. 随着访问量的不断攀升,纯粹通过提升机器的性能来已经不能解决问题,系统无法进行有效的水平扩展

  2. 维护这个单一系统,变得越来越复杂

  3. 随着业务场景的不同以及大研发的招兵买马带来了不同技术背景的工程师,在原有达达Python技术栈的基础上,引入了Java技术栈

    阅读全文 »

采用 Spring Security Oauth2JWT 的方式,避免每次请求都需要远程调度 Uaa 服务,Uaa 服务只验证一次,返回JWT。返回的 JWT 包含了用户的所有信息,包括权限信息。

什么是JWT?

JSON Web Token(JWT)是一种开放的标准(RFC 7519),JWT定义了一种紧凑且自包含的标准,该标准旨在将各个主体的信息包装为 JSON 对象。主体信息是通过数字签名进行加密和验证的。常使用 HMAC 算法或 RSA(公钥/私钥的非对称性加密)算法对JWT进行签名,安全性很高。

阅读全文 »

在 Spring 的容器中,我们面向的对象是一个个的 bean 实例,bean 是什么?我们可以简单理解为是 BeanDefinition 的实例,Spring 会根据 BeanDefinition 中的信息为我们生产合适的 bean 实例出来。

当我们需要使用 bean 的时候,通过 IOC 容器的 getBean(…) 方法从容器中获取 bean 实例,只不过大部分的场景下,我们都用了依赖注入,所以很少手动调用 getBean(...) 方法。

阅读全文 »

Spring 最重要的概念是 IOCAOP,本篇文章其实就是要带领大家来分析下 SpringIOC 容器。既然大家平时都要用到 Spring,怎么可以不好好了解 Spring 呢?阅读本文并不能让你成为Spring专家,不过一定有助于大家理解Spring的很多概念,帮助大家排查应用中和Spring相关的一些问题。为了降低难度,本文所说的所有的内容都是基于 xml 的配置的方式,实际使用已经很少人这么做了,至少不是纯 xml 配置,不过从理解源码的角度来看用这种方式来说无疑是最合适的。

阅读全文 »

如何提升个人的专业能力?你可以Google搜一下,什么架构师之道呀、深入解读Spring源码呀等等等。我想说讲的都没错,技术的提升没有捷径,牛人指导我们学习线路,真正能让我们突破迷茫期,提升个人实力的还是得靠自己。当然有人带和没人带区别还是很大的。如果你觉得现在的工资很满意,平时上班也没什么压力,生活很惬意,不想提高个人实力,不想变成我们心中的大神牛人,那么恭喜你,有类标签很适合,佛系程序员。

阅读全文 »