自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 收藏
  • 关注

原创 maven仓库配置及搜索顺序

以博主遇到的场景做分析,xmlpull.jar 包不在公司的远程仓库(http://mvnrepo.abc.com/mvn/repository)中,存在于 远程仓库https://repository.jboss.org/nexus/content/groups/public,结合以下两种场景来说明问题。原因:按上述搜索顺序,先从在全局应用的私服仓库中(setting.xml文件的profile)寻找,没有找到,则从项目 pom.xml 配置的 repository 找到并下载成功。

2023-01-04 16:13:04 3888

转载 使用mysql事务不同场景导致的死锁问题以及解决方法

mysql事务导致的锁表

2022-09-06 14:01:35 990

原创 补贴账户表相关设计记录

补贴账户表补贴账户表:补贴金额表:可用补贴金表:员工补贴账户关系表:员工补贴账户流水表:补贴账户流水表账户补贴金入账详情账户补贴金出账详情分享补贴账户表:补贴账户分为个人补贴账户和公共补贴账户两种,每个员工只能有一个个人补贴账户,可以使用多个共享补贴账户.补贴金额表:一个账户可以有多种类型的补贴金额.不同的补贴金额可以在不同的场景或规则中使用可用补贴金表:可以用补贴金额表在入账的时候和补贴金入账详情表的记录是一样的,随着补贴金额到期或者用户消费,这时候补贴金入账详情表是静态的,而可用补贴金表的

2021-08-18 11:48:23 329 1

原创 方法的参数校验规则

需要进行参数校验的场景1.调用频度低的方法。2.执行时间开销很大的方法。此情形中 参数校验时间几乎可以忽略不计,但如果因为参数错误导致中间执行回退或者错误,则得不偿失。3.需要极高稳定性和可用性的方法。4.对外提供的开放接口。5.敏感权限入口。不需要进行参数校验的场景1.极有可能被循环调用的方法。但在方法说明里必须注明外部参数检查。2.底层调用频度较高的方法。参数错误不太可能到底层才会暴露问题。一般DAO 层与 Serv ice 层都在同 个应用中,部署在同 台服务器中,所以可以省略 DA

2021-02-18 14:56:02 911

原创 时间不够用的解决方案

有什么事情是你必须要做的?哪些事情是只有你能做的?哪些事情是别人可以帮你做的?这就是一种时间管理的思路,隐含的意思是:识别并且选择最重要的事情;确定自己最擅长的事情,全力以赴地做好;选择你的帮手,充分信任并授权...

2020-11-20 16:53:25 126

原创 如何编写经济的代码

需求评审需求是真实的客户需求吗?要解决的问题真实存在吗?需求具有普遍的意义吗?这个需求到底有多重要?需求能不能分解、简化?需求的最小要求是什么?这个需求能不能在下一个版本再实现?设计评审能使用现存的接口吗?设计是不是简单、直观?一个接口是不是只表示一件事情?加微信 ixuexi66 获取一手更新 仅供个人学习 请勿传播个接 是不是只表接口之间的依赖关系是不是明确?接口的调用方式是不是方便、皮实?接口的实现可以做到不可变吗?接口是多线程安全的吗?可以使用异步编程吗?接口需

2020-11-20 11:28:51 130

原创 10.Spring源码之路-DefaulListableBeanFactory - AbstractBeanFactory

总结源码注释的大概翻译/** * {@link org.springframework.beans.factory.BeanFactory}实现的抽象基类, * 提供了{@link org.springframework.beans.factory.config.ConfigurableBeanFactory} * SPI的全部功能。 * 假定有一个可列出的bean工厂:因此也可以用作bean工厂实现的基类,该工厂从某 * 些后端资源(其中bean定义访问是一项昂贵的操作)中获取bean

2020-06-29 09:15:39 218

原创 9.Spring源码之路-DefaulListableBeanFactory - ConfigurableBeanFactory

Spring源码之路-DefaulListableBeanFactory总结源码注释的大概翻译总结此接口的方法看起来比较多,主要是提供给框架设计者使用的此接口基于支持父子关系的BeanFactory,同时支持单例Bean的注册接口主要是用于配置时需要的功能。有一个方法void addBeanPostProcessor(BeanPostProcessor beanPostProcessor);主要是添加Bean的后置处理器,用于在Bean初始化前后对Bean进行一些特殊的处理指定了默认的两个作用

2020-06-27 00:47:23 181

原创 8.Spring源码之路-DefaulListableBeanFactory - HierarchicalBeanFactory

Spring源码之路-DefaulListableBeanFactory总结源码注释的大概翻译总结这个接口比较简单,主要是扩展自接口{org.springframework.beans.factory.BeanFactory},在BeanFactory的基础之上增加了支持父子容器的扩展。父子容器我们在用web.xml配置spring的时候,大部分都是用过,比如我们在里面配置了一个<listener> <listenre-class>org.springframework.w

2020-06-25 19:49:37 192

原创 7.Spring源码之路-DefaulListableBeanFactory - FactoryBeanRegistrySupport

Spring源码之路-DefaulListableBeanFactory总结源码注释的大概翻译总结源码注释的大概翻译/** * 支持需要处理 * {@link org.springframework.beans.factory.FactoryBean}实例的单例注册表的基类,并与 * {@link DefaultSingletonBeanRegistry}的单例管理集成在一起。 * * 用作{@link AbstractBeanFactory}的基类。 * @author Juerge

2020-06-25 19:24:59 230

原创 6.Spring源码之路-DefaulListableBeanFactory - DefaultSingletonBeanRegistry

DefaultSingletonBeanRegistry总结源码注释的大概翻译/** * 共享bean实例的通用注册表,实现 * {@link org.springframework.beans.factory.config.SingletonBeanRegistry}。 * 允许注册应该由bean名称获得的所有注册表调用者共享的单例实例。 * 还支持 {@link org.springframework.beans.factory.DisposableBean}实例 * (可能对应 或可

2020-06-23 00:11:51 330

原创 5.Spring源码之路-DefaulListableBeanFactory - SimpleAliasRegistry

Spring源码之路-DefaulListableBeanFactorySimpleAliasRegistry接口总结源码注释的大概翻译SimpleAliasRegistry接口总结此类是AliasRegistry 的简单实现。源码注释的大概翻译/** * {@link AliasRegistry}接口的简单实现。 * 用作{@link org.springframework.beans.factory.support.BeanDefinitionRegistry} * 实现的基类

2020-06-22 17:14:47 150

原创 4.Spring源码之路-DefaulListableBeanFactory - AliasRegistry

Spring源码之路-DefaulListableBeanFactoryAliasRegistry接口总结源码注释的大概翻译AliasRegistry接口总结这个接口看起来就比较简单了,就是管理主的名称与小名的关系,但是这里的小名也不允许重复。这里有一个方法 String[] getAliases(String name);跟BeanFactory中的方法一模一样,要求也基本一致。为什么在两个接口都拥有这个方法 [ 猜想是在使用BeanFactory对象的时候,需要获取到对象的所有别名,但是又

2020-06-21 14:54:41 127

原创 3.Spring源码之路-DefaulListableBeanFactory - SingletonBeanRegistry

Spring源码之路-DefaulListableBeanFactory - SingletonBeanRegistrySingletonBeanRegistry接口总结源码注释的大概翻译SingletonBeanRegistry接口总结SingletonBeanRegistry的主要作用是提供注册入口,凡是注册进来的Bean都是已经被实例化后的,因为Bean都已经实例化过了,所以不会触发Bean生命周期中的方法.void registerSingleton(String beanName,

2020-06-21 13:57:51 277

原创 2.Spring源码之路-DefaulListableBeanFactory - BeanFactory

BeanFactory接口总结BeanFactory还是一个工厂,类似于工厂设计模式中的Factory,主要还是创建Bean,由实现者来决定如何创建FactoryBean还是一个Bean,通过FactoryBean的名称只能获取到由FactoryBean创建的对象,如果想获取到FactoryBean需要在名字前面加一个 &BeanFactory的接口归类如下:获取Bean实例的方法Object getBean(String name) T getBean(String nam

2020-06-21 03:04:21 228

原创 1.Spring源码之路-DefaulListableBeanFactory - 前言

Spring源码之路-DefaulListableBeanFactory写文章的缘由为什么源码之路要从DefaulListableBeanFactory开始DefaultListableBeanFactory的类关系结构图分解关系 逐个击破写文章的缘由我对spring源码也是看过了好多次,但是每次都只是看个大概流程,没有进行过的任何的详细总结,导致的结果就是,说没看过吧,原理懂一点,说看过吧,里面某些东西的具体实现也很迷糊。所以今天开始从零开始学习spring源码。为什么源码之路要从DefaulLis

2020-06-21 00:56:53 179

转载 npm镜像及配置方法

npm镜像及配置方法npm全称Node Package Manager,是node.js的模块依赖管理工具。由于npm的源在国外,所以国内用户使用起来各种不方便。下面整理出了一部分国内优秀的npm镜像资源,国内用户可以选择使用。国内优秀npm镜像淘宝npm镜像搜索地址:http://npm.taobao.org/ registry地址:http://registry.npm.taobao.org/cnpmjs镜像搜索地址:http://cnpmjs.org/ registry地址:

2020-06-13 18:25:41 1736 2

原创 java资源关闭的特殊情况

资源对象被return的情况,由调用方关闭。ByteArrayInputStream等 不需要关闭资源,close方法为空实现使用Socket获取的InputStream和OutputStream对象不需要关闭...

2019-12-10 17:11:34 110

转载 使用juniversalchardet做字符编码识别

在抓取网站的页面的时候最烦人的一件事情之一就是识别原站点的编码,通常来说只有GBK(GB2312)和UTF8两种,不过依旧需要读取大量Http头信息来识别,有些网站则由于历史原因两种编码同时存在,导致抓取中的一些问题。于是苦苦寻找,终于找到神器juniversalchardet。首先引包<!-- Mozilla的编码识别包 --><dependency&gt...

2019-12-10 16:08:02 2983 4

转载 彻底解决spring mvc XSS漏洞问题(包括json的格式的入参和出参)

目录一,背景二,名词解释三,xss修复的一般处理方法四、扩展jackson定制自己的objectMapper处理json出入参的转义五、结语一,背景昨天收到公司安全部的一封漏洞邮件,说系统注册存在xss存储型漏洞,然后看了一下系统中是有xssFilter处理xss漏洞的,但是注册页面xss注入的却没有处理,经过分析代码和网上查找资料,xssFilter只能处理get请求的...

2019-11-07 16:02:43 1991

原创 git学习 笔记

git reset --hard 从版本库回滚到工作区的已控制区(status 是 没有修改或添加的文件)git reset --soft 从版本库回滚到暂存区git reset HEAD从暂存区回滚到工作区的已修改区(status 是上次的所有提交都变成修改或添加的未进入暂存区的状态)git reset --mix 从版本库回滚到工作区的已修改区...

2019-10-24 13:50:16 105

原创 vim快捷键笔记

i 编辑模式esc 退出编辑模式h 左移j 下移k 上移l 右移v 可视化模式 配合 hjkl 对文本进行选中shift + v 可视化模式 配合jk对文本进行选中 以行为单位ctrl + v 可视化模式 配合 hjkl对本进行选中 以块状为单位w 光标移动下一个单词首部b 光标移动到上一个单词首部e 光标移动到下一个单词尾部ge 光标移动到上一个单...

2019-08-09 16:11:51 81

原创 java mysql地址中的 useUnicode=true&characterEncoding=utf-8

useUnicode=true 后面的配置 characterEncoding配置才能生效characterEncoding=utf-8的配置的作用主要配置的是mysql服务端的编码,mysql驱动的代码中,会将将要发送mysql服务端的sql使用characterEncoding指定的值进行转码,然后将转码后的字节发送到mysql服务端而mysql服务端响应的编码是如何转换的...

2019-08-09 13:54:17 4485

转载 VirtualBox中Linux设置共享文件夹

设置共享文件路径点击虚拟机 设置-->选择 共享文件夹(图1 设置共享文件夹)设置共享文件夹路径1 选择路径 2 填写自定义的共享名称(在后面需要与挂载路径相对应) 3 设置自动挂载/固定分配(图2 设置共享文件路径属性)安装VirtualBox增强工具先安装必备的包执行下面的命令:yum install -y gcc gcc-devel gc...

2019-08-05 15:20:54 15751 3

原创 源码中的设计模式记录

工厂模式 jdk中的Calendar.getInstance() 方法原型模式 Spring中的 prototype单例模式 jdk中的 Runtime类建造者模式 jdk中的StringBuilder适配器模式 Spring中的handleAdapter 是方法适配,还有好多接口适配,实现接口 但都是空方法桥接模式 mysql包中的jdbc的类装饰者模式 Input...

2019-07-23 10:54:35 270

转载 LINUX安装nginx详细步骤

1.安装依赖包//一键安装上面四个依赖yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel2.下载并解压安装包//创建一个文件夹cd /usr/localmkdir nginxcd nginx//下载tar包wget http://nginx.org/download/nginx-1.13.7....

2019-07-15 18:56:19 94

原创 Mybatis运行原理

SessionBeanFactoryBuilder->解析xml文件 将属性设置到configuration中 mappedStatements id -> MappedStatment 一个增删改查标签 rowMapper 类名 -> MapperPro...

2019-07-13 22:20:44 72

转载 [转]IntelliJ IDEA 使用教程(2019图文版) ——从入门到上瘾

摘要: 原创出处https://www.jianshu.com/p/9c65b7613c30「yizhiwazi」欢迎转载,保留摘要,谢谢!1. IDEA VS Eclipse 核心术语比 2. 当前项目配置VS 默认配置 3. 全局JDK(默认配置) 4. 全局Maven(默认配置) 5. 版本控制Git/Svn (默认配置) 6. 自动导包和智能移除 (默认配置) 7. T...

2019-06-09 19:56:03 204

转载 [转]Java 工程师居家必备的 Intellij IDEA Top10 插件

摘要: 原创出处 「柠檬学园」欢迎转载,保留摘要,谢谢!1. lombok2. p3c3. FindBugs-IDEA4. GsonFormat5. Maven Helper6. VisualVM Launcher7. GenerateAllSetter8. MyBatisCodeHelperPro9. Rainbow Brackets10. Translation1. ...

2019-06-09 19:47:38 116

转载 [转载]IDEA一定要改的八条配置

引言坦白说,我很少写这种操作类型的文章。因为这种文章没啥新意,大家操作步骤肯定是一样的。然而,我答应了我的同事小阳,给她出一篇!毕竟人家打算从Eclipse转IDEA了,于是以示鼓励,写一篇给她!那么是哪八条一定要改的配置呢!自动编译开关 忽略大小写开关 智能导包开关 悬浮提示开关 取消单行显示tabs的操作 项目文件编码 滚轴修改字体大小 设置行号显示正文自动编译开...

2019-06-09 13:14:35 192

转载 IntelliJ Idea 常用快捷键列表

修改方法如下:点击 文件菜单(File) –> 点击 设置(Settings… Ctrl+Alt+S), –> 打开设置对话框。在左侧的导航框中点击 KeyMap。接着在右边的树型框中选择 Main menu –> Code –> Completion.接着需要做两件事:1. 移除原来的Cycle Expand Word 的 Alt+/ 快捷键绑定。...

2019-05-22 09:49:39 181

原创 桥接模式理解

桥接模式就是将多个抽象组合在一起。比如游戏机和手柄都是抽象 客户需要根据自己的需要选择不同的游戏机和手柄//游戏机public interface GameContainer{ void startGame();}//手柄public interface Handle{ void handle();}// 完整的机器public abstract clas...

2019-05-17 16:34:33 317

原创 代理模式、适配器模式、装饰者模式的区别

适配器 代理和装饰都是通过组合一个现存对象,通过调用该对象的方法 来实现自己的功能的,它们之间很相像,其实结构型模式都是以继承和组合的方式来实现新的 功能,如果单看实现过程,它们的确很相像,但如果从意图上分析,它们的区别就大了。 代理模式着重将复杂部分抽到中间层,通过这个中间层(代理层〉来控制对目标对象的访 问,它要求代理层和目标对象的接口相同。而适配器模式解决的恰恰是接口发生了变化导致现 有对象...

2019-05-17 14:30:45 1700 1

原创 适配器模式理解

简单的例子大家都懂适配器主要分为两种 类适配器(通过继承实现)和接口适配器(通过实现接口 并持有需要适配的接口)// 以下实例为接口适配器public interface InterfaceA{ void operateA();}//假如A接口有一个实现类public class InterfaceAImpl implements InterfaceA{ ...

2019-05-17 11:26:19 235

转载 IntelliJ IDEA 常用插件一览,让效率成为习惯

一、官方工具IntelliJ IDEA 默认安装并提供了非常多的工具,比如 Git Integration、Maven Integration、Markdown support、SSH Remote Run 等。其中有很多好用,但是不为人知的工具。1.REST client在日常开发过程中,我们或多或少都涉及到 API 接口的测试。例如,有的小伙伴使用 Chrome 的 Postma...

2019-04-28 09:46:06 2095

原创 spring boot的启动过程

SpringApplication调用的最终的构造方法public SpringApplication(ResourceLoader resourceLoader, Class<?>... primarySources) { this.resourceLoader = resourceLoader; //必须要指定PrimarySources Assert.n...

2019-04-12 18:57:18 134

原创 spring boot中的参数及配置文件

spring-boot参数配置文件的约定位置放置(优先级从高到低)1.运行程序的当前工作目录下的config子目录 file:./config2.运行程序的当前工作目录 file:./3.classpath:/config 子目录3.classpath:/ 根目录配置参数的加载顺序(优先级从高到低1.命令行参数2.jvm参数3.环境变量参数4.配置文件参数propertie...

2019-04-12 16:29:45 385

原创 spring-boot-starter 作用 以及如何自定义自己的spring-boot-starter

1.spring-boot-starter的作用是引入依赖的jar包 以及 自己的自定义配置的jar包命名规范: spring官方的starter的规范是 spring-boot-starter-模块名-版本号.jar 第三方的starter的规范是 模块名-spring-boot-starter-版本号.jar2.spring-boot-au...

2019-04-12 14:38:28 7272

原创 推荐博客

spring security博客推荐:https://my.oschina.net/liuyuantao/blog/1922049?from=singlemessageSpringBoot+Docker+Git+Jenkins实现简易的持续集成和持续部署:https://my.oschina.net/merryyou/blog/1799317java博客https:/...

2019-04-08 21:27:27 112

原创 mybatis运行流程文章笔记

-----加载配置文件阶段1.加载主配置文件(带有 Configuration标签的配置文件)2.解析配置文件中的参数设置给对应的属性3.解析mapper映射文件,并将每一个增删改查的标签都解析成一个MappedStatement对象,并存储到Configutation对象中-----创建sqlSession阶段1.根据配置的ExecutorType来决定使用哪种Executo...

2019-03-13 17:47:07 104

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除