先做总结: 1、HashMap HashTable ConcurrentHashMap HashMap:线程不安全 HashTable:线程安全,每个方法都加了 synchronized 修饰。类似 Collections.synchronizedMap(hashMap)        对读写加锁,
初识中间件Kafka Author:SimplelWu 什么是消息中间件? 非底层操作系统软件,非业务应用软件,不是直接给最终用户使用的,不能直接给客户带来价值的软件统称为中间件 关注于数据的发送和接收,利用高效可靠的异步消息传递机制集成分布式系统。 什么是Kafka? Kafka是一种高吞吐量
文章采用idea工具进行springboot项目创建   1点击 New Project 选择【Spring Initializr】 选择Jdk版本其他默认即可 点击Next     2添加项目信息 文章即使用默认内容 点击Next     3选择项目组件 文章为了能快速运行程序 只选择了Web组件
将下面配置信息配置在webapp/WEB-INF/web.xml中<!-- 解决post乱码 --><filter> <filter-name>CharacterEncodingFilter</filter-name> <filter
由于工作环境的问题,有过一次这样的测试,需要在DOS窗口运行带有jar包的java程序 编译命令如下: javac -Djava.ext.dirs=./lib Test.java 或 javac -Djava.ext.dirs=D:/fengqiao/lib Te
记一次 rocketmq 使用时的异常。   这里就不说什么rocketmq 源码啥的了,因为没看过。网上一搜这两个异常 大部分都是什么源码解读,也没说出现后的解决办法(蓝瘦香菇)。 大量测试发现: 1、system busy , start flow control for a while   该
    引文:   本文主要讲述项目框架搭建时的一些简单的使用配置,教你如何快速进行项目框架搭建。   技术: Spring+SpringMVC+Mybatis+Redis+Shiro+Maven            mybatis、redis都是使用spring集成   技术介绍就不再讲述了,话
一般来说创建一个springboot工程基本就可以了,但是有的时候可能需要将业务模块逻辑划分,每块业务模块都是一个工程,下边演示下多模块进行开发   目录结构 ...somefun ......somefun-web ......somefun-service-system .........som
javaSE(java standard Edition):标准版,定位在个人计算机上的应用。 javaEE(java Enterprise Edition):企业版,定位在服务器端的应用。*********************************** javaME(java Micro E
今天在一个web项目里开发功能,记录日志用到了fastjson的序列化,把类型为RetreatRecord的数据对象序列化后打印出来。结果出现StackOverflowError。先贴出来异常堆栈: Exception in thread "main" java.lang.St
这篇文章为spring回顾总结的第二篇,本篇主要分为两个部分,分别是spring的bean工厂的实现.spring的aop实现原理,这两部分也是面试当中问的比较多的. spring的bean工厂的实现 spring的bean工厂的实现可以有以下三种方式 静态工厂实现 public class Sta
计算机高级语言类型主要有 编译型 和 解释型 两种,java是两种类型的结合。   机制:利用编译器(javac)将源文件(后缀名.java)编译成字节码文件(后缀名.class),最后利用虚拟机(jvm,解释器)解释执行。
我们都知道现在大数据存储用的基本都是 Hdfs ,但在 Hadoop 诞生之前,我们都是如何存储大量数据的呢?这次我们不聊技术架构什么的,而是从技术演化的角度来看看 Hadoop Hdfs。 我们先来思考两个问题。 在 Hdfs 出现以前,计算机是通过什么手段来存储“大数据” 的呢? 为什么会有 H
Spring MVC那一篇里提到了异常拦截来做参数校验返回,那里是对特定的 controller 做异常捕捉,但是我们也可以选择全局拦截处理 快速开始 @ResponseBody @ControllerAdvice public class ExceptionAdvice { private
1.java数据类型分类        Java语言是强类型(Strongly typed)语言,强类型包含两方面的含义:①所有的变量必须先声明,后使用;②指定类型的变量只能接受类型与之匹配的值。这意味着每个变量和每个表达式都有一个在编译时就确定的类型。        Java语言支持的类型有两类:
并发编程简介 什么是并发编程 串行 : 串行化,按照步骤进行,一步一步来,不能越级(比如洗茶具,打水,烧水,等水开,冲茶) 并行 : 多个任务一起执行(打水,烧水的时候洗茶具,等水开,冲茶) 并行的好处是可以缩短整个流程的时间 并发编程的目的 : 更加充分的利用资源 加快程序的响应速度(耗时任务