
java
文章平均质量分 53
c764193441
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
spring自定义Bean的创建
spring自定义Bean的创建背景众所周知,spring创建Bean的方式为工厂方式,如果想在Bean创建的时候做下扩展处理,spring停供了相应的扩展点进行扩展.spring在容器初始化时,先读取Bean的定义,例如xml中的定义,config class中的定义,存储在beanDefinitionMap 中如果想改变Bean的内容,可以改变Bean的定义,从而使之后的Bean的创建实例都改变BeanFactoryPostProcessor就是用来改变Bean的定义的,Abstr原创 2021-07-27 18:06:21 · 870 阅读 · 0 评论 -
spring回调机制-aware接口
spring回调机制-aware接口定义由启动容器类进行分析,AbstractApplicationContext中的prepareBeanFactory方法 /** * Configure the factory's standard context characteristics, * such as the context's ClassLoader and post-processors. * @param beanFactory the BeanFactory to con原创 2021-07-27 15:22:28 · 968 阅读 · 0 评论 -
gradle springboot多模块基本写法
父模块import java.time.OffsetDateTimeimport java.time.format.DateTimeFormatterbuildscript { repositories { mavenLocal() maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } mavenCentral() // grandle插件原创 2021-07-22 17:33:37 · 551 阅读 · 0 评论 -
feign Ambiguous mapping 解决方式
Feign Ambiguous mapping 解决方式背景feign在使用过程中,一般先定义接口,再定义具体实现的controller,如下所示@FeignClient(name = "shore-app")public interface StoreApi { @GetMapping("/api/store/getStoreNum") Integer getStoreNum(); @GetMapping("/api/store/getStoreNumByConditi原创 2021-07-22 15:18:45 · 2392 阅读 · 4 评论 -
枚举校验实现
枚举校验背景后端处理前端回传的参数,经常有枚举类型的校验,一般使用用Bean validator 去做校验,但是validator功能较弱这时候就用自定义校验规则去实现实现定义注解import jakarta.validation.Constraint;import jakarta.validation.Payload;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import原创 2021-07-20 17:15:30 · 1221 阅读 · 1 评论 -
netty入门-io介绍
netty入门-io介绍传统io样例package com.hrf.io;import java.io.IOException;import java.io.InputStream;import java.net.ServerSocket;import java.net.Socket;import java.util.logging.Logger;public cl...原创 2018-03-31 11:07:03 · 308 阅读 · 0 评论 -
netty入门-helloword介绍
netty入门-helloword介绍server代码样例package day1;import java.net.InetSocketAddress;import java.util.concurrent.Executor;import java.util.concurrent.Executors;import java.util.logging.Logger;impo...原创 2018-04-01 10:38:17 · 248 阅读 · 0 评论 -
interrupt、interrupted 、isInterrupted 区别
interrupt、interrupted 、isInterrupted 区别1、interrupt interrupt方法用于中断线程。调用该方法的线程的状态为将被置为”中断”状态。注意:线程中断仅仅是置线程的中断状态位,不会停止线程。需要用户自己去监视线程的状态为并做处理。支持线程中断的方法(也就是线程中断后会抛出interruptedException的方法)就是在监视线程的中断...转载 2018-06-21 11:16:30 · 420 阅读 · 0 评论 -
Java 多线程:InheritableThreadLocal 实现原理
Java 多线程:InheritableThreadLocal 实现原理前言介绍 InheritableThreadLocal 之前,假设对 ThreadLocal 已经有了一定的理解,比如基本概念,原理,如果没有,可以参考:Java 多线程:threadlocal关键字。这里再复习下 ThreadLocal 的原理,因为会对 InheritableThreadLocal 的理解 ...转载 2018-06-19 09:28:46 · 251 阅读 · 0 评论 -
java虚拟机结构
java虚拟机结构类加载器:负责从文件系统或网络中加载Class信息,加载到方法区的内存里面方法区:存放类信息,常量信息,常量池信息,包括字符串字面量和数字常量java堆:虚拟机启动时建立java堆,是主要的内存工作区域,几乎所有对象实例存放到java堆中,堆空间是所有线程共享的直接内存:javaNIO允许java使用直接内存,提高性能,性能优于java堆,读写频繁的场合下用栈:每个虚...原创 2018-11-07 17:44:25 · 223 阅读 · 0 评论 -
java多态
java多态理解最近面试做到一些笔试题,对多态的理解,脑袋一片空白,既熟悉又陌生的概念,一下子说不出来,确实是做多年java的我的一个失败,所以又去找了一下概念,恶补一下。个人理解的多态:父类与子类之间相互类型转换(子类能上下转,父类不能强转子类),所表现出来的行为属性不一样首先来个标准的概念说明 多态: java的多态体现在一个变量可以引用多个不同类型的对象,前提是这些不同类必...转载 2018-03-11 20:41:17 · 255 阅读 · 0 评论 -
JVM类加载器回顾
JVM知识回顾JVM基本结构类加载器,执行引擎,运行时数据区,本地接口 ClassFile -> ClassLoader->运行时数据区->执行引擎,本地库接口->本地方法库类的转载加载,连接(验证,准备,解析),初始化,使用,卸载 Class 保存类的定义或者结构,放在堆中类的初始化执行类的构造器 为类的静态变量赋予制衡却的初始值构造器: 1. s原创 2018-02-03 12:06:06 · 203 阅读 · 0 评论 -
ArrayList与LinkList区别
原创 2018-01-23 11:10:40 · 438 阅读 · 0 评论 -
java反射基本知识
泛型基本:5.0 泛型出现之后,Java Reflection API的新特点。首先增加一个接口java.lang.reflect.Type java.lang.reflect.Type|--------TypeVariable|--------ParameterizedType|--------GenericArrayType|--------WildcardType1原创 2018-01-23 11:12:56 · 223 阅读 · 0 评论 -
java动态代理proxy
动态代理其实就是java.lang.reflect.Proxy类动态的根据您指定的所有接口生成一个class byte,该class会继承Proxy类,并实现所有你指定的接口(您在参数中传入的接口数组);然后再利用您指定的classloader将 class byte加载进系统,最后生成这样一个类的对象,并初始化该对象的一些值,如invocationHandler,以即所有的接口对应的Method原创 2018-01-23 11:23:45 · 314 阅读 · 0 评论 -
Elasticsearch索引建立后定义mapper
{"commissions": {"properties": {"bookingClass": {"type":"string","index":"not_analyzed"},"integral": {"type":"long"},"destination": {"type":"string","index":"not_analyzed"},原创 2018-01-24 09:04:50 · 491 阅读 · 0 评论 -
java线程等待唤醒机制
生产者消费者问题lock和condition的工作机制(可以部分唤醒)原创 2018-01-24 09:05:05 · 271 阅读 · 0 评论 -
java并发流程控制(CountDownLatch-CycliBarrier)
1)CountDownLatch 门插销计数器 1. 启动线程,然后等待线程结束。即常用的主线程等所有子线程结束后再执行的问题。public static void main(String[] args)throws Exception {// TODO Auto-generated method stubfinal int count=10;final C转载 2018-01-24 09:05:18 · 418 阅读 · 0 评论 -
java内部类
因为成员内部类需要先创建了外部类,才能创建它自己的内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。*内部类可以是静态static的,也可用public,default,protected和private修饰。(而外部顶级类即类名和文件名相同的只能使用public和default)。 注意:内部类是一个编译时的概念,一旦编译成功,就会成为转载 2018-01-24 09:07:03 · 184 阅读 · 0 评论 -
java线程状态
1:创建2:运行3:临时阻塞4:冻结5:消亡原创 2018-01-24 09:07:19 · 158 阅读 · 0 评论 -
java并发(wait-await-signal-notify-signalAll-notifyAl
3 Java中的锁与排队上厕所。锁就是阻止其它进程或线程进行资源访问的一种方式,即锁住的资源不能被其它请求访问。在JAVA中,sychronized关键字用来对一个对象加锁。比如:public class MyStack {int idx = 0;char [] data = new char[6];public synchronized void push(c转载 2018-01-24 09:07:34 · 564 阅读 · 0 评论 -
java类的生成(加载)步骤
总体上先父后子具体体现于1、先static,按顺序执行(无论static位于什么位置,都现执行)2、再非static3、再构造packagecom.test.part7;publicclassTest_2 { /**原创 2018-01-23 11:08:03 · 286 阅读 · 0 评论