自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CHENJINGBIN的博客

趁年轻,多出错

  • 博客(130)
  • 资源 (1)
  • 收藏
  • 关注

原创 两层for循环实现右上角打印

目录两层for循环实现右上角打印的六种不同顺序第一种顺序实现第二种顺序实现第三种顺序实现第四种顺序实现第五种顺序实现第六种顺序实现总结方法其他话题最终代码两层for循环实现右上角打印的六种不同顺序第一种顺序实现效果图如下: /** * 0 1 2 3 * 0 0 4 5 * 0 0 0 6 * @return */public static int[][] show1(){ int[][]

2020-11-21 12:35:21 496

原创 暴力破解带有密码的压缩文件

一 暴力破解,就是不断生成新的密码去尝试能否破解成功。假如我们的密码位数为3位,其里面的值有可能是0或者1,其产生的密码集的数量为2的3次幂,也就是八个,然后一个一个去破解。而这生成这8个密码的过程就有一个递归规则存在。我们传入深度deep和对应字符串passwd两个参数,如果深度为1,直接输出字符串passwd,如果深度不为1,把深度deep减一,并把可能存在的字符串集合[0,1]遍历,添加...

2020-03-01 14:19:14 19924 1

原创 寻找两个有序数组的中位数

给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。实例1nums1 = [1, 3]nums2 = [2]则中位数是 2.0算法1:把两个有序数组合并成一个数组之后找到对应中位数的值。算法2:先计算两个目标数组长度之和...

2019-10-24 00:15:35 298

原创 Z 字形变换

将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。其算法的流程:按顺序遍历字符串 s;res...

2019-10-23 23:48:56 257

原创 maven install时报错Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin 问题方法

针对上面的问题有两种解决办法:1使用命令行解决mvn clean package -Dmaven.test.skip=true 2在pom.xml文件中添加插件信息 <plugin> <groupId>org.apache.maven.plugins</groupId> <art...

2019-08-13 17:27:01 691

原创 springboot+swagger导出文档

1maven配置 <!--swagger 基础jar --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <...

2019-08-13 12:08:01 3124 2

原创 mysql删除重复记录,只保存一条

我们有这样的一种经历,历史数据表中重复插入多条记录,我们需要去删除掉重复的记录只保留一条记录。情况说明:有一张表tbl_data_meter_h,里面有两个字段分别是IMEI和FREEZE_DATE组成唯一索引。首先是分组查出重复记录列select IMEI,FREEZE_DATE from tbl_data_meter_h group by IMEI,FREEZE_DATE having...

2019-06-12 19:20:23 3171

原创 mysql插入更新操作

同一条数据多次插入到数据库中,会形成脏数据,解决的办法是加上唯一索引,之后的操作会先在数据库中查找有没有存在这样一个唯一索引,如果不存在的话会往数据库里面插入一条新的数据,如果存在的话会进行更新的操作。如果在高并发的情景下上述操作不是原子性。解决的办法可以使用mysql 的关键字ON DUPLICATE KEY UPDATE。具体SQL展示如下INSERT INTO tbl_data_mete...

2019-06-06 14:54:29 2628

原创 spring事务无效原因总结

spring 事务目前有二种,声明式(declarative transaction)和编程式(programming transaction)。我们常用的有@Transactional去实现,而使用注解实现,那就会涉及到代理模式,而常用的有两种,一种是针对没有接口的cglib,另外一种就是针对有接口的jdk动态代理。使用@Transactional无效的可能有:1同一个类中,一个没有使用@...

2019-05-31 21:48:28 308

原创 闭包表

闭包表我们在开发中经常使用到树,而数据库中树的存储比较常用的是使用邻接表(父节点和子节点都同时存在于一行中)。但是使用邻接表有一个不好的地方,我如果要找某个节点下所有的子节点就必须要重复的递归去寻找,并且深度是不知道的,这会大大消耗性能。那把邻接表改变为路径表(一个字段记录其节点的情况,如1/2/3,1是2的父节点,2是3的父节点)。这样要找其子节点时非常的方便,但是节点发生变动时,修改起来就...

2019-05-17 18:40:58 6419

原创 idea springboot项目开启远程调试

简介:1为什么需要远程调试?其原因比较简单,就是生产的环境比我们平时开发和测试的都要复杂。2远程调试需要注意的是什么?远程调试的代码和本地需要一致,否则调试的结果不正确。步骤:启动项目项目打包成jar包,正常的启动命令是:java -jar demo.jar而现在需要远程调试,那就在上面的命令上添加上一些参数,如下:java -Xdebug -Xrunjdwp:server...

2019-04-05 15:04:57 2366 1

转载 git pull 和本地代码冲突的处理

多人协同开发,会出现各种冲突,比较常见的是我和别人同时修改同一个文件,别人修改好后上传到git仓库,我需要拉取他修改的代码和我本地的代码合并。当我们使用git pull时会出现报错信息,需要我们自己手动去合并。这里有一个比较简单的操作:1、先将本地修改存储起来$ git stash这样本地的所有修改就都被暂时存储起来 。其中stash@{0}就是刚才保存的标记。2、pull内容暂存...

2019-02-25 21:03:33 5333

原创 springcloud项目出现的问题记录

1.eureka注册某个服务,需要多个同样这个服务,需要他们的spring.application.name一样,而eureka.instance.instance-id不一样即可。2部署服务的时候出现zuul找不到对应的服务,查找发现,对应的服务ip地址不一样,其原因可能是部署服务的机器多网卡,那就需要在找不到服务的这个工程的application.yml文件中添加上eureka.instan...

2019-02-15 22:43:37 823

原创 jdk动态代理实现

说jdk动态代理模式,先来说一下什么是代理模式,顾名思义,就是别人需要做的活让其他人代理做了。比较常见的是,我需要买火车票,我现在没有办法去火车站购买,找到离我最近的火车票代理点购买火车票。而jdk实现的代理模式实现起来比较简单,重写接口方法,但是业务模块需要实现接口才能使用jdk的代理模式。重写的接口之前还需要了解一个东西,那就是java的反射机制,这里不详细说反射机制。JDK动态代理所用到的...

2019-02-07 12:28:51 209

原创 分组查询出最新的记录

本人使用MySQL 5.7,子查询里面进行排序后再进行分组操作,取出的数据为最老的一条数据。换一个方法实现,使用substring_index函数和group_concat实现select SUBSTRING_INDEX(group_concat(id order by `freeze_time` desc),',',1) as id from tab_machine_fields group...

2019-01-15 15:07:56 1092

原创 实时排名算法简单分析

需求分析排名这个需求在比较多的项目中都有出现过,大家对此都不会感到太陌生,排名需要满足一下需求:1查询用户所在的名次。2查询前N名的用户。3实时排名。解决的办法有:一数据库解决方案单表操作...

2019-01-15 15:02:57 3684

原创 每用户每天最多访问n次接口思路分析

上述标题的描述,我们知道要让一个用户在这一天中只能访问n次这个接口,那就有一个计数器的问题,我们可以选用redis去实现,redis有过期时间,而普通数据库mysql,把数据取出后加一重新插入到数据库中,接口数据量不大,mysql读写基本还是可以实现的,但是在大量的数据涌入,频繁的读写数据库,数据库的压力会越来越大,最后可能会宕机。计数器是 Redis 的原子性自增操作可实现的最直观的模式了,它...

2018-11-27 11:40:44 569

原创 spring cloud config使用svn作为仓库

springcloud config 默认是使用git,但是比较多的公司还是使用svn。这里我使用svn来作为仓库来配置config server .config serverpom.xml文件&lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&...

2018-11-08 17:40:44 730

原创 Idea git回滚版本

第一步:点击项目右键git-&gt;Show Histroy -&gt;选择需要回滚的版本,右键Copy Revision Number第二步:方法一:之后在TerMinal上输入命令git reset --head XXXXXgit push -f -u origin master.方法二:a.右击项目依次选中:git-&gt;Repository-&gt;Reset HEADb. 选...

2018-11-07 10:49:05 25515 2

原创 API接口的防重放

我们在设计API接口时,最怕的莫过于同一个接口给用户截获重放提交,那什么是重放提交:对同一个请求发送多次到后台,对系统产生异常影响。应对的策略有:1使用时间戳timestamp。2使用nonce,什么是nonce呢? nonce = MD5(timestampe+rand(0,1000))3使用timestamp+nonce通常是使用第三种的方法去处理。服务端1第一次接受请求,对请求...

2018-10-06 23:02:26 4756

原创 window 服务器中安装部署springboo服务

window 服务器中安装部署springboo服务部署服务之前都需要打包好安装的jar包或者是war包,好在使用的是sprinboot,直接在项目的target文件夹下会看到对应项目的jar包或者是war包。window服务器下部署springboot 服务,无非是分为两种,一种是java启动对应的jar包,另一种就是安装tomcat或者jboss等web服务器运行对应的war包。我今天就说...

2018-09-22 21:46:38 285

原创 npm install 使用过程出现的问题总结

1使用npm install 出现python 路径找不到,需要安装python ,版本最好为2.7. 在window的环境变量中添加上python的包路径。 2. npm install 报node-sass错误 原因:npm install 的时候所下载的node-sass文件夹是空的在C:\Users\admin.AppData\Roaming\npm-cache\node-sas...

2018-09-11 10:33:24 3017

原创 springboot 使用@Bean 好处与坏处

相信使用过springboot 的人都有用过@Configuration加上@Bean去注册一个bean 对象,这样我们就不用再去写xml文件去注册bean对象。 而@Configuration标注在类上,相当于把该类作为spring的xml配置文件中的&lt; beans&gt;,作用为:配置spring容器(应用上下文), @Bean标注在方法上(返回某个实例的方法),等价于spring的...

2018-09-07 23:39:08 14403 1

原创 Springboot 项目出现java.lang.ArrayStoreException问题思考

参考文献:https://blog.csdn.net/hengyunabc/article/details/79475505使用springboot 2 构建项目,调试代码的时候出现了如下的报错信息Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name...

2018-08-18 11:22:20 16482 1

转载 Mybatis传递多个参数的解决办法(三种)

第一种方案DAO层的函数方法Public User selectUser(String name,String area); 对应的Mapper.xml select * from user_user_t where user_name = #{0} and user_area=#{1} 其中,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参...

2018-07-26 11:54:13 237

原创 windows 环境下jenkins自动部署问题总结

自动部署的流程是git/svn下载源码,用mvn打包,停止tomcat服务,把生成的war包放到tomcat下的webapps文件夹下,重新启动tomcat,最后是检验项目。 正常情况下我们都是在Linux环境下部署jenkins,但是测试服务器只能用windows,那自动部署的命令那就有点不一样了。 遇到的一种情况:dos命令不会,这里需要用到的几个命令,第一个复制命令:copy,第二个是重...

2018-07-23 11:06:35 943

转载 Window下同一台服务器部署多个Tomcat、服务方式启动简要配置

转:https://blog.csdn.net/keitho00/article/details/45482753关键配置:修改CATALINA_HOME指向不同的Tomcat目录,把每个Tomcat配置为服务方式启动。系统环境:D盘下,放2个Tomcat解压版,分别是D:\Tomcat60、D:\Tomcat60A版本:Tomcat6.01.进入Tomcat60A\bin,用文本...

2018-07-21 12:04:53 305

原创 跨域请求

跨域请求,协议,域名,端口有一个不一样都是跨域请求。 产生跨域请求的原因: 同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。 比如http://www.1234.com和https://www.1234.com,同样都

2018-04-25 21:07:42 194

原创 如何在springmvc 中返回jsonp格式

在这里需要使用springmvc4.1或之上的版本。 需要继承MappingJackson2HttpMessageConverter这个类,重写writeInternal方法。 基本步骤: 1写继承MappingJackson2HttpMessageConverter的类package com.ljlx.filter;import java.io.IOException;import jav

2018-04-25 19:06:06 1680

原创 mysql存储过程

一、mysql存储过程的一般写法: 1创建存储过程CREATE [DEFINER = { user | CURRENT_USER }] PROCEDURE sp_name ([proc_parameter[,...]]) [characteristic ...] routine_bodyproc_parameter: [ IN | OUT | INOUT ] param_

2018-03-14 12:51:18 186

原创 ssm项目整合shiro

之前有一篇文章是简单的介绍shiro的,但是现在需要整合到ssm的项目中,下面是步骤: 1、数据库中创建五张表,分别是用户表t_user、角色表t_role、权限表t_permission、用户和角色的关系表t_user_role、角色和权限表t_role_permission.DROP TABLE IF EXISTS `t_permission`;CREATE TABLE `t_permiss

2018-02-04 22:11:32 380

原创 rabbitMQ(四) 远程调用RPC

如果需要远程计算机上运行一个函数,等待结果。这就是一个不同的故事了,这种模式通常被称为远程过程调用或者RPC。Callback queue一般做rpc在RabbitMQ是比较容易的,一个客户端发送一个请求信息和一个响应信息的服务器回复,为了得到一个响应,我们需要发送一个回调队列地址请求。Message属性:AMQP协议一共预定义了14个属性,但是大多数属性很少使用,下面几个可能用的比较多delive

2018-01-04 16:53:52 355

原创 rabbitMQ(三) 不同的交换机规则

在上一篇的内容中,讲到rabbitMQ的发布和订阅,也就是使用了交换机里面的其中一个机制。 现在继续接着讲其他的 4)路由 之前的发布和订阅那是全部发过去的,现在需要做的是给他需要的消息,其他不需要的就不接受。 绑定是交换和队列之间的关系。这可以简单地理解为:队列对来自这个交换的消息感兴趣。 绑定可以采用额外的routingKey参数。为了避免混淆basic_publish参数,我们将其称

2018-01-04 15:59:35 730

原创 rabbitMQ(二) java简单使用rabbitMQ

前言:在这里我将用java来简单的实现rabbitMQ。下面我们带着下面问题来一步步的了解和学习rabbitMQ。1:如果消费者连接中断,这期间我们应该怎么办2:如何做到负载均衡3:如何有效的将数据发送到相关的接收者?就是怎么样过滤4:如何保证消费者收到完整正确的数据5:如何让优先级高的接收者先收到数据1)”Hello RabbitMQ”的实现 用Java编写两个程序; 发送单个消息的生产者,以及

2018-01-04 15:35:58 631

原创 rabbitmq(一) 了解rabbitmq和在window下安装

首先是了解什么是MQ: MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过 队列来通信。队列的使用除去了接收和发送应用程序同时

2018-01-04 14:25:48 271

转载 Hadoop单机部署(转)

转载,来源于https://www.cnblogs.com/ee900222/p/hadoop_1.html1. Hadoop介绍Hadoop是一个能够对海量数据进行分布式处理的系统架构。Hadoop框架的核心是:HDFS和MapReduce。 HDFS分布式文件系统为海量的数据提供了存储, MapReduce分布式处理框架为海量的数据提供了计算。 2. Hadoop安装2.1 安装

2017-12-28 11:13:21 311

原创 设计模式-单例模式

比较常说的单例模式也就是懒汉模式和饿汉模式,今天写上其他三种实现的方法。(1使用static块创建2使用静态内置类3使用静态枚举) 单例模式,顾名思义也就是我只生成一个实例供给别人使用。 具体的看一下代码那就知道怎么写了//单例模式(饿汉模式)public class Singleton { private Singleton(){} private static Single

2017-12-27 16:34:42 193

原创 最长公共子序列

最长公共子序列最长公共子序列与最长公共子串的区别在于最长公共子序列不要求在原字符串中是连续的,比如ADE和ABCDE的最长公共子序列是ADE。我们用动态规划的方法来思考这个问题如是求解。首先要找到状态转移方程:符号约定,C1是S1的最右侧字符,C2是S2的最右侧字符,S1‘是从S1中去除C1的部分,S2’是从S2中去除C2的部分。LCS(S1,S2)等于下列3项的最大者:(1)LCS(S1,S2’)

2017-12-19 16:13:05 198

原创 mybatis缓存机制

MyBatis 提供了查询缓存来缓存数据,以提高查询的性能。MyBatis 的缓存分为一级缓存和二级缓存。一级缓存是 SqlSession 级别的缓存 二级缓存是 mapper 级别的缓存,多个 SqlSession 共享一级缓存一级缓存是 SqlSession 级别的缓存,是基于 HashMap 的本地缓存。不同的 SqlSession 之间的缓存数据区域互不影响。一级缓存的作用域是 SqlSe

2017-12-15 16:52:26 187

转载 图像处理基本算法(整理)

1)将256*256分辨率的图像变为128*128分辨率可以将源图像划分成2*2的子图像块,然后将2*2的子图像块的所有像素颜色均按照F(i,j)的颜色值进行设定,达到降低分辨率的目的。如:F(i,j)    F(i,j+1)                  F(i,j)  F(i,j) F(i+1,j)  F(i+1,j+1)   变成   F(i,j)  F(i,j)(同理,256*2

2017-12-09 00:00:20 3841

kaitigb2312_downcc.zip

楷体GB2312 的ttf文件,针对一些不支持中文的ttf做一个替换选择。

2019-08-13

空空如也

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

TA关注的人

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