自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java 锁机制

重量级锁与轻量级锁的区别??重在哪里??轻在哪里??1、用户态与内核态交互的过程中,需要发生系统调用,这个步奏所需要的时间是比较长的。2、java的线程实现是在用户态创建用户线程,然后将线程交给内核进行管理、调度,所以挂起、唤醒都需要从用户态切换到内核态。3、重量级锁,当一个线程获取到了锁,另一个线程这个时候也来获取锁。因为锁被其他线程占用,所以后面的这个线程需要挂起等待,线程挂起...

2019-03-02 03:35:29 254

原创 Java中范型的重载

问题: 什么是范型???答案:java中可以用T或其他大写字母代替一个未知的类型,例如 定义类的时候 class A<T>中的T就是一个范型,T可以代替任何类型或者类。问题:为什么java的范型是一个假范型??答案:因为java的代码在编译成class文件之后,会将范型给去掉。会用object代替范型。所以java的范型是假范型。例如:`public (T) List&l...

2019-03-02 02:42:41 367

原创 Java多态之前期静态绑定与后期动态绑定

多态是面向对象中一个非常重要的功能,因为多态对象在运行的时候才知道真正类型是什么。在java中对方法的调用分为静态绑定和动态绑定两个功能。静态绑定 静态绑定的意思是在编译的时候就确定要调用的方法,就直接指向要调用的方法,该种类型只有具有以下修饰符的才会是:属性、【final、static、private的方法】,因为在编译的时候就确定了,所以调用的是声明对象的方法,而不是引用对象的。动态绑定

2018-05-05 15:12:23 451

原创 Maven setting中配置阿里仓库

在jar中拉取jar包,在国内有的jar包拉取非常慢,配置阿里仓库会大大加快jar包的拉取第一步在mirrors中配置一个阿里的mirror<mirrors><mirror> <id>nexus</id> <mirrorOf>*</mirrorOf> <url>http://maven.aliyun.com/nexus/content/groups/

2018-05-04 13:29:13 2755

原创 Git小命令

最近对git版本回退的git reset, git revert, git checkout 有点迷糊不解,所以把当前的心得记录下来,方便以后学习。 git中默认存在两个指针分别是HEAD和MASTER指针,HEAD指针一直指向当前所在的位置,可以指向任意分支。MASTER指针指向最新的master分支代码。git reset –hard [commit] git...

2018-04-27 13:44:58 326

原创 正数、负数求原码、反码、补码

二进制,有符号数,首位为1的是负数,首位为0的是正数。(规定) 无符号数没有正负之分,所以也没有首位的限制。(规定) (以下示例皆以八位二进制表示)无符号数 无符号数的原码、反码、补码都一样,皆为该数的二进制表示法原码 反码 补码定义 无符号数的原码为该数的二进制表示法 无符号数的反码与原码一样 无符号数的补码与原码一样...

2018-04-13 16:39:44 31070 3

原创 同步、异步、阻塞、非阻塞的思考

同步、异步、阻塞、非阻塞的思考2018第一篇博客,坚持下去。好久没有写博客,应该坚持下去这个好习惯。以前对同步、异步、阻塞、非阻塞知道是什么,但是从来没有深入思考他们对区别是什么。但是最近在了解bio、nio、aio(本文对io不进行讲述)的时候,感觉对这几个概念对理解还是满模糊对,所以又进行思考了一下,但是不确定是对还是不对,但是还是记录下来,等各位同学来帮忙指正一下吧。我的感觉同步和异步这两

2018-01-02 15:24:32 245 2

转载 Centos安装Redis做缓存

Redis是一个高性能的,开源key-value型数据库。是构建高性能,可扩展的Web应用的完美解决方案,可以内存存储亦可持久化存储。因为要使用跨进程,跨服务级别的数据缓存,在对比多个方案后,决定使用Redis。顺便整理下Redis的安装过程,以便查阅。 1 . 下载Redis 目前,最新的Redist版本为3.0,使用wget下载,命令如下:# wget http://download.re

2017-03-25 16:37:03 475

转载 centos7安装mysql

安装环境:CentOS7 64位 MINI版,安装MySQL5.7在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/ 下载mysql源安装包 shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm安装mysql源

2017-03-12 15:11:50 319

转载 mysql源码安装

1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件(1)先安装cmake(mysql5.5以后是通过cmake来编译的)[root@ rhel5 local]#tar -zxv -f cmake-2.8.4.tar.gz [root@ rhel5 local]#cd cmake-2.8.4 [root@ rhel5 cmake-2.8.4]#.

2017-03-12 15:01:34 328

转载 Linux小命令

摘自:http://www.dajiangtai.com/community/55.do?origin=csdn-geek&dt=1129系统 uname -a # 查看内核/操作系统/CPU信息 head -n 1 /etc/issue # 查看操作系统版本 cat /proc/cpuinfo # 查看CPU信息 host

2016-11-30 18:42:51 387

原创 后台启动jar包

命令:nohup java -jar *.jar & 如果不用这个命令当退出终端的时候,进程也会强制退出

2016-11-18 00:32:14 994

原创 向maven仓库中安装本地jar包

Maven 安装 JAR 包的命令是: mvn install:install-file -Dfile=jar包的位置 -DgroupId=上面的groupId -DartifactId=上面的artifactId -Dversion=上面的version -Dpackaging=jar例如: 我下载的这个 jar 包是放到了 D:\mvn 目录下(D:\mvn\spring-context

2016-11-11 14:53:57 398

原创 ubuntu中为软件制作桌面启动项

学习在于总结。ubuntu为webstorm制作桌面启动项,只需要在/usr/share/applications文件夹下添加一个*.desktop文件即可。文件格式如下:[Desktop Entry]Version=1.0Name=webstorm //桌面启动器名字Exec=/opt/work/webstorm/bin/webstrom.sh //桌面启动器启动文件Termina=falseI

2016-10-29 21:16:40 587

原创 Maven中Pom文件打包配置build

摘自:https://my.oschina.net/simpleton/blog/607776方法一&lt;build&gt; &lt;finalName&gt;###架包名###&lt;/finalName&gt; &lt;sourceDirectory&gt;src/main/java&lt;/sourceDirectory&gt; &lt;re...

2016-10-12 19:07:50 19159 1

转载 向yml文件传递参数,ansible-playbook命令

用命令行传递参数定义命令行变量在release.yml文件里,hosts和user都定义为变量,需要从命令行传递变量值。hosts: ‘{{ hosts }}’ remote_user: ‘{{ user }}’tasks:… 使用命令行变量在命令行里面传值得的方法: ansible-playbook e33_var_in_command.yml --extra-vars "hosts=we

2016-10-03 14:58:16 23793

转载 docker镜像仓库的安装(apphouse)

转载: 安装官网地址提示 http://www.youruncloud.com/help/91.html第一步:关闭防火墙 ubuntu: sudo ufw disablecentos: systemctl disable firewalld.service注:如果不关闭防火墙,可通过以下的方式将相应的端口打开: /sbin/iptables -I INPUT -p tcp –d

2016-09-29 22:14:47 1738

原创 mysql中ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing t

解决方案: 进入mysql中,输入一下命令: alter user ‘root’@’localhost’ identified by ‘root’; //当让也可以为其他用户这样做 flush privileges;

2016-09-15 20:15:25 433

原创 linux文件的链接

在linux中,文件的链接分为硬链接和软链接。一、硬链接在linux中,每一个文件都会被指定有一个节点,存储器在查找文件的时候,都是通过这个节点进行判断的。而在linux中允许一个节点,指向多个文件,这多个文件是等价的。所以这样就产生了硬链接。 硬链接就是为一个文件创建一个副本,这个副本指向这个文件的节点。所以这个文件和它的副本就是等价的。二者中丢失任意一个都不会影响到这个节点。但是如果指向这个节

2016-09-15 19:03:13 356

原创 Linux 小命令总结

centos中查看安装了那些软件: rpm -qacentos中查看某个软件是否安装: rpm -qa|grep 软件名centos卸载软件: centos -e 软件名centos查看包被安装在哪里: rpm -ql 包名ubuntu查看安装的软件: dpkg -lubuntu查看某个是否被安装: dpkg -l |grep 软件名ubuntu查看软件安装的位置

2016-09-15 12:31:51 273

原创 Nginx的命令

一、nginx的启动  启动nginx的命令: ./nginx ./nginx -c 路径/nginx的配置文件 //(指定配置文件启动nginx) kill -HUP 主进程号 //平滑重启nginx二、检测配置文件是否加载成功 ./nginx -t -c 路径/nginx的配置文件三、重启nginx 命令: ./nginx -s reload四、

2016-09-15 01:30:50 312

原创 后台启动数据库

一、mysql后台启动 后台启动mysql的方法是在后面加一个 &符号,如: mysql_safe –user=mysql &二、mongodb后台启动 后台启动mongodb,则在启动参数中加上一个 –fork三、redis后台启动 redis后台启动需要修改配置文件,否则不可以后台启动。修改如下: daemonize 如果需要在后台运行,把该项改为yes

2016-09-15 00:07:23 943

原创 Mongodb启动问题

解决启动mongodb服务时提示没有找到db文件的错误。在linux中启动mogodb,如果数据库db存在/data里面的话,我们可以直接去mongodb的目录下找到bin,文件夹下的mongod文件,通过命令./mongod启动。 但是如果数据库的db文件不在默认的/data的目录下,如果还按照上面的方法启动,就会提示找不到db文件,解决的方法就是指定db的位置进行启动。命令为: mong

2016-09-14 23:13:09 386

原创 查看日志

linux下tomcat中查看日志: tail -f catalina.out (tail -f命令是实时动态查看日志的命令,后面加日志文件名)docker查看日志: docker logs -f 容器名(或容器id)

2016-09-12 19:21:11 335

原创 解决liunx进程杀不死的问题

liunx中有时候通过命令ps -ef|grep 进程名,查看进程pid号,杀进程的时候会杀不死,是因为可能杀的是子进程而不是父进程,整个进程树没有死。针对这种情况,我苦寻到一个命令,来解决这种问题。查看进程树的pid的方法是:ps -A|grep -i 进程名 然后杀死进程的命令为:kill 进程pid号 或者用命令:kill -9 进程pid号

2016-09-10 19:44:21 14053

原创 解决mysql中忘记密码或密码过期之后,如何进入mysql问题

最近在修复mysql中密码过期的问题,过程比较波折啊。所以总结一下,帮助自己以后好直接使用。进入mysql,而忽略密码登录,其实非常简单。只需要一条简单的命令就好,该命令为:mysqld_safe  –skip-grant-tables &通过使用该命令之后,我们可以直接进入mysql而不需要密码,当在需要输入密码的时候,可以直接跳过就好。但是在使用这中情况的时候,很有可能会发生一个问题,就是受到

2016-09-10 19:30:53 3225

原创 Spring框架中context-param与servlet中init-param的contextConfigLocation的区别

积累,小白也可成为大神最近在使用spring这一个框架做定时任务的时候,发现一个问题。当我们不在浏览器中调用一下我们的接口,是不会自动运行定时文件的,这个原因是什么呢?刚开始的时候,使我费解了很长事件,不知道问题出现再哪里。但是当冷静下来思考一下的时候,发现了问题出现再servlet中。接着,对它进行分析一下。在springmvc这个框架中,一般spring默认存在两个配置文件,一个是applic

2016-07-30 00:48:01 16366 8

原创 Mybatis中的#与$的区别

积累,小白也可成大神大家都说mybatis这个框架非常容易上手,所以近期我也开始来了解一下。在了解的过程中,发现了#和$这个两个符号。在这里记录一下,方便自己以后的查阅。#“#”将传入的数据都当做字符串,会默认的在数据前面加引号。例如#id,则会变成”id”。$“$”会默认保持传入的数据格式,也就是说如果传入的是字符串则依然是字符串。如果传入的是整形,则依然是整形。

2016-07-25 23:18:13 393

原创 IntelliJ IDEA中的Maven项目下的配置文件发布问题

积累,小白也有大神梦在Idea中,如果建立Maven项目,因为它默认只能将/src/main/resources下的资源文件发布到服务器中,所以我们在/src/main/java中写的大量配置文件是无法被发布的,所以这样就会出现,配置文件加载失败,无法发现等异常,这该如何解决呢?前面所说的,已经提示了一种解决方法,就是将这些配置文件放到resources里面即可,在这个里面是会被发布出去的。另一种

2016-07-09 17:02:21 4299

原创 Intellij IDEA中Hibernate中创建的数据类中,无法发现table和列

积累,小白也能成为大神最近在用spring整合hibernate写东西的时候,突然出现这么一个奇葩的问题。在写*.hdm.xml中,映射表的时候,表上面有红线。鼠标放上去提示无法发现table。根据提示很明显可以猜测出来,是因为类和数据库没有关联,但是按照以往的思路应该是关联才对啊。其实问题确实是因为没有关联而造成的,我们应该如何关联呢,步奏如下。第一步:如果在你的界面中不可以找到Persiste

2016-07-09 01:45:50 5090 3

原创 Ubuntu 16.04中如何修改mysql的编码为utf-8

积累,小白也有大神梦在云服务器上搭建mysql数据库的时候,发现默认的编码并不是utf-8,所以在对数据库进行发布的时候,遇到了乱码的问题。只有将mysql的编码修改之后,然后把表删除,在重新建表才摆脱了这个问题。这里对修改mysql的编码做一简单总结。一、查看mysql的编码登录mysql以后,输入: show variables like ‘%character%‘; 即可显示mysql的

2016-07-09 01:27:46 6702

原创 腾讯云Ubuntu分数据盘

积累,小白也怀有大神心df -h 该命令可以查看各个盘的占用情况,但是无法产看为挂载盘的情况。fdisk -l 该命令可以查看所有盘的应用情况,包括未挂载的数据盘fdisk 路径 该命令可以划分指定路径的数据盘eg:fdisk /dev/vdb(其中的vdb是在fdisk -l命令中所查看到的数据盘名称,在不同的数据盘可能不一样) mkfs.ext3 驱动路径 格式化路径所指向的盘,

2016-07-06 22:14:44 828

原创 html中清除浮动问题

积累,小白也有大神梦最近在制作自己的网站,涉及到了前端的一些问题,在这里记录一下,方便以后的温习。在前端的几种布局中,经常会运用到float浮动,这个问题。但是应用它也会出现一些问题,今天先记录一下,目前我遇到的一些问题。一第一个问题是我在运用浮动的时候遇到的等级问题。在运用float中,你先写的元素,总是在最下面,例如三个div:<div id="left" style="float:left"

2016-07-05 19:25:39 1273

原创 Ubuntu中软件不可以输入中文的解决方案

积累,小白也有成大神的梦如果Ubuntu设定的是英文语言,在各种软件例如wps等中很有可能就不能输入中文。这种情况,我们的解决方案是,把中文输入法加到软件的启动文件中,如何加呢?把下面内容加进去就可以解决: export XMODIFIERS=”@im=fcitx” export GTK_IM_MODULE=”fcitx” export QT_IM_MODULE=”fcitx”

2016-07-03 11:37:57 2949

原创 Ubuntu中如何根据端口查看进程

积累,小白也可成大神ubuntu查看打开的端口: netstat -ano 查看指定的端口: netstat -ano|grep 端口号 根据端口号查看进程: lsof -i:端口号 查看某个进程是否在运行: ps -aux | grep “进程名” 杀死指定进程根据pid号: kill pid号 强制杀死指定进程根据pid号: kill -9 pid号

2016-07-01 16:37:57 4017

原创 Ubuntu中将tomcat改为80端口

积累,小白也可成大神最近在用腾讯云服务器,因为服务器用的是ubuntu的操作系统,所以出现了很多乱七八糟的问题。这次的问题是在将tomcat的服务器的端口号改为80后,但是启动出来的依然是8080。解决方案如下: 因为在ubuntu中默认1024以下端口是不可以使用的,所以当我们把端口号改为80,是不可以使用的,需要修改权限。一般情况下,使用的时候都用root用户登录,因为它的权限要比用户自己

2016-06-30 19:28:52 4471

原创 ubuntu15.40中配置mysql远程访问

积累,小白也可成大神首先,需要具有mysql,先在命令行下安装mysql。命令为:sudo apt-get install mysql-server mysql-client. 当安装结束之后,只可以在本地对数据库进行访问,因为目前mysql并没有开启远程的访问权限。可以用 netstat -an|grep 3306进行查看,可以发现目前只是监听了127.0.0.1。因为我们要进行远程访问,所以

2016-06-29 22:32:18 271

原创 ubuntu中配置jdk环境

积累,小白也可成大神前提是要下载jdk,下载jdk可以去官网下载,然后在本地解压,存放在一个位置。jdk的配置在其实只需要把jdk的包配置在环境里面就可以了,window中非常好配置,而在ubuntu中也有这个写如环境变量的位置。 这个位置在/etc文件夹下的environment和profile文件中,在里面设置JAVA_HOME、PATH、CLASS_PATH。 eg: PATH=”/

2016-06-29 21:47:46 362

原创 Ubuntu中的ssh的运用

积累,小白也可以成为大神ssh是远程访问的一个工具,最近在用腾讯云的东西,所以用ssh远程访问和上传数据。ssh远程连接命令:ssh 要连接的ip -l 用户scp向远程传递文件:scp -r 本地的文件 用户名@远程的ip:所要存放的位置 eg:scp -r /home/rich1/course.sql root@…….:/homescp从远方下载数据:scp -r 用户名@远方ip:文件的位

2016-06-29 21:37:53 304

原创 Ubuntu中解压和压缩命令

积累,小白也可成大神解压tar.gz结尾的文件用命令tar解压:tar -zxvf 文件名 tar中参数有很多,-zxvf可以直接将tar.gz解压开 tar -xvf 文件名.tar //解压 tar包tar -xzvf 文件名.tar.gz //解压tar.gztar -xjvf 文件名.tar.bz2 //解压 tar.bz2tar -xZvf 文件名.tar.Z //解压tar

2016-06-29 21:24:03 355

空空如也

空空如也

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

TA关注的人

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