![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 66
chenshuang_com
今朝书画冰莹与那旭霞云缕偏是缀三分
展开
-
xxl-job架构原理
xxl-job架构原理和源码解析原创 2022-08-14 13:54:30 · 2370 阅读 · 1 评论 -
xxl-mq架构剖析
xxl-mq架构详解和执行流程详解原创 2022-08-13 12:48:06 · 1290 阅读 · 0 评论 -
高级Java开发面试题 总结
1、hashcode和equals之间的关系2、integer和int之间的比较3、list集合去重和排序4、springbean对象循环依赖是如何解决的5、spring事物是如何失效的6、redis分布式锁过期遇到业务代码执行没有完成怎么办7、mysql索引为什么会失效,原因是什么8、redis的key失效机制是什么9、redis的aof持久化文件不断变大怎么办10、mybatis二级缓存怎么开启11、jdk8有哪些新特性12、mysql的索引原理13、sql如何优化14、jvm原创 2021-03-03 12:51:32 · 659 阅读 · 1 评论 -
keepalived+haproxy+mycat+mysql高可用搭建配制
mysql双主同步配置:mysql1服务器的my.cnf配置:server-id=1log_bin=bin_logbinlog-do-db=ry-vueslave_parallel_type='logical_clock' slave_parallel_workers=4 relay-log=relay-bin relay-log-index=relay-bin.index replicate-do-db=ry-vueauto_increment_offse...原创 2020-07-16 18:05:47 · 257 阅读 · 0 评论 -
调用第三方接口高可用设计与实现
1、第三方调用失败接口:package com.ruoyi.framework.exception.service;import org.springframework.retry.annotation.Backoff;import org.springframework.retry.annotation.Retryable;import org.springframework.stereotype.Component;@Componentpublic class DemoService原创 2020-07-12 00:53:36 · 977 阅读 · 0 评论 -
Java基本排序(插入排序,冒泡排序,选择排序)
/** * 插进入排序 * @author shuang * */public class InsertSort { public static void insertSort(int[] array) { for (int i=1;i<array.length;i++) { for (int j=0;j<i;j++) { if (array[j]>array[i]原创 2016-06-20 15:01:50 · 311 阅读 · 0 评论 -
Java算法面试题及答案
/** * 两个无穷大的数字相加 * @param param1 无穷大数字1 * @param param2无穷大数字2 * @return 两个无穷大的数字相加之后的无穷大值 */ public static int[] add(int[] param1,int[] param2) { int length = param1.length > param2.lengt原创 2016-07-05 23:10:47 · 860 阅读 · 0 评论 -
通用数据库查询分析器Java实现
此工具可以支持oracle,SqlServer并且可以容易扩展其他数据库比如mysql,db2。并且同时支持多数据库操作原创 2016-06-17 12:57:27 · 1049 阅读 · 0 评论 -
xwork设计原理(其一)
根据xwork框架官方定义:xwork是一个灵活而可靠的基于命令模式的开发框架。所谓的“命令模式”其本质是请求-响应的模式,就是要实现人机交互的功能。人机交互的过程是:客户端浏览器发起一个http请求,服务器接到请求之后进行逻辑处理,并将处理结果返回给客户端进行http响应。对于这样的一个过程,我们如何使用Java语言来实现了?如何从Java语法入手,通过分析对象内部构成机理,我们就会原创 2014-08-11 23:19:39 · 787 阅读 · 0 评论 -
使用java中汇编指令解析String对象(String s1="a";String s2=s1+"b";String s3=new String("a");String s4=s3+"a";)
首先介绍一下java方法执行过程:java的方法都是运行在线程的栈中,一个线程拥有一个执行栈,一个执行栈包含多个栈帧,一个方法对应一个栈帧,一个栈帧包含一个局部变量区(局部变量存储区域)和一个操作数栈区(用于运算或者其他的操作),当一个方法要执行时先会创建一个方法栈帧当方法执行完之后线程销毁栈帧。public void show() { String s1="a"; //LDC "原创 2012-07-13 11:10:19 · 6650 阅读 · 1 评论 -
Java高级排序(希尔排序,快速排序,堆排序,归并排序,桶排序)
/** * 希尔排序 * @author shuang * */public class ShellSort { public static void shellSort(int[] array) { int step=array.length;//增量 while(step!=1) { step/=2; for (int i=0;i<step;i原创 2016-06-20 15:05:17 · 395 阅读 · 0 评论 -
mybatis实现零配置
由于公司的代码生成的xml文件太长不好维护于是就写了 一个mybatis零配置的非侵入性易用性强的工具原创 2017-06-30 13:19:28 · 582 阅读 · 2 评论 -
基于ASM开发的一个关于class文件加密程序,可对整个jar进行加密且不影响资源文件
本插件利用ASM对class文件可修改功能而实现的下面展现一下实现的源代码:第一部分辅助代码:package com.test.encypt;/*** 用于保存字段原始名称和加密后的名称* @author 陈双**/public class Field {private String oldName;private String newName;publ原创 2012-06-21 08:42:57 · 3674 阅读 · 1 评论 -
java中关于Tree的操作的小例子
1、定义一个cs结构的界面:import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JScrollPane;import javax.swing.JTree;public class Test { pub原创 2012-06-21 08:54:25 · 3364 阅读 · 0 评论 -
关于class文件中的指令剖析
在介绍class结构和指令之前先介绍一下java方法执行机制:java的方法都是运行在线程的栈中,一个线程拥有一个执行栈,一个执行栈包含多个栈帧,一个方法对应一个栈帧,一个栈帧包含一个局部变量区和一个操作数栈区,当一个方法要执行时先会创建一个方法栈帧当方法执行完之后线程销毁栈帧。// class version 50.0 (50)// access flags 1public clas原创 2012-06-21 08:51:10 · 635 阅读 · 0 评论 -
java中如何使用asm动态的生成或修改一个class文件以及asm的架构思想
在开发中一般情况下我们写好的代码然后编译成class文件并运行属于静态的class文件生成,那是不是class文件就只有静态生成一种啊,其实不然,在jdk的动态代理应用Proxy类就是已经使用了动态生成一个class文件来实现代理功能的,只是这一部分我们都看不到,而asm是一个专门的字节码动态生成的一个框架,其架构使用的是生产、消费和过滤模式对应的接口和类分别是ClassReader读取一个Cla原创 2012-06-21 08:47:18 · 1989 阅读 · 0 评论 -
关于jdk中类装载器ClassLoader扩展和JNI技术(JavaNativeInterface)以及类文件的加密解密算法
1、自定义Classloader的代码如下:package com.test.start;import java.io.IOException;import java.lang.reflect.Field;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;im原创 2012-06-21 09:00:55 · 5040 阅读 · 3 评论 -
java中如何使用jdk1.5和jdk1.6进行项目打包
1、jdk1.6中调用java的打包工具的关键代码: /** * 编译java类 * @param file java文件列表 * @param dir 编译后calss文件存放目录 * @throws IOException * @throws ClassNotFoundException * @throws IllegalAccessExc原创 2012-06-21 08:55:54 · 929 阅读 · 0 评论 -
java中如何做一个注册机
package com.test.register;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class RegisterCode { private static final String LL = "this is a co原创 2012-06-21 08:55:11 · 2725 阅读 · 0 评论 -
关于Spring中的AOP和事物的源码剖析
首先对spring的原理进行简单的说明:用过spring的朋友都知道spring的强大和高深,都觉得深不可测,其实当你真正花些时间读一读源码就知道它的一些技术实现其实是建立在一些最基本的技术之上而已;例如AOP(面向方面编程)的实现是建立在CGLib提供的类代理和jdk提供的接口代理,IOC(控制反转)的实现建立在工厂模式、java反射机制和jdk的操作XML的DOM解析方式,Tansaction原创 2012-06-21 08:48:28 · 395 阅读 · 0 评论 -
关于java中jdk中接口动态代理模式Proxy的剖析
这个示例将展示jdk创建代理对象、调用实际对象、实际对象处理的整个过程,首先jdk动态代理只是针对接口而言的,即根据用户提供的接口创建一个实现接口的代理类并且把用户传入的实际对象作为代理对象的属性,当调用代理对象实现接口方法时就委托给实际对象,并在调用实际对象方法进行拦截让用户实现业务),以下是一个具体实例演示,并且包括jdk创建的不可见的代理类源代码展示。1、定义接口如下:package原创 2012-06-21 08:46:09 · 619 阅读 · 0 评论 -
Java现实自定义表格标签(支持排序,分页,汇总,滚动,多行列)
package com.ts.taglib.html;import java.lang.reflect.Field;import javax.servlet.jsp.tagext.BodyTagSupport;/** * 事件处理 * @author 陈双 * @date 2012-09-22 * @mail chenshuang_com@sina.com原创 2012-10-11 13:08:15 · 3404 阅读 · 5 评论 -
java中使用asm实现动态创一个类动态代理
辅助代码:package com.test.bean;import java.lang.reflect.Method;public interface InvocationHandler { public Object invoke(Object proxy,String methodName,Method method,Object[] args);} import原创 2012-06-21 08:50:01 · 810 阅读 · 0 评论