自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 单独捕获dubbo异常

一、定义一个rpc异常去继承自己自定义捕获的异常public class RpcRuntimeException extends BadRequestException implements Serializable { public RpcRuntimeException(String message) { super(message); } pu...

2020-03-30 10:38:30 330

原创 日期工具类

package com.yk.pay.merchant.common.utils;import java.math.BigDecimal;import java.math.RoundingMode;import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.temporal.Te...

2019-10-11 11:42:51 111

原创 消息转换器统一对null值处理

import java.nio.charset.Charset;import java.util.ArrayList;import java.util.List;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;imp...

2019-09-17 11:02:08 516

原创 消息转换器封装返回体

<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.58</version> </depen...

2019-09-16 14:08:41 203

原创 随机生成不重复的字符串

public static String shuffleForSortingString(String begin ,String end) { String uuid = UUID.randomUUID().toString().replaceAll("-", "").toUpperCase(); Long randomNum = System.currentTimeMill...

2019-09-11 10:30:55 652

原创 二维码生成

一、添加依赖:<dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>${hutool.version}</version></dependency>...

2019-09-02 15:03:28 248

原创 springboot传参合和反参时值为null的处理

@JsonIgnoreProperties(ignoreUnknown = true) //忽略传参时其他无用字段@JsonInclude(JsonInclude.Include.NON_NULL) // 忽略反参时值为null的字段public class BaseAreaBO implements Serializable { @ApiModelProperty(val...

2019-08-26 14:16:26 1623

原创 异步获取数据

/**:*自定义线程池,避免OOM问题*/ ThreadFactory namedThreadFactory = new ThreadFactoryBuilder().setNameFormat("Merchants-desk-%data").build();Long begin = System.currentTimeMillis(); ExecutorService execu...

2019-08-23 14:40:51 792

原创 bean和实体类转换

@Slf4jpublic class BeanConvertUtil { public static <T> T convertCopy(Object source, Class<T> tClass) { try { T target = tClass.newInstance(); ...

2019-08-23 10:38:59 1102

原创 数据库时间修改为自动更新

ALTER TABLE `base_address` MODIFY COLUMN `update_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间';ALTER TABLE `base_address` ADD COLUMN `create_date` datetim...

2019-08-19 10:46:15 1097

转载 设计模式之状态模式

状态模式什么是状态模式状态模式允许一个对象在其内部状态改变的时候改变其行为。这个对象看上去就像是改变了它的类一样。状态模式应用场景1.一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为。2.操作中含有庞大的多分支的条件语句,且这些分支依赖于该对象的状态。这个状态通常用一个或多个枚举常量表示。通常,有多个操作包含这一相同的条件结构。State模式将每...

2019-06-29 14:19:09 96

转载 设计模式之装饰模式

装饰模式:动态地给一个对象增加一些额外的职责。就扩张功能而言,装饰模式提供了一种比使用子类更加灵活的替代方案假设有一个接口Human,一个接口的实现类Man。人类Human是可以跑步的,但是不能飞如果想给人类加上飞翔的翅膀,可以有三种解决方案:1、修改实现类Man的方法,但不符合开闭原则2、给实现类Man添加一个子类,扩展一个人类可以飞的功能。问题在于,如果又想给人类增加猎豹般奔跑的...

2019-06-25 10:28:49 157

原创 高并发解决方案

高并发方案:首先分析原因:1、解决高并发的入口即客户端与服务器端之间的传输速度,如果带宽不够会影响传输、2、一个网站的核心包括静态资源和动态资源,大部分情况是静态资源占用了绝大多数网站的带宽传输,这时应该采取动静分离架构。3、动静分离架构搭建:可以使用nginx,第三方静态服务器资源,七牛云,阿里云。4、对静态资源进行压缩,使用nginx,gzip压缩,或者使用maven打包成min格式...

2019-06-13 15:26:53 1617

原创 mybatis plus 写sql语句

一、api:public Map<String,Object> selectManagerList(ManagerBean managerBean){ Page page = new Page(managerBean.getPage()==null ? 1:managerBean.getPage(),managerBean.getPageSize()==null ? 10...

2019-05-31 13:34:32 18544

原创 获取全局唯一id(序列号)方法

一、使用UUIDString uuid = UUID.randomUUID().toString().trim().replaceAll("-", ""); System.out.println(uuid);优点:代码实现简单、不占用宽带、数据迁移不受影响缺点:无序、无法保证趋势递增(要求3)字符存储、传输、查询慢、不可读二、使用redis @Auto...

2019-05-06 15:16:27 1269

转载 集群环境下实现session

Spring Boot提供了Spring Session来完成session共享加入以下依赖:<dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session</artifactId> <ver...

2019-05-01 18:10:14 86

原创 java代码层面的优化

代码优化:* (1)不要手动调用GC,可以设置垃圾回收器G1GC* (2)及时消除对象的引用,防止内存泄漏* (3)尽量使用局部变量* (4)尽量使用非同步容器比如使用ArrayList而不用Vector* (5)尽量减少同步范围,比如使用同步代码块而不是使用同步方法* (6)尽量使用延迟加载* (7)尽量减少反射,添加缓存* (8)尽量使用连接池,线程池等* ...

2019-04-29 19:29:27 270

转载 js中时间转换为date型

若显示为YYYY-MM-DD HH:mm:ss格式,调用如下方法:datetimeFormat(longTypeDate);若显示为YYYY-MM-DD格式,调用如下方法:dateFormat(longTypeDate);Js中具体方法如下: /*         * 时间格式化工具          * 把Long类型的1527672756454日期还原yyyy-MM-d...

2018-11-13 09:26:52 3036

转载 java锁机制

一,重入锁:  1,ReenTrantLock可重入锁和synchronized     Synchronized是依赖于JVM实现的,而ReenTrantLock是JDK实现的,有什么区别,说白了就类似于操作系统来控制 实现和用户自己敲代码实现的区别.2,功能区别:便利性:很明显Synchronized的使用比较方便简洁,并且由编译器去保证锁的加锁和释放,而ReenTrantLock需要手工声明...

2018-07-10 11:44:50 155

原创 手写ArrayList

一:代码实现public class WjcArrayList { //ArrayList底层采用数组存放 private Object[] elementDate; //默认初始容量 private static final int DEFAULT_CAPACITY=2; //实际存储容量大小 private int size; //指定数组初始容量  public  WjcArrayList...

2018-07-10 11:44:39 286

转载 手写spring事物

一:SpringIoc原理:1,IOC:控制反转,是spring的核心,是指把bean与bean之间的关系交给spring来处理,由spring来管理对象的生命周期和关系。2,DI:依赖注入:是指A需要操作数据库的时候自己写代码会创建Connection对象,但是有了spring之后A只需要告诉spring我需要一个connecion对象,这时spring会创建一个Connection对象注入到A...

2018-07-10 11:44:26 375

转载 spring事物的传播行为和隔离级别

Spring声明式事务@Transactional传播行为:required:业务方法需要在一个事务中运行,如果方法运行时,已处在一个事务中,那么就加入该事务,否则自己创建一个新的事务。这是spring默认的传播行为not_supported:声明方法不需要事务。如果方法没有关联到一个事务,容器不会为他开启事务,如果方法在一个事务中被调用,该事务会被挂起,调用结束后,原先的事务会恢复执行requi...

2018-07-10 11:44:06 207

转载 线程池的原理及实现

1、线程池简介:    多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。        假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。    如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。                一个线程池包括以下四个基本组...

2018-07-10 11:43:40 85

原创 nginx反向代理和使用tomcat实现负载均衡

一:使用同一个端口号跳转到不同服务器:1,配置两个tomcat服务器,也可配置自定义域名2,打开nginx中F:\nginx\nginx-1.8.1\conf 中的nginx.conf文件:在最下面建立两个虚拟主机:server {        listen       80;        server_name  8080.wangchi.com;        #charset koi8-...

2018-07-10 11:43:28 211

原创 修改本地域名

进入本地路径:C:\Windows\System32\drivers\etc   打开hosts文件:# localhost name resolution is handled within DNS itself. 127.0.0.1       localhost# ::1             localhost   这里可以定义本地域名同一个电脑运行多个tomcat方法:一:修改serv...

2018-07-10 11:43:10 2025

原创 JSON与xml简介

1,Json是一种轻量级的数据交换格式,易于阅读和编写同时也易于解析和传输。2,Json应用场景   RPC远程调用时,和提供供给外部访问接口,前端ajax异步访问数据时都用到了Json。3,封装Json流行框架fastjson  gson  jackson使用fastjson 解析JSON1在pom.xml中添加依赖   &lt;!-- 添加阿里巴巴解析json工具类 --&gt;       ...

2018-07-10 11:42:47 182

转载 手写HTTP服务器

/**  * 服务器核心类  * @throws IOException   */ private ServerSocket serverSocket; private int PORTNUMBER=9001;//端口号 private String FNRL = "\r\n"; private String SPACE = "  "; public static void main(Strin...

2018-07-10 11:42:28 228

原创 MD5加密

public class MD5 { public static final int INTERATIONS = 1024; public static final String key = "uv8t9hyj3f5gkrq4gz8vv9moatpsdt9w"; public static final String UTF8 = "utf-8"; /**  * MD5 加密  *   * @par...

2018-07-10 11:42:15 98

原创 Spring事物详解

一Spring事物详解什么是事物:应用程序的一系列操作,事务中的一系列的操作要么全部成功,要么一个都不做。 事物的特性:原子性,一致性,隔离性,持续性。二,Spring事物处理机制:声明式事物,编程式事物1,声明式事物原理:Spring声明式事物是建立在AOP基础上的,其本质是对目标方法进行前后拦截,在方法之前创建或者加入一个事物,方法之后进行事物的提交或者回滚,这些都交给Spring来处理。2,...

2018-07-10 11:42:01 427

原创 java生成验证码

1,jsp页面<%String path=request.getContextPath();%><script type="text/javascript">function relodeCode(){var time = new Date().getTime();document.getElementById("pic").src="<%...

2018-07-10 11:41:50 89

原创 网页自动刷新代码,以及自动跳转

1.页面自动刷新:把如下代码加入<head&gt;区域中<meta http-equiv="refresh" content="20"&gt;,其中20指每隔20秒刷新一次页面.2.页面自动跳转:把如下代码加入<head&gt;区域中<meta http-equiv="refresh" content="20;url=http://www.hackhome.com"&gt;,其中20指隔20秒后跳

2018-07-10 11:41:39 1286

原创 java生成二维码方法

一,jquery-qrcode方法(jsp页面写)1,引入两个js          jquery-3.2.1.min.js          jquery.qrcode.min.js2,创建web项目,在WebContent下创建js文件将上面两个复制到js下3,相同路径下创建jsp文件夹,引入JavaScript,如下:    &lt;%@ page language="java" conte...

2018-07-10 11:41:28 214

转载 JSONArray与JSONObject

1,JSONObject json对象,就是一个键对应一个值,使用的是大括号{ },如:{key:value}2,JSONArray  json数组,使用中括号[ ],只不过数组里面的项也是json键值对格式的  Json对象中添加的是键值对,JSONArray中添加的是Json对象JSONObject Json = new JSONObject();  JSONArray JsonArray =...

2018-07-10 11:41:18 1288

原创 sql语句排序

1,sqlserver中给top动态传值。          DECLARE @topn AS int"            SET @topn=?" select Top  (@topn) * from user_info where   order by green_beans desc,nativeQuery=true)sql server:读取前10条:select top (10) *...

2018-07-10 11:41:05 4682

原创 spring之管理bean的生命周期

1,创建一个类:        public class Car { private String brand; public Car() { System.out.println("Car.constructor 构造器"); } @Override public String toString() { return "Car [brand=" + brand + "]"; } public...

2018-07-10 11:40:38 281

转载 使用MD5进行加盐加密

首先引入一个jar包: &lt;dependency&gt;      &lt;groupId&gt;commons-codec&lt;/groupId&gt;      &lt;artifactId&gt;commons-codec&lt;/artifactId&gt;  &lt;/dependency&gt; /**     * 加密     *      */    ...

2018-07-10 11:39:30 2720

原创 spring之使用外部属性文件(数据源)

1,首先需要引入两个jar包:c3p0-0.9.1.1.jar   mysql-connector-java-5.1.4.jar,然后配置xml,引入命名空间context:        &lt;context:property-placeholder location="classpath:db.properties"/&gt;------表示引入的文件          &lt;bean i...

2018-07-10 11:36:31 229

转载 java中字符串变星号的方法

1,用一个方法去改:         public class main1 { public static void main(String[] args) { String str = "qwertyu"; String aa = main1.getStarString(str, 0, str.length()); System.out.println(aa); } /**  * 对字符串...

2018-07-10 11:36:14 6962

转载 java中避免表单重复提价的方法

一,利用js防止表单重复提交&lt;%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%&gt;&lt;!DOCTYPE HTML&gt;&lt;html&gt;  &lt;head&gt;    &lt;title&gt;Form表单&lt;/title&gt;     

2018-07-10 11:35:58 277

原创 安装maven教程

1,下载apache-maven-3.2.1-bin.zip文件后,并解压到  D:\maven\apache-maven-3.2.1配置maven3的环境变量:先配置M2_HOME的环境变量,新建一个系统变量:M2_HOME , 路径是:D:\maven\apache-maven-3.2.1,如图所示:2,再配置path环境变量,在path值的末尾添加"%M2_HOME%\bin",如下图所示;...

2018-07-10 11:35:37 240

空空如也

空空如也

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

TA关注的人

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