自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 泛型之不变、协变、逆变

泛型之协变、逆变、 不变

2022-10-08 21:09:14 1031 2

原创 kotlin基础知识

kotlin 基础知识((基础不牢、地动山摇)

2022-09-25 16:11:47 1256 1

原创 kotlin学习路线

kotlin学习路线

2022-09-19 22:52:15 780

原创 初识kotlin(初用kotlin一时爽、一直用一直爽)

初识kotlin(用时一时爽,一直用一直爽)

2022-09-18 21:42:58 4826 7

原创 javaMail 发送送邮件,项目中异常告警使用

maven引用<dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version></dependency>工具类:package com.xx...

2019-11-30 11:59:52 598

原创 es 常见操作

1.创建模板PUT _template/template_purchaser_info{ "order": 1, "template": "purchaser_invoice_*", "settings": { "index": { "number_of_shards": "6", "number_of_replicas"...

2019-10-10 18:16:56 240

原创 Git流程

git-flowgit-flow应该是目前流传最广的 Git 分支管理实践。git-flow 围绕的核心概念是版本发布(release)。因此 git-flow 适用于有较长版本发布周期的项目。虽然目前推崇的做法是持续集成和随时发布。有的项目甚至可以一天发布很多次。随时发布对于 SaaS 服务类的项目来说是很适合的。不过仍然有很大数量的项目的发布周期是几个星期甚至几个月。较长的发布周期可能是...

2019-05-05 10:24:56 270 1

原创 sonar 安装

https://www.cnblogs.com/fanbi/p/6504513.html新建 sonar-project.properties# must be unique in a given SonarQube instancesonar.projectKey=my-bill-service# this is the name displayed in the SonarQub...

2019-01-24 14:18:04 183

转载 Linux 搭建es

--下载有两个版本 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.1.2.tar.gz--请选择一个wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/tar/el...

2019-01-18 16:12:34 578

转载 Spring声明式事务管理之一:五大属性分析

1.Spring事务管理概述  Spring事务管理分为编程式事务管理和声明式事务管理两种。编程式事务允许用户在实现代码中使用显式的方式调用beginTransaction()开启事务、commit()提交事务、rollback()回滚事务,从而可以达到精确定义事务的边界。声明式事务管理底层是建立在Spring AOP的基础上,在方式执行前后进行拦截,并在目标方法开始执行前创建新事务或加入一个...

2018-10-12 14:18:22 419

转载 Spring事务传播行为详解

前言Spring在TransactionDefinition接口中规定了7种类型的事务传播行为。事务传播行为是Spring框架独有的事务增强特性,他不属于的事务实际提供方数据库行为。这是Spring为我们提供的强大的工具箱,使用事务传播行可以为我们的开发工作提供许多便利。但是人们对他的误解也颇多,你一定也听过“service方法事务最好不要嵌套”的传言。要想正确的使用工具首先需要了解工具。本文...

2018-10-12 13:51:45 138

转载 Spring Cloud组件完整demo

托管于github:https://github.com/Lovnx/micro-service说明:**工程名** **描述** **端口** eureka-server 服务发现与注册中心 7070 ribbon 负载均衡器 7071 config-server 配置管理中心 7072 zuul 动态路由器 7...

2018-10-10 10:06:43 992

原创 Spring cloud 组建之config-server

添加 maven 依赖&lt;dependency&gt; &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt; &lt;artifactId&gt;spring-cloud-config-server&lt;/artifactId&gt;&lt;/dependency&gt;启动类添加@EnableConf...

2018-10-09 11:56:26 240

原创 kafaka idea源码环境搭建

1.下载  gradle 2.下载源码(版本  0.10.2.1 低版本scala 编译出现问题)(前两步 这个博客可以搞定,https://www.iteblog.com/archives/2208.html)3.idea 安装scala环境(从硬盘上安装scala遇到的问题Plugin ‘scala’ is incompatible with this installation (...

2018-09-04 10:34:42 352

原创 jvm 相关

1. 类的加载过程--》链接---》初始化    双亲委派模型(bootstrapClassloader c++编写 加载其他类加载器)  例如:当jvm要加载Test.class的时候,  (1)首先会到自定义加载器中查找,看是否已经加载过,如果已经加载过,则返回字节码。  (2)如果自定义加载器没有加载过,则询问上一层加载器(即AppClassLoader)是否已经加载过Test....

2018-08-22 17:53:00 157

原创 HashTable 和 HashHashMap核心

1.Hashtable是个线程安全的类(HashMap线程安全) 使用同步代码块控制;2.Hasbtable并不允许值和键为空(null),若为空,会抛空指针(HashMap可以);3.Hashtable不允许键重复,若键重复,则新插入的值会覆盖旧值(同HashMap);4.Hashtable同样是通过链表法解决冲突;5.Hashtable根据hashcode计算索引时将hashc...

2018-08-21 19:24:36 205

原创 Mybatis 常见的功能实现

1.获取主键自增的  的方法         1.添加 useGeneratedKeys=true&lt;insert id="insert1" parameterType="TUser" useGeneratedKeys="true" keyProperty="id"&gt;         2 .order 表示 执行insert 之后  LAST_INSERT_ID() ...

2018-07-29 18:28:36 743

翻译 简单介绍:Mac 上安装和使用PostgreSQL的方法

参考 https://www.jianshu.com/p/fedda9824f6a  这个写的非常好补充1点 :如果使用了zsh  则需要配置在.zsh的配置的shell中,不然命令不会生效

2018-01-04 18:51:38 11516

原创 存储过程oracle pg/sql

1.。。pg版本create or replace  function pro_cust_interval_first() returns void as$$declare    shop_id        bzcrm.t_crm_shop_customer_interval.customer_id%type;    customer_id    bzcrm.t_crm_

2017-11-09 17:17:15 867

原创 idea intelj 的使用细节

intelj 的使用细节1 。启动项目,更改前台代码没有生效。  使用的deploy 的war 有两种 使用explored 会同步前端更改2 。项目启动,转义字符,特殊字符编译不通过3 。Tomcat 启动日志乱码    -Dfile.encoding=UTF-8

2017-11-09 16:19:43 718

原创 关于Class MyBatisPagingItemReader<T> 读取数据只读第一条分页数据就结束了问题

都是单条单表数据进行导入使用的JdbcPagingItemReader设置分页参数,就可以分页读取。现在导入数据需要维护层级关系,使用jdbc完全不可以满足关系进而选择MyBatisPagingItemReader, 使用mabatis维持层级关系,问题来了:当我设置分页参数为500的时候,返回的结果list是420,然后springBatch就没有继续往下读取了?解决办法: 使用

2017-08-31 14:44:43 5438

转载 gc算法

1、引用计数(reference counting)    原理:此对象有一个引用,则+1;删除一个引用,则-1。只用收集计数为0的对象。    缺点:无法处理循环引用的问题。如:对象A和B分别有字段b、a,令A.b=B和B.a=A,除此之外这2个对象再无任何引用,那实际上这2个对象已经不可能再被访问,但是引用计数算法却无法回收他们。 2、复制(copy

2017-02-16 17:03:38 375

原创 java finalize()方法解析

当垃圾回收器将要释放无用对象的内存时,先调用该对象的finalize()方法。如果在程序终止之前垃圾回收器始终没有执行垃圾回收操作,那么垃圾回收器将始终不会调用无用对象的finalize()方法。在Java的Object祖先类中提供了protected 类型的finalize()方法,因此任何Java类都可以覆盖finalize()方法,在这个方法中进行释放对象所占的相关资源的操作。 Ja

2017-02-14 16:20:38 549

原创 浅析spring中创建的对象如何保证不被回收

浅析spring中创建的对象如何保证不被回收JVM通过可达性分析来判定对象是否存活。这个算法的基本思路就是通过一系列称为 GC Roots的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为 引用链 ,当一个对象到 GC Roots 没有任何 引用链 相连时,则证明此对象是不可用的。如下图中对象object1、object2、object3、objec

2017-02-13 18:32:08 9088 10

原创 mybatis 批量插入使用序列以及批量更新(Oracle数据库)

insert into MOBILE_RECIPIENT(ID, MOBILE_DETAIL_ID, MOBILE, ERROR, STATUS, CREATE_TIME,CONTENT) select SEQUENCE_MOBILE_RECIPIENT_ID.NEXTVAL ,A.* from (        select           #{item.mobileDeta

2017-02-13 15:02:58 2449

转载 Redis增加或删除节点

Redis集群添加节点1:首先把需要添加的节点启动cd /usr/local/cluster/mkdir 7006cp /usr/local/cluster/redis.conf  /usr/local/cluster/7006/cd /usr/local/cluster/7006/vi redis.conf##修改redis

2017-02-13 14:32:10 567

转载 jvm内存分配、管理小结

首先是概念层面的几个问题:Java中运行时内存结构有哪几种?Java中为什么要设计堆栈分离?Java多线程中是如何实现数据共享的?Java反射的基础是什么?然后是运用层面:引用类型变量和对象的区别?什么情况下用局部变量,什么情况下用成员变量?数组如何初始化?声明一个数组的过程中,如何分配内存?声明基本类型数组和声明引用类型的数组,初始化时,内存分配机制有什么

2017-02-09 15:17:31 366

原创 神奇的Annotation

什么是元数据(metadata)元数据由metadata译来,所谓的元数据就是“关于数据的数据”,更通俗的说就是描述数据的数据,对数据及信息资源的描述性信息.比如说一个文本文件,有创建时间,创建人,文件大小等数据,这都可以理解为是元数据.在java中,元数据以标签的形式存在java代码中,它的存在并不影响程序代码的编译和执行,通常它被用来生成其它的文件或运行时知道被运行代码的描述信

2016-12-28 14:21:19 2908 1

原创 HttpServletRequestWrapper 实现xss注入

自定义一个wapper 实现 HttpServletRequestWrapperpackage cn.baozun.crm.task.filter;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletRequestWrapper;/** * * <p>xss过滤</p> * @au

2016-12-27 17:40:40 6825

原创 springMVC的WebArgumentResolver扩展详解 注入共同参数

MIS系统开发的时候,相信大家都需要获取当前登录用户,用来记录操作员等。而平时我们极有可能用的这种办法: request.getSession().getAttribute("CURRENT_USER");比如以前保存资源是这样的:@RequestMapping(value = "save.json", method = RequestMethod.POST)

2016-12-27 17:16:40 1622

原创 动态代理使用以及Proxy的内部实现

java动态代理机制以巧妙的方式实现了代理模式的设计理念。代理模式示例代码public interface Subject { public void doSomething(); } public class RealSubject implements Subject { public void doSomething()

2016-12-27 15:30:22 989

原创 java反射常见API

1、反射的基础:Class在程序运行期间,Java运行时系统始终为所有的对象维护一个被称为运行时的类型标识。这个信息保存着每个对象所属的类足迹。虚拟机利用运行时信息选择相应的方法执行。然而,可以通过专门的Java类访问这些信息。保存这些信息的类称为Class,泛型形式为Class。Class是反射机制的基础,反射API通过操作Class来获取其完整结构。获取Class的常用方式

2016-12-27 14:50:06 706

原创 spring容器启动就获得实现指定接口的beanMap

package cn.baozun.crm.listener;import java.util.HashMap;import java.util.Map;import java.util.Map.Entry;import org.springframework.context.ApplicationListener;import org.springframew

2016-12-26 19:33:26 1367

原创 获取实现接口的的第一个泛型实例工具类

package cn.baozun.crm.base.util;/** * Copyright (c) 2005-2009 springside.org.cn * * Licensed under the Apache License, Version 2.0 (the "License"); *  * $Id: ReflectionUtils.java,v 1.2

2016-12-26 19:27:54 889

原创 java 泛型 应用 type

java中class,method,field的继承体系java中所有对象的类型定义类Type说明:Type : Type is the common superinterface for all types in the Java programming language. These include raw types,

2016-12-26 19:25:10 518

原创 静态类加载过程、对象的创建过程

类加载的过程:1、当在程序中要使用某个类的时候,JVM 会先在当前的方法区中找有没有这个class文件信息,如果没有这时JVM会先去加载这个class文件2、加载的时候,如果配置了classpath环境变量,那么JVM会到classpath所指的目录下去找对应的class文件,如果没有配置classpath环境变量,那么就在当前目录下找对应的class文件。3、当JVM找了对应的cla

2016-12-16 18:06:15 2660 1

原创 this关键字、static关键字、代码块

this关键字的作用:              1、在Java中任何方法中都一个this变量,这个变量用来记录调用这个方法的那个对象。                     this指向调用这个方法的那个对象。              2、可以使用this区别成员变量和局部变量同名问题。              3、调用构造方法代码:         

2016-12-16 18:04:42 451

原创 java 构造方法

构造方法的特点:                     1、构造方法的方法名必须和当前的类名保持一致。                     2、构造方法是没有返回值的,也就是在书写构造方法的时候不能书写返回值类型(注意这里连void都不能写)可以添加修饰符 构造方法中需要注意的问题:              1、如果在一个构造方法中调用其他的构造方法,那么这个thi

2016-12-16 16:02:39 4789

原创 java数组

数组是Java中的一类容器,主要用来存储多个类型相同的数据,并且存储的数据个数是固定的。对于容器,它可以存储数据,也能从中取出数据。集合。 数组的特点:类型统一,个数可固定,有下标。使用length以得到数组的长度定义:元素类型[] 数组名 = new 元素类型[数组长度];元素类型[] 数组名 = {元素1,元素2...... 元素n}; 数组的常见操作:由于

2016-12-16 15:45:02 299

原创 java运算符

算术运算、赋值运算、关系运算、逻辑运算、位运算、三元运算。算术运算:+ - * / % 数据类型一致,运算的结果和运算数据保持一致。1234 / 1000 *1000 = 100010 % 3 = 13 % 10 = 310 ÷ 3  =  3 …… 1 ++ -- 自增 自减运算int a =10;int b = a ++;int c = ++a;自增自减

2016-12-16 15:36:58 629

空空如也

空空如也

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

TA关注的人

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