自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 为什么Interger 1000 == Integer 1000返回为False,而Interger 100 == Integer 100会返回为True?

如果你运行如下代码:Integer a = 127, b = 127, c = 128, d = 128;System.out.println(a == b);System.out.println(c == d);输出truefalse原因是在Integer在做比较时 调用了Integer.valueOf(a)方法该方法会走一个限制判断:当大于low值,小于high时,会取一个缓存数组里面的值,否则返回新对象(== 在比较引用对象的时候会和equals一样去比较对象地址是

2020-09-14 16:58:48 342

原创 mysql 去重方式

DISTINCT GROUP BY(不能与ORDER BY一起使用,细节看执行计划) EXISTS(某些地方推荐)对下面这条语句去重SELECT 1 FROM a_r a left join t_a_m b on a.id = b.pidleft join t_a_m c on a.id = c.pidwhere a.status = '1' and ((b.tId = 55...

2020-03-23 14:29:44 362

原创 查看linux服务列表以及某服务系统日志

查看linux服务列表systemctl list-units# 列出正在运行的 Unit$ systemctl list-units# 列出所有Unit,包括没有找到配置文件的或者启动失败的$ systemctl list-units --all# 列出所有没有运行的 Unit$ systemctl list-units --all --state=inactive#...

2020-02-22 19:59:54 3686

转载 mysql查看死锁和解除锁

解除正在死锁的状态有两种方法:第一种:1.查询是否锁表show OPEN TABLES where In_use > 0;2.查询进程(如果您有SUPER权限,您可以看到所有线程。否则,您只能看到您自己的线程)show processlist3.杀死进程id(就是上面命令的id列)kill id第二种:1.查看下在锁的事务SELECT * FRO...

2019-10-15 17:15:43 212

原创 局部内部类里面引用外部参数变量

在使用局部内部类的方式在方法块中创建了一个子线程执行副业务时需要主线程里面的参数变量,总结了几个点:局部内部类里面使用外部变量的时候,这个变量需要是final类型的或者是没有被修改过值的变量(这里的变量指八大基本数据类型的变量,引用类型的变量指向的地址不变,但引用变量的属性值可以修改)。局部内部类使用外部变量的时候建议还是使用final修饰变量或者方法的参数。如变量aString不修改...

2019-05-22 18:17:44 1006

原创 js拖拽

<!DOCTYPE HTML><html><head><meta charset="utf-8"><title>菜鸟教程(runoob.com)</title><style>.droptarget { float: left; width: 100px; height: 35...

2019-03-29 11:43:25 250

转载 java设计模式之组合模式(树形层级)

java设计模式之组合模式学习难度:★★★☆☆,使用频率:★★★★☆】 树形结构在软件中随处可见,例如操作系统中的目录结构、应用软件中的菜单、办公系统中的公司组织结构等等,如何运用面向对象的方式来处理这种树形结构是组合模式需要解决的问题,组合模式通过一种巧妙的设计方案使得用户可以一致性地处理整个树形结构或者树形结构的一部分,也可以一致性地处理树形结构中的叶子节点(不包含子节点的节点)和容器...

2019-02-20 11:54:42 1409

转载 MySQL的四种事务隔离级别

本文实验的测试环境:Windows 10+cmd+MySQL5.6.36+InnoDB一、事务的基本要素(ACID)  1、原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体,就像化学中学过的原子,是物质构成的基本单位。   2、一...

2019-02-15 14:11:25 145

转载 数据库的三范式

第一范式同一张表中不能存在属性相近的字段,如我见到有人在做按钮级别的权限控制时为了图方便将表设计为每个字段表示一个按钮,这样的设计就是存在多个字段属性相似的字段   1、每一列属性都是不可再分的属性值,确保每一列的原子性    2、两列的属性相近或相似或一样,尽量合并属性一样的列,确保不产生冗余数据。   如果需求知道那个省那个市并按其分类,那么显然第一个表...

2019-01-25 10:51:26 183

转载 SpringBoot aop注解

  类别 函数 入参 说明 方法切点函数 execution() 方法 匹配模式串 表示满足某一匹配模式的所有目标类方法连接点。如execution(* greetTo(..))表示所有目标类中的greetTo()方法。 ...

2019-01-24 16:36:30 188

转载 数据库死锁分析与解决

 一、死锁的表现1、错误信息是:事务(进程 ID)与另一个进程被死锁在 锁 资源上,并且已被选作死锁牺牲品。请重新运行该事务。2、错误信息是:事务(进程 ID )与另一个进程被死锁在 锁 | 通信缓冲区 资源上,并且已被选作死锁牺牲品。请重新运行该事务。二、死锁的原因1、由于多用户、多任务的并发性和事务的完整性要求,当多个事务处理对多个资源同时访问时,若双方已锁定一部分资源但也...

2019-01-14 17:40:58 2022

转载 mvn 打包命令---跳过测试

mvn clean 清理上次生成的mvn package -Dmaven.test.skip=true

2018-12-26 17:23:20 1440

原创 实现静态方法注入bean

@PostConstruct说明     被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器调用一次,类似于Serclet的inti()方法。被@PostConstruct修饰的方法会在构造函数之后,init()方法之前运行。@PreDestroy说明     被@PreDestroy修饰的方法会在服务器卸载Servlet的时候运行,并且只...

2018-10-26 20:27:00 623

转载 升级React16

升级react依赖npm install react@^16.2.0npm install react-dom@^16.2.0npm install prop-types@^15.6.01 2 3问题1:React.PropTypes 自 React v15.5 起已弃用。请使用 prop-types 库代替//安装prop-types库npm install ...

2018-08-15 11:29:14 1005

原创 mysql对查出的数据排序并计算出某条数据排在第几行

SELECT * FROM(SELECT *, @curRank := @curRank + 1 AS rank FROM (SELECT CT u2.uuid as as uuid, d, u2.user_ner_name AS user_name, e, u2.fruits_num_num AS fruits_num from (`user` u LEFT JOIN friend f ...

2018-08-10 19:40:43 4794 1

原创 使用Promise.resolve()方法解析json文件

有时需要将现有对象转为 Promise 对象,Promise.resolve方法就起到这个作用。const jsPromise = Promise.resolve($.ajax('/whatever.json'));上面代码将 jQuery 生成的deferred对象,转为一个新的 Promise 对象。var promise = new Promise(function (resolve, re...

2018-07-12 15:24:30 4150

转载 mysql插入数据发现重复的数据则更新的操作

MySQL为我们解决了这个问题:我们可以通过  ON DUPLICATE KEY UPDATE  达到以上目的,且能保证操作的原子性和数据的完整性。在DUPLICATE KEY UPDATE上可以达到以下目的:向数据库中插入一条记录:若该数据的主键值/ UNIQUE KEY已经在表中存在,则执行更新操作,即UPDATE后面的操作。否则插入一条新的记录。...

2018-06-21 13:40:54 3402

原创 mysql里面的group by和order by结合使用

sql带有group by,那么select里头只能包含group by by的列或者是聚合函数select max(id) id, catid from post group by catid order by id desc;写的顺序:select...from...where....groupby...having...orderby..执行顺序:from...w...

2018-06-11 11:20:03 1686

转载 MySQL时间戳转换时间10位 13位

如图1所示,将时间转换为时间戳选择unix_timestamp('2009-10-26 10-06-07')如果参数为空,则处理为当前时间2,将时间戳转换为时间选择from_unixtime(1256540102)有些应用生成的时间戳是比这个多出三位,是毫秒表示,如果要转换,需要先将最后三位去掉(标准的10位数字,如果是13位的话可以以除以千的方式),否则返回NULL选择FROM_UNIXTIME...

2018-06-11 09:54:29 5592

转载 SQL UNION 和 UNION ALL 操作符

SQL UNION操作符UNION操作符用于合并两个或多个SELECT语句的结果集。请注意,UNION内部的SELECT语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条SELECT语句中的列的顺序必须相同。SQL UNION语法SELECT column_name(s)FROM table_name1联盟SELECT column_name(s)FROM table_name2...

2018-06-06 20:29:39 150

转载 sql里面插入语句insert后面的values关键字可省略

例子:插入一行ID = 3,名字=丁老师,薪水= 5000的记录insert into teacher(id,name,salary) select 3,'丁老师',5000 from teacherwhere not exists(select * from teacher where id=3) limit 1;123或者insert into teacher(id,name,salary...

2018-06-06 17:39:59 7368

原创 异常影响事务回滚

近日测试用例,发现这样一个现象:在业务代码中,有如下两种情况,比如:throw new RuntimeException(“xxxxxxxxxxxx”); 事务回滚抛出新异常(“xxxxxxxxxxxx”); 事务没有回滚...

2018-06-05 16:11:23 879

原创 Spring涉及定时注解

package cn.lz.devops.Test;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.context.annotation.Lazy;import org.springframework.scheduling.annotation.Scheduled;imp...

2018-05-18 13:48:16 278

转载 Spring的定时任务@Scheduled注解中的cron表达式

一个cron的表达式有至少6个(也可能7个)有空格分隔的时间元素。按顺序依次为秒(0〜59)分钟(0〜59)小时(0〜23)天(月)(0〜31,但是你需要考虑你月的天数)月(0〜11)天(星期)(1〜7 1 = SUN或SUN,MON,TUE,WED,THU,FRI,SAT)7.年份(一九七○年至2099年)其中每个元素可以是一个值(如6),一个连续区间(9-12),一个间隔时间(8-18 / 4...

2018-05-18 13:02:19 354

转载 MyBatis把传过来的Integer类型的0当作空字符串

传递Integer类型的值,如果传递的是0,到mybatis的mapper的xml文件中是把值当作空字符串,mybatis源码对其进行了强制定义。or status == 0">使用时增加多一个or status == 0判断实际上,Integer类型和空字符串是不需要判断比较的。业务上一般比较是否为null就行了<if test="status != null

2018-04-24 15:06:10 619

原创 在jsp页面里面调用配置文件

写一个配置文件,如config.properties,将其放在web_inf/lib目录下:如图在jsp文件使用相对路径读取相对路径,进一步解析配置文件:<% //获取配置文件信息 Properties pro = new Properties(); InputStream instm=this.getServletContext().getResourceAsSt

2018-04-24 10:22:52 2075

转载 去除警告注解@SuppressWarnings

编码时我们总会发现如下变量未被使用的警告提示:  上述代码编译通过且可以运行,但每行前面的“感叹号”就严重阻碍了我们判断该行是否设置的断点了。这时我们可以在方法前添加 @SuppressWarnings("unused") 去除这些“感叹号”。  作用:用于抑制编译器产生警告信息。  示例1——抑制单类型的警告:@SuppressWarnings("

2018-04-19 17:18:19 1311

转载 泛型方法一

public getX(Class clazz) { retun (T)clazz.newInstance(); //方法内部作了转换,方法外不需要强行转换为实际的T}//如果改成public X getX(Class clazz) { return clazz.newInstance(); //方法内部没有转换,方法外部需要自己转换}//则外部需要自己转换targ

2018-04-19 16:42:13 136

原创 dll文件

DLL文件解释DLL的最初目的是节约应用程序所需的磁盘和内存空间。在一个传统的非共享库中,一部分代码简单地附加到调用的程序上。如果两个程序调用同一个子程序,就会出现两份那段代码。相反,许多应用共享的代码能够切分到一个DLL中,在硬盘上存为一个文件,在内存中使用一个实例(instance)。DLL的广泛应用使得早期的视窗能够在紧张的内存条件下运行。尽管有这么多的优点,使用DLL也有一

2018-04-19 13:38:44 961 1

转载 详解Java中native关键字

一. 什么是Native Method   简单地讲,一个Native Method就是一个java调用非java代码的接口。一个Native Method是这样一个java的方法:该方法的实现由非java语言实现,比如C。这个特征并非java所特有,很多其它的编程语言都有这一机制,比如在C++中,你可以用extern "C"告知C++编译器去调用一个C的函数。   "A native m

2018-04-19 13:35:10 408

转载 彻底弄懂js中的this指向

js中的this指向十分重要,了解js中this指向是每一个学习js的人必学的知识点,今天没事,正好总结了js中this的常见用法,喜欢的可以看看:全局作用域或者普通函数中this指向全局对象window。//直接打印console.log(this) //window//function声明函数function bar () {console.log(this)}bar()

2018-04-18 18:00:09 153

转载 spring mvc @ResponseStatus和ResponseEntity

@ResponseStatus是标记一个方法或异常类在返回时响应的http状态。其代码注释如下:** The status code is applied to the HTTP response when the handler* method is invoked and overrides status information set by other means,* like {

2018-04-17 14:11:05 440

转载 SpringBoot中@Valid注解的使用

@Valid注解用于校验,所属包为:javax.validation.Valid。① 首先需要在实体类的相应字段上添加用于充当校验条件的注解,如:@Min,如下代码(age属于Girl类中的属性):[java] view plain copy@Min(value = 18,message = "未成年禁止入内")  private

2018-04-17 13:53:01 5112

转载 JS截取与分割字符串常用技巧总结

本文实例讲述了JS截取与分割字符串的常用方法。分享给大家供大家参考,具体如下:JS截取字符串可使用 substring()或者slice() 函数:substring()定义:substring(start,end)表示从start到end之间的字符串,包括start位置的字符但是不包括end位置的字符。功能:字符串截取,比如想从"MinidxSearchEngin

2018-04-12 10:19:52 139

原创 react点击按钮跳转到一个新的窗口的功能实现

onClick={this.handle}handle(){const w=window.open('about:blank');w.location.href='你的地址'}

2018-04-02 17:08:07 24368 1

原创 linux里面根目录下的文件夹的含义

etc (目录)存放系统的各种配置文件environment(文件)环境变量的配置passwd(文件)所有用户(如root)的信息         2. home(目录) 普通用户存放东西的地方

2018-03-26 17:38:06 321

原创 linux在不知道root密码的时候怎么切换到root权限

,重置root密码,输入下面的命令1,sudo passwd root回车后会出现让你输入你现在这个用户的密码,新密码和确认密码:2,输入现在这个用户的密码3,设置root 密码4,重复密码设置好密码后,输入:5,su root6,再输入重置的密码使用root用户登入su和sudo的区别是:  1) su的密码是root的密码,而sudo

2018-03-26 15:20:52 8337 1

转载 Linux下清屏的方法

linux下清屏的方法clear,刷新屏幕,本质上是让终端显示页向后翻了一页,如果向上滚动屏幕还可以看到之前的操作信息;(比较常用)ctrl + l(小写的L),等价于clear;reset,这个命令将完全刷新终端屏幕,之前的终端输入操作信息将都会被清空,这样虽然比较清爽,但整个命令过程速度有点慢,使用较少。

2018-03-26 11:22:55 727

转载 React兼容IE8

最近的一个项目使用的是React+React-router+Redux框架,刚开始编写代码的时候,客户的需求不明确,没有明确要求兼容IE8,当第一个版本出来之后,用户发现不能在IE8下使用,才提出兼容IE8的事情。但当时整体的代码框架和主要功能都已经实现,如果更换框架来实现,相当于放弃前面几个月的React代码重写。这带来的工作量是难以估计的。      查找网上的React兼容IE8的方

2018-03-23 16:08:30 14862 1

转载 @SensitiveFormat基于注解的敏感词过滤功能

基于注解的敏感词过滤功能项目需要对用户发布的内容进行过滤,将其中的敏感词替换为 * 等特殊字符。大部分Web项目在处理这方面需求时都会选择过滤器( Filter ),在过滤器中将 Request 包上一层 Wrapper ,并重写其 getParameter 等方法,例如:public class SafeTextRequestWrapper extends HttpServletRe

2018-03-23 15:27:23 1567

空空如也

空空如也

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

TA关注的人

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