自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

抬山的博客

Hello World

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

原创 Java常用Money转换方法实现

public class MoneyUtils { private static final String UNIT = "万千佰拾亿千佰拾万千佰拾元角分"; private static final String DIGIT = "零壹贰叁肆伍陆柒捌玖"; private static final double MAX_VALUE = 9999999999999.99D;...

2020-04-29 20:23:34 1097

原创 Java实现二叉树的遍历

什么是二叉树?定义:二叉树是每个结点最多有两个子树的树结构。通常子树被称作“左子树”和“右子树”。那什么是遍历?遍历:所谓遍历(Traversal)是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。二叉树的遍历方式有以下几种:1.前序遍历:先访问根节点——左子树——右子树。2.中序遍历:先访问左子树——根节点——右子树,按照这个顺序。3.后序遍历:和前面差不多,先访问树...

2019-11-10 23:42:30 452

原创 Java监听器详解

一.监听器的定义是指专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生变化时,立即采取相应的行动。Web应用当中监听器是什么?web监听器由servlet规范提供的,它可以监听客户端的请求,服务端的操作,监听的对象包括ServletContext,HttpSession,ServletRequest三个预对象(内置对象),分别对应aplication,s...

2019-08-17 18:47:42 25846 4

原创 git生成SSH密钥

SSH密钥允许您在计算机和GitLab,GitHub之间建立安全连接。git如何生成SSH密钥呢?1.配置个人的用户名称和电子邮件地址输入git config -l查看配置信息2.生成密钥3.查看密钥内容这里有两个密钥,一个公钥,一个私钥,需要的是公钥4.添加SSH密钥到GitHub,GitLab中以上即可在本机与GitHub,GitLab仓库之间建立安全的链接了。...

2019-07-31 18:28:31 254

原创 Java注解介绍

什么是注解?Java提供了一种原程序中的元素关联任何信息和任何元数据的途径和方法注解是在Java1.5版本提出的,目前非常的流行,很多主流框架都支持注解,而且自己编写代码的时候也会尽量的去用注解,学习注解能够读懂别人写的代码,特别是框架相关的代码,让编程更加简洁,代码更加清晰。Java中的常见注解:1.按照来源分JDK自带注解@Override 如果想重写父类的方法,比如toStri...

2019-06-18 12:04:05 247

原创 IDEA开发Java提升开发效率常用插件

正所谓工欲善其事,必先利其器,作为一名合格的程序员,熟练的使用开发工具和各种插件辅助自己开发,提升开发效率是非常重要的。这里我介绍几种idea常用的插件其功能使用方式。idea插件安装方式:Shift+Ctrl+A出现下面输入框,输入Plugins回车输入你想要安装的插件即可1.Alibaba Java Coding Guidelines为了让开发者更加方便、快速将规范推动并实行起来...

2019-04-03 20:24:05 7311 2

转载 MySQL的if,case语句使用总结

原博文地址: https://www.cnblogs.com/raobenjun/p/7998467.html原作者: EzrealRMysql的if既可以作为表达式用,也可在存储过程中作为流程控制语句使用,如下是做为表达式使用:IF表达式IF(expr1,expr2,expr3)如果 expr1 是TRUE (expr1 <> 0 and expr1 <> ...

2019-03-06 16:49:07 1404

转载 java多态性,父类引用指向子类对象

一篇非常不错的博文,这里分享过来原作者:阿尔伯特 https://www.cnblogs.com/shilin/p/4784862.html父类引用指向子类对象指的是:例如父类Animal,子类Cat,Dog。其中Animal可以是类也可以是接口,Cat和Dog是继承或实现Animal的子类。Animal animal = new Cat();即声明的是父类,实际指向的是子类的一个...

2019-02-27 19:29:40 1937 1

原创 Java中的内部类总结

内部类( Inner Class )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。主要作用:内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类内部类的方法可以直接访问外部类的所有数据,包括私有的数据内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便种类:成员内部类静态内部类方法内部类匿名内部类成员内...

2019-02-24 19:01:08 217

转载 linux使用flock文件锁解决脚本重复执行问题

原博文地址: linux使用flock文件锁解决脚本重复执行问题 | 运维生存时间http://www.ttlsa.com/linux/linux-flock-useage/linux的crontab命令,可以定时执行操作,最小周期是每分钟执行一次。关于crontab实现每秒执行可参考我之前的文章《linux crontab 实现每秒执行》现在有个问题,如果设定了任务每分钟执行一次,但有可...

2019-02-18 15:23:17 763

原创 CAS解决数据一致性问题

什么是CAS?“Compare And Set”(CAS),是一种常见的降低读写锁冲突,保证数据一致性的方法。数据一致性是我们开发时必须注意的问题,特别涉及到钱这块。这里举一个用户购物的例子:现有一个用户信息表user_account,表中字段为id,uid,amount。表中现有用户甲,余额100元。现在甲想购买一个价值10元(并打9折)的商品,那么流程如下:1.select amo...

2019-01-28 20:00:43 1054

原创 Xshell连接Ubuntu失败问题解决

本地使用Vmware安装的Ubuntu 16.04.5 LTS,Xshell连接总是显示连接失败解决方法:这种问题一般是防火墙的问题1.ufw disable #关闭防火墙2.ufw allow 22 #开启22端口3.apt-get install openssh-server #安装ssh服务执行以上步骤即可如果连接时提示ssh服务器拒绝了密码,请再试一次,应该是sshd的设置...

2019-01-22 11:07:56 2913 1

转载 PHP自带ZIP压缩、解压缩类ZipArchiv使用指南

原博文地址 https://www.jb51.net/article/61678.htm原作者 hebedich要使用该PHP扩展类,需要(PHP 5 >= 5.2.0, PECL zip >= 1.1.0),部分方法需要 PHP 5.2.+,且php.ini配置支持zip对于win系统,直接去掉php_zip.dll 扩展的注释,然后重启http服务(IIS或Apache...

2019-01-16 16:58:59 1139

转载 一条sql语句搞定基于mysql的sql执行顺序的基本理解

https://www.cnblogs.com/Steven0805/p/6553538.html原作者:Steven_Jiang对数据库基本操作是每个程序员基本功,如何理解并快速记住sql执行的顺序呢,其实一条复杂的sql就能搞定:SELECT DISTINCT <select_list>FROM <left_table><join_type> J...

2019-01-09 15:54:38 292

转载 MySQL Explain详解

作者:陆炫志出处:xuanzhi的博客 http://www.cnblogs.com/xuanzhi201111您的支持是对博主最大的鼓励,感谢您的认真阅读。本文版权归作者所有,欢迎转载,但请保留该声明。在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看...

2019-01-08 18:54:02 148

原创 git操作相关问题整理以及解决方法(持续更新)

作为一名合格的程序员,版本控制工具肯定是要会使用的。博主以前一直用的是SVN,git用的不是很多,如今新东家用的是git,博主在使用过程中遇到一些问题,想着肯定也有小伙伴遇到相同的问题,所以就想总结一下分享出来,日后也会持续更新。1.我们pull代码时,有时候会出现 git: Your branch and ‘origin/master’ have diverged描述:你的分支和原分支有分歧...

2018-12-29 11:19:48 362

转载 分布式事务XA

本篇博文转载自 zengkefu https://www.cnblogs.com/zengkefu/p/5742617.html 感谢作者分享的这篇博文1、什么是分布式事务分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。以上是百度百科的解释,简单的说,就是一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上...

2018-12-28 11:09:24 241

原创 PHP JpGraph类库的介绍以及基本用法

JpGraph是一个面向对象的图形创建库,用于PHP5(> = 5.1)和PHP7.0该库完全用PHP编写,可以在任何PHP脚本中使用(支持CGI / APXS / CLI版本的PHP),现在最新的版本是4.2.6( JpGraph 4.x系列支持PHP5(PHP 5.1.0或更高版本)和PHP 7(PHP 7.0,7.1和7.2))JpGraph能做什么呢?以前用PHP作图时我们是使用...

2018-12-12 16:38:37 1213

原创 php openssl扩展学习以及基本使用

https://www.cnblogs.com/baocheng/p/5910448.html先了解一下基本概念:公钥/私钥/签名/验证签名/加密/解密/对称加密/非对称加密公钥与私钥是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。公钥通常用于加密会话密钥、验证数字签名,或加密可以用相应的私钥解密的数据.当然,公钥和私钥都可以用来...

2018-12-07 12:26:53 8484

原创 Linux命令查找出日志文件中访问量最大的10个ip

写这篇博客的主要原因就是之前面试的两家公司都有问到这个问题,所以便着手研究了一下它的解决方法问题描述:一个日志文件里逐行存储着 时间 ip 这种形式的日志,现在需要让你使用linux命令查找出日志文件中访问量最大的10个ip怎么处理?1.首先创建模拟数据这里博主用python写了个创建模拟数据的脚本 文件内容格式 : 时间戳 ip#!/usr/bin/python# -*- codi...

2018-11-19 18:35:59 5657

原创 在Linux上搭建SVN服务器

1.安装SVNyum -y install subversion输入svnserve --version 查看是否安装成功2.创建版本库目录和版本库mkdir -p /var/svn/svnrepos/ #-p递归创建目录输入 svnadmin create /var/svn/svnrepos/svn-test 创建版本库成功后输入cd /var/svn/svnrepos/s...

2018-11-16 19:05:55 14403 3

原创 MS08-067漏洞渗透测试

MS08-067漏洞会影响除Windows Server 2008 Core以外的所有Windows系统,包括:Windows2000/XP/Server 2003/Vista/Server 2008的各个版本,甚至还包括测试阶段的Windows 7 Pro-Beta1.安装靶机下载window xp sp3 英文版镜像并安装在vmvare虚拟机上 靶机ip:192.168.65.128...

2018-11-10 20:56:41 2365 1

原创 MongoDB复制集搭建

最近在学习mongodb,看文档时看到复制集这块觉得挺有意思,于是便动手搭建了一下mongodb复制集mongodb的复制至少需要两个节点。其中一个是主节点,负责处理客户端请求,其余的都是从节点,负责复制主节点上的数据,这里最好是有两台服务器一主一从最好,但是本人电脑比较渣,所以就用一台虚拟机使用不同端口来模拟多台服务器实验准备:mongodb安装的4.03版本,虚拟机用的是VMware,三...

2018-11-04 19:14:56 3472

原创 解决Laravel增加redis服务器配置不起作用问题

最近工作中有这么一个需求,需要在创建内容时往redis中存储一条记录,博主在本地虚拟机上搭建了一台redis服务器用来测试,结果出现了这个问题database.php中原本已经有了几台redis服务器,再把我的redis添加进去时使用Redis::connection(‘update_playlist_mid’); 连接失败,但是将我的服务器名称改成已经存在的服务器名称并把这个服务器去除掉之后...

2018-10-23 14:48:09 2870

原创 mysql模糊查询未解码的unicode汉字失败

最近给公司后台做一个搜索功能时遇到了一个问题,表中有一个字段tags里面存储的是{“name”:"\u5f20\u4e09"}这种json格式,搜索条件是以该字段为条件。当我以%\u5f20\u4e09%为条件进行搜索时结果为空,百度了一下才知道mysql搜索时会自动去除转义字符也就是反斜杠(插入时也会去除掉)解决办法:like %\u5f20\u4e09%可以改为like %_u5f20_...

2018-10-15 17:02:52 1400

原创 用swoole实现实时弹幕网站demo

最近一直在学swoole就老想着用它做点东西,之前有接触过个一个jquery弹幕插件,于是我便使用这个插件结合swoole做了一个弹幕网站demo。插件github地址:https://github.com/chiruom/jquery.danmu.js使用教程:地址里都有介绍,这里就不一一赘述了官方提供了一个demo,前端页面我就直接在官方demo的基础上加上了websocket,页面效果...

2018-10-08 20:29:04 1736

原创 用swoole实现简单IM聊天室demo

写在前面:本博文内容取自 http://www.php.cn/course/658.html 课程内容,课程讲的不深,但作为swoole入门教程是肯定够了,感兴趣的同学可以去学习一下博主最近开始学习swoole,闲来没事就想与大家分享一下这个用swoole+websocket实现的简单聊天室demo开发环境:Centos 7,PHP 版本7.0.32前端index.html页面:&l...

2018-10-07 19:23:25 9496 2

原创 [100天每天一个算法--第13天] 杨辉三角

题目来源:leetcode 118.杨辉三角 https://leetcode-cn.com/problems/pascals-triangle/题目:给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,...

2018-10-06 19:40:03 388

原创 [100天每天一个算法--第12天] PHP实现归并排序算法

摘自百度百科: 归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序代码如下:<?php/*归并排序 */function MergeSort(&$arr = array()) { $s...

2018-10-02 22:25:15 251

转载 Centos7(Firewall)防火墙开启常见端口命令

博客原址:https://www.jb51.net/article/135124.htmCentos7默认安装了firewalld,如果没有安装的话,则需要YUM命令安装;firewalld真的用不习惯,与之前的iptable防火墙区别太大,但毕竟是未来主流讲究慢慢磨合它的设置规则,需要的朋友可以参考下安装Firewall命令:yum install firewalld firewall...

2018-10-02 11:54:23 514

原创 [100天每天一个算法--第11天] 最长公共前缀

问题描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。思路:以列表第一个元素为主,采用纵向扫描(即从第一...

2018-10-01 10:42:02 301

原创 Redis安装教程

因为公司业务需求,需要用到redis,我就在虚拟机上安装了一下进行测试,之前在学校也搞过几次,于是遍干脆把安装过程写篇博客记录下来。我用的是Vmware虚拟机,系统是Centos 7,redis版本是3.29首先还是下载reids1.下载wget http://download.redis.io/releases/redis-3.2.9.tar.gz2.解压tar -zxvf redi...

2018-09-28 12:40:10 238

转载 Redis多个数据库

博文原址: https://www.cnblogs.com/EasonJim/p/7818004.html注意:Redis支持多个数据库,并且每个数据库的数据是隔离的不能共享,并且基于单机才有,如果是集群就没有数据库的概念。Redis是一个字典结构的存储服务器,而实际上一个Redis实例提供了多个用来存储数据的字典,客户端可以指定将数据存储在哪个字典中。这与我们熟知的在一个关系数据库实例中...

2018-09-26 17:18:52 180

原创 [100天每天一个算法--第10天] 求两数之和

问题描述如下:给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]方法一:暴力求解直接两层for循环,遍历每个元素 x,并查找是否存在一个值与 tar...

2018-09-22 15:30:51 223

原创 [100天每天一个算法--第9天] PHP实现直接插入排序

直接插入排序(Straight Insertion Sort)是一种最简单的排序方法,其基本操作是将一条记录插入到已排好的有序表中,从而得到一个新的、记录数量增1的有序表。逻辑比较简单,这里博主直接贴代码供大家参考php实现代码如下:<?php/*直接插入排序*/$arr = [2,4,6,3,1,5,7,9,8];print_arr($arr);//排序前insertso...

2018-09-18 17:46:31 440

原创 简单python爬虫爬取拉勾网职位信息

写在前面:这里要感谢网易云课堂丘祐玮老师,本篇博文内容都是基于老师所讲内容而写,想要学习python学习爬虫的可以去看老师的课程今天要分享的是使用python爬取拉勾网职位信息,这里只爬取python职位信息用做爬虫效果展示,想要深入的同学再看完本篇博文后可以继续研究 如下图,搜索python,按之前经验页面python职位信息是访问https://www.lagou.com/job...

2018-09-09 00:30:29 1647

转载 Python中,你的中文为啥要报错

转自绿盟科技博客 http://blog.nsfocus.net/chinese-error-python/最近开始从零基础学习python语言,安装配置好开发环境后打算先写个“hello word”验证是否配置成功。发现问题Python属于解释型脚本语言,可直接执行目标代码。于是乎,写了下面一行代码:print "Hello python!你好python!"...

2018-08-24 14:26:29 586

原创 PHP实现常用设计模式之责任链模式

责任链模式是一种设计模式。在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织和分配责任。 看下面的案例: 面向过程实现举报功能<!DOCTYPE html><html lang="e...

2018-08-20 16:46:45 662

原创 [100天每天一个算法--第8天] PHP实现双向队列

队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。 双向队列呢?顾名思义就是头尾都可以进行插入删除操作的队列 PHP代码实现如下:<?php/** * Class Deque * 使用PHP实现双向队列 */cla...

2018-08-19 21:36:51 184

原创 PHP实现常用设计模式之策略模式

定义:策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。 是不是很官方,那么举个例子,就拿日常中使用的计算器来解释一下吧。 现在需要开发一个计算器实现加减功能,那么常规的解决方法,就是硬编码(Hard Coding)在一个计算器类中,类中实现加,减两个方法,每一个方法对应一个具体的算法;当然也可以把加减两种方法写到一个方法...

2018-08-18 22:52:27 147

空空如也

空空如也

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

TA关注的人

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