Java枚举类型
java从JDK1.5开始支持枚举,也就是说,Java一开始是不支持枚举的,就像泛型一样,都是JDK1.5才加入的新特性。通常一个特性如果在一开始没有提供,在语言发展后期才添加,会遇到一个问题,就是向后兼容性的问题。像Java在1.5中引入的很多特性,为了向后兼容,编译器会帮我们写的源代码做很多事情…
java从JDK1.5开始支持枚举,也就是说,Java一开始是不支持枚举的,就像泛型一样,都是JDK1.5才加入的新特性。通常一个特性如果在一开始没有提供,在语言发展后期才添加,会遇到一个问题,就是向后兼容性的问题。像Java在1.5中引入的很多特性,为了向后兼容,编译器会帮我们写的源代码做很多事情…
一、Java内存模型 想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的。 Java内存模型规定了所有的变量都存储在主内存中。每条线程中还有自己的工作内存,线程的工作内存中保存了被该线程所使用到的变量(这些变量是从主内存中拷贝而来)。线程对变量的所有操作(读取,赋值…
一、CAS:Compare and Swap,比较并交换。 1. 悲观锁和乐观锁 java.util.concurrent包中借助CAS实现了区别于synchronouse同步锁的一种乐观锁,乐观锁用到的机制就是CAS. 在JDK 5之前Java语言是靠synchronized关键字保证同步的,这会…
标签:并发一、SpringMVC http://blog.csdn.net/evankaka/article/details/45501811 spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基…
标签:框架一、概述 ActiveMQ是Apache所提供的一个开源的消息系统,完全采用Java来实现,因此,它能很好地支持J2EE提出的JMS(Java Message Service,即Java消息服务)规范。 JMS是一组Java应用程序接口,它提供消息的创建、发送、读取等一系列服务。JMS提供了一组公共…
标签:mq加密很容易理解,就是把明文变成人家看不懂的东西,然后送给自己想要的送到的地方,接收方用配套的解密算法又把密文解开成明文,这样就不怕在路上如果密文给人家截获而泄密。 [java]目录 1.对称加密(Symmetric Cryptography) 2.非对称加密(Asymmetric Cryptogra…
标签:加密一、SringBoot拦截器定义和springmve类似 配置拦截器也很简单,Spring 为什么提供了基础类WebMvcConfigurerAdapter ,我们只需要重写 addInterceptors 方法添加注册拦截器。 实现自定义拦截器只需要3步: 1、创建我们自己的拦截器类并实现 Han…
Springboot开发web应用过程中要用到过滤Filter和监听器Listener, Springboot的主Servlet为 DispatcherServlet,其默认的url-pattern为“/”。也许我们在应用中还需要定义更多的Servlet,该如何使用SpringBoot来完成呢? 在…
一、SpringBoot生产环境和开发环境配置 1.定义生产环境配置文件为 application-product.yml [java]server: port: 8081 spring: datasource: driver-class-name: com.mysql.jdbc.Driver ur…
一、SpringBoot与Mybatis集成步骤如下 1. 引入mybatis-spring-boot相关依赖 [java]<!-- mybatis/spring包 --> <dependency> <groupId>org.mybatis.spring.boot…