Mybatis工作原理学习 配置及使用SqlSessionFactoryBuilder,XMLConfigBuilderConfiguration解析Mapper接口映射xml文件DefaultSqlSessionFactory和DefaultSqlSessionMapperRegistryMapperProxy,MapperProxyFactoryMapperMethodExecutor...
Spring学习-IOC与AOP IOC:spring核心功能之一 控制反转主要通过 注解+反射+工厂;写一个简易版本的IOC实现方式定义实体类public class User { private String userName; private Integer age; public User(String userName, Integer age) { this....
java并发--CAS原理学习&乐观锁&悲观锁 在之前文章中验证了在多线程场景下,CAS可以保证共享变量的原子性。此篇文章主要记录一下CAS原理的学习感悟。在一般情况下,为保证数据安全性,我们可以采用synchronized修饰变量或者修饰方法。也就是说在同一时间只有一个线程能修改共享变量或者访问这个方法,其它线程都要等待。但是这样的话,也就相当于了单线程,失去了多线程的优势。CAS的原理有些类似于悲观锁;了解CAS...
一句话撸完重量级锁、自旋锁、轻量级锁、偏向锁、悲观、乐观锁等各种锁 重量级锁?自旋锁?自适应自旋锁?轻量级锁?偏向锁?悲观锁?乐观锁?执行一个方法咋这么辛苦,到处都是锁。今天这篇文章,给大家普及下这些锁究竟是啥,他们的由来,他们之间有啥关系,有啥区别。重量级锁如果你学过多线程,那么你肯定知道锁这个东西,至于为什么需要锁,我就不给你普及了,就当做你是已经懂的了。我们知道,我们要进入一个同步、线程安全的方法时,是需要先获得这个方...
验证volatile是否能保证原子性?以及怎么保证原子性 话不多说,直接上代码public class DemoController {//===================== volatile是否能保证原子性验证 =================== public static volatile int ice = 0; public static void increase(){ ice++...
volatile保证变量可见性验证 volatile了解参考:https://www.cnblogs.com/dolphin0520/p/3920373.htmlhttps://blog.csdn.net/v123411739/article/details/79438066https://www.cnblogs.com/xrq730/p/7048693.html对其中可见性功能做验证public cla...
java规范分享 Java规范分享作者:风控 赵文豪日期: 2019-5-29一:数据库设计规范1:命名规范采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上 _ 组成;命名尽量简洁,见名知意Eg : lrm_product_name 风控产品名称 采用英文+下划线组成一个库中的命名格式保持统一不要一个表中出现多种不同字段格式 LrmPro...
分布式寻址:Hash取模与一致性Hash算法 hash取模原理:其中key 代表数据的键,代表memcached服务器的数量。取模的结果就是memcached客户端要定位的memcached服务器。取模算法很明显,结果很容易受N的影响,当服务器数量N增加或者减少的时候,原先的缓存数据定位几乎失效,缓存数据定位失效意味着要到数据库重新查询,这对于高并发的系统来说是致命的。于是,人们提出了一致性hash算法,最终目的是实现在移除、添加一个mem...
MySQL报Install/Remove of the Service Denied! 今天换了电脑,重新安装MYSQL的时候,服务列表中没有mysql服务,安装步骤如下第一步:点击开始–输入cmd–右键cmd.exe–以管理员身份运行第二步:切换到你的mysql的安装目录下的bin目录,执行mysqld.exe --install命令,看到service successfully installed.表示安装服务成功。一开始直接 window + R 输入cmd直接打开命...
为什么判断list的时候,既要判断不等于null有要判断size大于0 list == null 说明list没有初始化(针对于类的成员属性)也就是没有数据, 或者list是赋值为了null,说明list内也没有数据但是 当list 初始化后(如:new ArrayList<>()) list != null 但list内依然可能没有数据(可能的情况:也就是list.size==0)所以判断list有数据要两个条件:list != null &...
git 版本(version)回退(回滚) 通过 git log 查询提交的版本记录回滚到指定版本git reset --hard 8922d60ed8bb27e4f20605b99123ec029e8d5c2b
git 忽略不想提交的文件 今天新换了一电脑,更新下来代码后,再次提交发现有很多target中的编译文件,每次都再勾选非常麻烦,也有可能提交错误;通过version control的changelist来实现。intellij提供了changelist功能,可以对文件进行分类,提交时,只提交active(活跃的)changelist。创建一个changelist首先创建一个changelist,为了好...
用Date类型接收时间参数出现错误的问题 Spring项目 前台传递参数:后台用Date类型接收:发送请求会出现 以下错误:解决方法:package com.zbjk.risk.util;import org.codehaus.jackson.JsonParser;import org.codehaus.jackson.JsonProcessingException;import org.codehaus.jackson.map.Deseriali...
hosts文件配置问题 访问线上环境的时候,发现部分页面无法访问。一开始误以为是本地开发证书没有安装好,但是访问线上环境需要什么证书呀。我真是蠢。 ping了一下访问地址,发现是127.0.0.1,本地的 我XXX。 将127.0.0.1 换成了 线上环境的 ip 问题解决了hosts文件的介绍Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“...
Mybatis使用出现的问题 今天因业务需要一对一进行数据库查询,在mybatis中进行了配置。public class RiskRuleBiztype { private Integer id; private String name; private Integer ruleCode; private Integer type; }public class RiskRuleBiztype...