IDEA 远程debug
IDEA 远程debug模式使用记录
jar包启动时添加启动参数 端口号 8888为自己设置的
1-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8888
例如:
1java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8888 2333.jar
--spring.profiles.active=dev
IDEA具体配置如下图
调试模式启动这个debug
其他的就和正常debug一样的
参数解释:
JAVA支持调试功能,并提供了一个简单的调试工具JDB,其可支持设置断点及线程级的调试;
各参数解释:
-Xdebug是通知JVM工作在DEBUG模式下
-Xrunjdwp是通知JVM使用(java debug wire protocol)来运行调试环境。该参数同时了一系列的调试选项:
transport指定了调试数据的传送方式,dt_socket是指用SOCKET模 ...
深入剖析 MyBatis 核心原理 学习笔记
深入剖析 MyBatis 核心原理 学习笔记MyBatis 架构简介MyBatis分为三层架构,分别是基础支撑层、核心处理层和接口层,如下图所示
基础支撑层基础支撑层是整个MyBatis框架的地基,为整个MyBatis框架提供了非常基础的功能,其中每个模块都提供了一个内聚的、单一的能力,MyBatis基础支撑层按照这些单一功能可以划分为上图中的九个基础模块。
1、类型转换模块mybatis-config.xml(MyBatis配置文件)中通过 <typeAliase>
标签为一个类定义一个别名,这里用到的“别名机制”就是由MyBatis基础支撑层中的类型转换模块实现的。
以下是 mybatis-config.xml 配置文件的示例
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879<!--2333--><c
...
List集合
线程安全问题线程安全就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。
线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据。
String类型中
"=="和"equals"比较的差别
先说明一下String类型的变量的创建方式
在创建新的String类型的变量时,首先会在缓冲区查找是否有这个产量对应的对象,有就直接将找到的对象的地址赋给新创建的变量,没有就重新创建一个对象,然后赋给新创建的变量
1234567891011String str = "str";//创建一个新的String类型的变量,在已有的缓冲区中没有就重新创建一个String str1 =
"str";//创建时在缓冲区发现有和即将创建的值一样的对象,就将str的地址赋给str1str == str1;//trueString str2 = new
String("str");//强制创建一个对象str2,地址和str,str1不同str2 ==
str;//false因为==比较的是对象的地址,而二者地址不同,故为falsestr2 == str1;//false同上 str2.equals(str1);//true
String继承Object方法中的equals方法进行重写,内部比较是两个String类型的字符串一个一个字符的比 ...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more
info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you
can ask me on GitHub.
Quick StartCreate a new post1$ hexo new "My New Post"
More info: Writing
Run server1$ hexo server
More info: Server
Generate static files1$ hexo generate
More info: Generating
Deploy to remote sites1$ hexo deploy
More info: Deployment
Java实现 Oracle
decode函数 转换为 MySQL 可用的 case when
具体实现思路
首先要确认sql中没有包含decode的字符串或者字段 有的话可以自行替代后再做操作先获取 decode的位置 然后截取出 decode括号内的部分 通过计算左右括号的数量即可截取出来然后再将
decode括号内的部分分为4段 然后拼接回原来的SQL 重复循环执行即可
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455private
static String decodeTransformToCaseWhen(String sql) { /** * 将decode的各部分分分别存储 最后拼接 */ List<String>
strings = new ArrayList<>(); StringBuilder result = new StringBuilder(" ( case "
+ strings.get(0) ...