自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

不浪漫罪名的博客

执子之手,与子偕老

  • 博客(94)
  • 收藏
  • 关注

原创 mac mysql忘记root密码解决方法

通过homebrew方式安装的mysql,mysql安装目录为:/usr/local/Cellar/[email protected]/去bin目录下在管理员权限下以安全方式启动mysql,即可不用密码登录,再修改root密码,具体步骤:cd /usr/local/Cellar/[email protected]/5.7.23/bin;sudo -su;./mysqld_safe --skip-grant-tables...

2018-11-25 18:05:23 277

原创 list contains比较对象需要注意的地方

List contains()比较对象,需要重写对象的equals()和hashCode()方法。package com.kanzhun.phoenix.admin.mytest;import java.util.ArrayList;import java.util.List;import java.util.Objects;/** * ContainsTest * * @au...

2018-10-30 22:28:04 9587

原创 集合中存储的是对象的引用

集合中存储的是对象的引用,如果对象的属性发生变化,集合中该对象也会跟着变化。 List<Student> students = new ArrayList<>(); Student student1 = new Student(4, "ying", 99);

2018-10-30 22:03:31 828

原创 使用Gson实现对象或集合与json字符串的互相转化

public class JsonTest { private static Gson gson = new Gson(); public static Student jsonToObject(String jsonStr) { return gson.fromJson(jsonStr, Student.class); } public sta...

2018-10-30 21:48:19 1449

原创 List分组的两种方式

java8之前List分组假设有个student类,有id、name、score属性,list集合中存放所有学生信息,现在要根据学生姓名进行分组。public Map<String, List<Student>> groupList(List<Student> students) { Map<String, List<Student>&g...

2018-10-30 21:27:03 59958

转载 打包和压缩的概念和区别

对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名 给搞晕。别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rar。可是Linux就不同 了,它有.gz、.tar.gz、tgz、bz2、.Z、.tar等众多的压缩文件名,此外windows下的.zip和.rar也可以在Linux下使 用,不过在Linux使用.zip...

2018-08-21 23:29:47 22920 9

原创 bz2压缩解压

压缩 bzip2 -z fileName解压 bzip2 -d fileName.bz2 bunzip2 fileName压缩成.tar.bz2 tar -jcvf fileName.tar.bz2 fileName解压.tar.bz2 tar -jxvf fileName.tar.bz2

2018-08-21 23:27:56 11693

原创 linux中scp命令

scp用于两台服务器之前拷贝文件、目录。其原理是基于ssh。 假设两台服务器IP分别为:A.104.238.161.75,B.43.224.34.73。用户都是root 当前登录服务器为A从B拷贝文件到Ascp -P 22 [email protected]:/home/test.txt /root从A拷贝文件到Bscp -P 22 /root/test.txt roo...

2018-08-21 23:22:00 5800

原创 几种拼接字符串的效率与区别

程序中拼接字符串是非常常见的操作,一般有直接通过+号拼接,或者使用concat()方法拼接、String.join()、StringUtils.join()、StringBuffer、StringBuilder的append()方法,后两种之前讨论过,不做过多赘述。+拼接直接使用“+”拼接字符串,方便简单,代码容易理解,但只适用于需要拼接的字符串比较少的情况,当字符串较多时,效率很低。 ...

2018-08-21 23:10:48 2582

原创 String、toString()、String.valueOf()比较

在开发中经常要用到将对象转化成String的操作,通常有String强转、toString()、String.valueOf()方法。这三种方法有什么区别呢?String使用String强转的时候,必须要确定被转换的对象是String,否则会抛出CalssCastException异常。toString()toString()是Object类中的方法,因此任何对象都可以调用...

2018-08-21 22:12:27 1363

原创 js 判断两个对象是否相同

isObjectEqual (a, b) { // 获取a、b的类型 var classNameA = toString.call(a) var classNameB = toString.call(b) if (classNameA === '[object Object]' && classNameB === '[object Object]'...

2018-07-08 21:05:31 3229

原创 java中使用Apache HttpClient发送Http请求,并获取返回结果

发送http请求可以写成一个工具类,HttpClient可以使用连接池创建,这样的好处是我们可以自己定义一些配置,比如请求超时时间,最大连接数等等。public class HttpUtil { private static CloseableHttpClient httpClient; private static RequestConfig requestConfig ...

2018-07-08 20:54:00 6432

原创 java中调用本地脚本

java中可以调用本地脚本,也可以远程调用shell脚本,但是java调用远程脚本不安全,一般不这么做,那该怎么调用呢? 建议在本地写个脚本调用远程脚本,在java程序中调用本地脚本,具体代码:private int execShell(String shellPath, String... params) { StringBuilder command = new St...

2018-07-08 20:41:25 2878

原创 java使用poi包实现数据导出

导出数据可以写成一个工具类,具体代码如下:package com.kanzhun.phoenix.admin.util;import org.apache.poi.hssf.usermodel.*;import org.apache.poi.hssf.util.HSSFColor;import java.io.IOException;import java.io.OutputS...

2018-07-08 20:27:37 248

原创 secureCTR使用pem文件连接跳板机

secureCTR使用公钥私钥连接跳板机可以不用每次都输入密码,但是别人给的是pem文件,跳板机怎么使用呢?使用命令生成pem文件的公钥文件:ssh-keygen -e -f key.pem > key.pem.pub注意:pem前的名称公钥私钥要保持一致,secureCRT会根据pem.pub前的名称去找服务器上的私钥...

2018-07-08 20:15:27 2264

原创 Linux下压缩与解压

zip压缩解压压缩:zip -r dist.zip dist/*解压:unzip dist.zipunzip -o dist.zip // 在不提示的情况下覆盖文件unzip -o -d ~/Desktop/temp // -d指定解压目录tar压缩解压tar命令解释:-c: 建立压缩档案-x: 解压-t: 查看内容-r: 向压缩文件末尾追加文件...

2018-07-08 20:07:06 634

原创 mysql 在表中新加字段、修改字段

添加字段在某个字段之后新加一个字段:ALTER TABEL xxx ADD column_name VARCHAR(64) NOT NULL DEFAULT '' COMMENT '' AFTER xxx;修改字段ALTER TABEL xxx MODIFY column_name VARCHAR(32) NOT NULL DEFAULT '' COMMENT '';...

2018-07-08 19:42:22 2822 1

原创 mysql导入导出数据

导出导出数据库结构和数据mysqldump -h localhost -uroot -p'root' database > dump.sql导出数据库中需要的一张或几张表结构和数据mysqldump -h localhost -uroot -p'root' database table1 table2 > dump.sql导出数据库表结构mysqld...

2018-07-08 19:28:30 175

原创 JDBC插入数据后返回新数据id

使用jdbc向表中插入数据时,有时候需要返回新插入数据的id。比如现在要向两个表中分别插入一条数据,第一条数据插入后生成的id要作为第二条数据的一个字段值。 具体代码: PreparedStatement pstmt = null; ResultSet rs = null; try { pstmt = connection.prepareStatem...

2018-07-08 18:59:19 5306

原创 悬浮框的实现

悬浮框的实现需要鼠标移上和移出两个事件,本例是基于vue做的:<div @mouseover="overShow(bossJobInfo.postDescription)" @mouseout="outHide" class="ellipsis-specail" style="-webkit-box-orient: vertical;">{{ bossJobInfo.postD...

2018-06-24 11:24:17 4546

原创 element-ui js方法转换成async await写法

element-ui有很多自己封装好的js方法,配合组件一起使用往往很方便,比如消息提示框组件,element-ui官网给出的示例是这样的:this.$confirm('此操作将解除场景策略与桶之间的映射, 是否继续?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', ...

2018-06-16 16:38:58 5249

原创 Element-ui radio单选框

element-ui单选框<el-radio v-model="" label="0">0</el-radio>element-ui单选框可以绑定string/number/boolean类型的数据如果需要绑定数值,需要在label前加上:,像这样:<el-radio v-model="" :label="0">0&amp

2018-06-16 15:36:47 17587 6

原创 JDBC将多个dao层的方法放在一个事务中处理

必备项使用同一个connectionautoCommit设成false,最后选择回滚还是统一提交如果让整个应用只使用同一个connection,程序就会变成单线程应用,肯定不好;这是需要用到ThreadLocal类,保证一个线程类的connection是同一个;在获取connection时先判断connection是否存在后者是否已经关闭,如果不符合重新获取connection;...

2018-06-12 09:39:41 2294

原创 js相关操作

array1.push.apply(array1, array2)

2018-06-12 09:38:04 441

原创 localStorage

localStorage 只能存储字符串,如果要存储对象或者集合,需要将对象和集合使用JSON.stringify()方法转化成JSON字符串;同理在取出的时候要使用JSON.parse()方法转换成对象或者集合。localStorage存放的数据不会自动清空,如果存储过多而不清理,会造成内存爆炸,所以数据用完一定要手动清空...

2018-06-12 09:37:36 193

原创 JDBC的ResultSet结果集,数字类型的null取出后为0

数据库里面的int,decimal等类型的字段值为null, 通过JDBC的ResultSet的getInt(“x”)或者getDouble(“x”)取出来之后并不是null,而是0.public abstract int getInt(String paramString)那么如何区别null和0呢?public abstract Object getObject(Strin...

2018-06-12 08:47:55 2921

原创 vue-resource post设置{emulateJSON:true}

启用该选项后,请求会以application/x-www-form-urlencoded作为MIME type,就像普通的HTML表单一样。form形式传给后台,而非json形式。

2018-06-12 08:42:24 8592

原创 JVM内存调优参数

-Xms and -Xmx-Xms:设定JVM初始堆内存大小;-Xmx:设定JVM最大堆内存大小-XX:PermSize and -XX:MaxPermSize-XX:PermSize:设置堆内存中永久代的初始内存;-XX:MaxPermSize:设置堆内存中永久代的最大内存...

2018-05-27 18:43:18 185

原创 replace()和replaceAll()的区别

相同点都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串,如果只想替换第一次出现的,可以使用 replaceFirst(),这个方法也是基于规则表达式的替换,但与replaceAll()不同的是,只替换第一次出现的字符串; 另外,如果replaceAll()和replaceFirst()所用的参数据不是基于规则表达式的,则与replace()替换字符串的效果是一样的,...

2018-05-27 18:20:10 7561

原创 mysql TIMESTAMPDIFF和TIMESTAMPADD用法

TIMESTAMPDIFF语法TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)说明返回日期或日期时间表达式datetime_expr1 和datetime_expr2之间的整数差。其结果的单位由interval 参数给出。该参数必须是以下值的其中一个:FRAC_SECOND:表示间隔是毫秒SECOND:秒M...

2018-05-27 18:11:50 7488

原创 mysql 行转列用法

现mysql中有一张表user_score表,表结构为: 表中数据有: 现在想查询出来不同学生的语数外成绩在一行显示,那么需要用到行转列的用法,具体语法为: MAX(case when 条件 then 列内容 else 不匹配时显示内容 end) 列名。具体sql如下:select user_name,MAX(case course when '语文' then score...

2018-05-27 17:53:23 2222

原创 mysql concat用法

mysql concat()函数用于将多个字段连接在一起返回。例如:city表中字段name用来表示城市名,level表示城市的级别,有一、二、三级城市。现在需要返回二级城市+三级城市,如:北京东城区,那么sql可以这么写:select concat(c1.name,c2.name) city_namefrom city1left join city2on city2.parre...

2018-05-27 17:34:54 4293

原创 Mysql between and 边界值

几乎所有的数据库都支持between and用法,只是边界值的取舍会有不同。Mysql和Oracle的between and都是闭区间,包含两端的值

2018-05-27 17:27:22 13977

原创 观察者模式

什么是观察者模式观察者模式又叫做发布-订阅模式。 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生改变时,会通知所有观察者对象,让他们能够自动更新自己。 代码实现Subject类,主题类或者抽象通知类class interface Subject { private List<Observer> obs...

2018-05-01 12:06:11 168

原创 jdbc多条件模糊查询

代码实例 List<Object> params = new ArrayList<>(); StringBuffer sql = new StringBuffer("select * from feature_v2 f where 1 = 1 "); if (featureVO.getCode() != null && !""...

2018-05-01 10:14:46 1897 1

原创 vue动态绑定class

实例: v-bind:class=”{ ‘table-warning’ : e.deleted === 1 }”

2018-05-01 10:08:47 376

原创 Git撤销修改

Checkout 撤销修改git checkout – file 如果你在工作区修改了一个文件,但是发现修改的不对,想撤销修改,使用git checkout -- file可以丢弃工作区的修改,但这里要分为两种情况:修改的文件还没有被添加到暂存区;修改的文件已经使用了git add添加到了暂存区。此时使用git checkout -- file就会把文件恢复到最近一次git a...

2018-04-09 20:01:30 192

原创 Git的工作区、暂存区和分支

工作区和暂存区Git与其他版本不同的地方就在于它有一个暂存区的概念。工作区 就是在电脑上能看到的目录,比如我电脑上的learngit就是一个工作区。 版本库 上图可以看到有一个.git隐藏目录,这不不算工作区,而是Git的版本库。 Git版本库存了很多东西,其中最重要的就是被称为stage的暂存区,还有Git为我们自动创建的一个分支master,以及指向master的一个指针H...

2018-04-09 19:35:10 1859

原创 计算机概论

计算机硬件的五大单元计算机主要分为三个部分:输入单元:包括键盘、鼠标、扫描仪、触摸屏等。中央处理器(CPU):含有算数逻辑、控制、记忆等单元。输出单元:例如屏幕、打印机等。整台主机的重点在于中央处理器(Central Processing Unit),CPU为一个具有特定功能的芯片,里头含有微指令集,如果你想让主机进行什么特异的功能,就要参考CPU是否有相关的微指令集才可以。 由于CPU的

2018-04-07 19:59:12 1205

转载 死锁产生的四个必要条件

死锁产生的四个必要条件互斥条件:资源是独占的且排他使用,进程互斥使用资源,即任意时刻一个资源只能给一个进程使用,其他进程若申请一个资源,而该资源被另一进程占有时,则申请者等待直到资源被占有者释放。 不可剥夺条件:进程所获得的资源在未使用完毕之前,不被其他进程强行剥夺,而只能由获得该资源的进程资源释放。 请求和保持条件:进程每次申请它所需要的一部分资源,在申请新的资源的同时,继续占用已分配到...

2018-04-01 23:47:40 601

空空如也

空空如也

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

TA关注的人

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