- 博客(75)
- 收藏
- 关注
原创 docker
在ubuntu中docker的简单使用(一) 1 >>docker version 当运行docker version 命令出现Cannot connect to Docker daemon. Is the docker daemon runing on this host,说明docker 服务未启动,需要启动docker服务 1 2 3 >> su root#切换到root用户.
2020-05-13 10:18:43 331
原创 java之内存管理、内存溢出、垃圾回收(GC)
1.介绍下Java内存区域(运行时数据区)。Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为以下6个运行时数据区域。程序计数器(Program Counter Register)一块较小的内存空间,可以看作当前线程所执行的字节码的行号指示器。如果线程正在执行的是一个Java方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址;如果正在执行的是Native方法,...
2020-04-27 16:51:34 404
原创 java某项目中定位CPU分析
工具:top或者 htop(高级)方法:top -c 显示进程运行详细列表键入 P (大写P),按照cpu进行排序然后用top -p 12430 -H 定位到最耗cpu的线程 的ID 例如:12483工具:top方法:top -Hp 1865 ,显示一个进程的线程运行信息列表键入P (大写p),线程按照CPU使用率排序查看对应程序的堆栈信息,就是找到进程号,执行jstack命令...
2020-03-25 09:05:37 622
原创 map、string、array、list等工具类、Java源码
1、MapUtils获取Map中指定key的value使用getString(final Map map, final Object key)方法,当然,也可使用getString( Map map, Object key, String defaultValue )方法,当我们get属性值时候发生了转换异常的就会报错,为了避免这种报错,可以使用默认值的方法解决。当我们获取Intege...
2020-03-20 09:26:48 351
原创 冒泡排序
1、冒泡排序思想让数组当中相邻的两个数进行比较,数组当中比较小的数值向下沉,数值比较大的向上浮!外层for循环控制循环次数,内层for循环控制相邻的两个元素进行比较。2、代码package com.xxx;public class MyBubbleSort { public static void main(String[] args) { int[] ...
2019-11-13 11:33:23 160
原创 快排(java版)
接下来介绍一下快排:假设我们现在对“6 1 2 7 9 3 4 5 10 8”这个10个数进行排序。首先在这个序列中随便找一个数作为基准数(不要被这个名词吓到了,就是一个用来参照的数,待会你就知道它用来做啥的了)。为了方便,就让第一个数6作为基准数吧。接下来,需要将这个序列中所有比基准数大的数放在6的右边,比基准数小的数放在6的左边,类似下面这种排列:3 1 2 5 4...
2019-11-11 10:23:51 193
原创 编程式和声明式事务
编程式事务通用类:import org.springframework.beans.factory.annotation.Autowired;import org.springframework.jdbc.datasource.DataSourceTransactionManager;import org.springframework.stereotype.Component;impo...
2019-10-21 15:18:24 129
原创 RabbitMQ三种Exchange模式(fanout,direct,topic)简介
(一)RabbitMQ基本概念RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是 AMQP(高级消息队列协议)的标准实现。1、概念说明:Broker:简单来说就是消息队列服务器实体。Exchange:消息交换机,它指定消息按什么规则,路由到哪个队列。Queue:消息队列载体,每个消息都会被投入到一个或多个队列。Binding:绑定,它的作用就是把...
2019-07-10 19:16:11 19293
转载 MySQL数据库事务的四大特性以及事务的隔离级别
目录一、事务的四大特性(ACID)1、原子性(Atomicity)2、一致性(Consistency)3、隔离性(Isolation)4、持久性(Durability)二、事务的隔离级别(默认事务级别为可重复读)MySQL数据库的四种事务隔离级别Read Uncommitted(读取未提交内容)Read Committed(读取提交内容)Repeatable...
2019-07-09 09:37:25 255
转载 nginx反向代理-解决前端跨域问题
1.定义跨域是指a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源。注意:跨域限制访问,其实是浏览器的限制。理解这一点很重要!!!2.跨域访问示例假设有两个网站,A网站部署在:http://localhost:81 即本地ip端口81上;B网站部署在:http://loca...
2019-04-01 15:46:18 311
原创 nginx中location的匹配规则
一、语法规则location [=|~|~*|^~] /uri/ { … }符号 含义 = 开头表示精确匹配 ^~ 开头表示 uri 以某个常规字符串开头,理解为匹配url路径即可。nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格) ~ 开头表示区分大小写的正则匹配...
2019-03-08 10:13:59 737
原创 实现Callable接口的线程使用
项目中经常接触线程,特别是在推送MQ的时候,都是使用线程来执行操作。在这里,用一个简单的例子来整理一个很简单的使用方法。代码如下:public class TestThread { public static void main(String[] args) { //使用main方法模拟Callable的call()方法的调用 CallableTest ...
2019-02-13 14:40:31 761
原创 PC端安装CENTOS7问题解决
想必很多人在使用U盘安装CentOS7或者ClearOS7时遇到了dracut-initqueue: Warning: dracut-initqueue timeout - starting timeout scripts 这个问题说真的,遇到时我头痛了半个月,网上查了很多资料,真想问候给那些爬虫博客和百度知道的那些XX。解决办法有两个1. 使用DVD安装。(这不是废话么,能用DVD...
2018-12-06 13:48:16 1923
转载 linux软件安装
centOS 7.4 安装配置jdk1.8https://blog.csdn.net/fxbin123/article/details/785030141、find命令find /root -name "install.log*" find /root -name "ab[cd]" *匹配任何内容?匹配任意一个字符[]匹配任意一个中括号内的字符2...
2018-11-17 20:10:28 200
转载 在企业中是怎么简单使用Git的参与团队开发的?Git使用教程
一、下载安装很简单,可参看百度教程git下载安装图文教程 二、初始化操作(图示可参看博客git-ssh 配置和使用)1、首次使用git,需设置git的用户名与邮箱:$ git config --global user.name "username"$ git config --global user.email "your email" 2、查看SSH Key是否生成...
2018-09-16 12:12:19 6041
转载 GIT 分支管理:创建与合并分支、解决合并冲突
分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN。如果两个平行宇宙互不干扰,那对现在的你也没啥影响。不过,在某个时间点,两个平行宇宙合并了,结果,你既学会了Git又学会了SVN!分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导...
2018-09-10 22:59:17 2266
原创 过滤器(Filter)和拦截器(Interceptor)的区别
springmvc中有两种很普遍的AOP实现:1.过滤器(Filter)2.拦截器(Interceptor)本篇面对的是一些刚接触springboot的人群所以主要讲解filter和interceptor的简单实现和它们之间到底有什么区别(一些复杂的功能我会之后发出文章,请记得关注)Filter的简单实现字面意思:过滤器就是过滤的作用,在web开发中过滤一些我们指定的url那么它能帮我们过滤什么呢...
2018-07-13 14:07:30 16740 1
原创 pmm的AOP范例
package com.weichat.permissions;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import com.weichat.mapper.PmmMapper;import org.apache.log4j.Logger;import org.apache.shiro...
2018-07-13 14:01:47 175
翻译 Rabbitmq的原理分析
MQ全称为Message Queue, 是一种分布式应用程序的的通信方法,它是消费-生产者模型的一个典型的代表,producer往消息队列中不断写入消息,而另一端consumer则可以读取或者订阅队列中的消息。RabbitMQ是MQ产品的典型代表,是一款基于AMQP协议可复用的企业消息系统。业务上,可以实现服务提供者和消费者之间的数据解耦,提供高可用性的消息传输机制,在实际生产中应用相当广泛。本文...
2018-07-11 18:58:05 164
原创 Java 异常Exception e中getMessage()、toString()、printStackTrace()区别
getMessage(): java.lang.ArithmeticException: / by zerotoString(): / by zeroprintStackTrace(): 会打出详细异常,异常名称,出错位置,便于调试用。
2018-07-11 16:31:46 15443
转载 java继承链中方法调用优先级.顺序:this.show(object)>super.show(object)>this.show((super)object)>super.show((super))
先看代码如下:运行结果在上述代码中,类B继承了类A,类C继承了类B,A中show()方法发生了重载,B中重写了A中的show(C )方法。这里先说一下向上造型的一个知识点:向上造型时,编译期时根据引用类型(左边)调用方法,而运行期是根据实例对象的类型(右边)调用方法。第一条输出语句是 父类引用a1 指向 父类实例对象,编译时查看A类中是否有show(c)的方法,有,通过,运行,输出1---A an...
2018-07-09 17:20:47 1699
原创 java序列化与反序列化 代码示例
1.序列化的对象/** * 需要序列化的对象 实体类 需要继承Serializable * * @author lm 说明:1.序列化不会保存静态变量,因为静态变量是对象的状态 2.Transient 不会被序列化 因为Transient 是临时变量 * */public class Model implements Serializable {private static final lon...
2018-07-05 10:28:10 913
原创 重写equals()与hashCode()方法
Java语言是完全面向对象的,在java中,所有的对象都是继承于Object类。Ojbect类中有两个方法equals、hashCode,这两个方法都是用来比较两个对象是否相等的。在没有重写equals方法我们是继承了object的equals方法,那里的 equals是比较两个对象的内存地址,显然我们new了2个对象内存地址肯定不一样。对于基本数据类型,==比较的是两个变量的值。对于引用对象,=...
2018-07-05 10:23:51 249
原创 重写equals()方法和 hashCode()方法
java中判断两个对象是否相等的规则:首先,判断两个对象的hashCode是否相等 如果不相等,认为两个对象也不相等 如果相等,则判断两个对象用equals运算是否相等 如果不相等,认为两个对象也不相等 如果相等,认为两个对象相等 我们在equals方法中需要向下转型,效率很低,所以先判断hashCode方法可以提高效率。equals()相等的两个对象,hashcode()一定相等; equals...
2018-07-05 10:06:57 315
原创 Hashtable和HashMap区别
HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。HashMap把Hashtable的contains方法去掉了,改成containsvalue和co...
2018-07-05 09:51:19 163
翻译 单列集合Collection总结
1:Set集合(理解) (1)Set集合的特点 无序,唯一 (2)HashSet集合(掌握) A:底层数据结构是哈希表(是一个元素为链表的数组) B:哈希表底层依赖两个方法:hashCode()和equals() 执行顺序: 首先比较哈希值是否相同 相同:继续执行equals...
2018-07-05 09:46:07 228
原创 实现类HashSet和TreeSet的实例
Set接口 Set是Collection的子接口,与List相对 Set集合中的元素的特点是1,无序性 2,无下标3,无重复的元素 Set是个接口,所以无法直接创建对象,要依赖它的实现类来创建对象 Set的实现类有两个,一个是HashSet,另一个是TreeSet Set<String> set = new HashSet<>(); set.add("c");...
2018-07-05 09:44:49 751
原创 SQL常识
①在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。SELECT Customer,SUM(OrderPrice) FROM OrdersGROUP BY CustomerHAVING SUM(OrderPrice)<2000SELECT Customer,SUM(OrderPrice) FROM OrdersWHERE Customer='B...
2018-07-02 16:02:02 512
转载 内网和外网常识
若计算机直接连接Modern并实现拨号上网时,利用百度查询到的ip地址是当前计算机在Internet中的ip地址,(在百度搜:‘ip地址查询’,你的ip地址就会出现)。 若计算机是连接路由器儿实现上网的,则该计算机将会拥有两种ip地址,即外网ip地址和内网ip地址。其中外网ip地址是利用百度搜索查询到的ip地址,而内网ip地址是利用ipconfig命令查询到的ip地址,该地...
2018-06-21 16:05:21 1699
原创 nginx域名反向代理
server { listen 443 ssl; server_name tdyhpmm.xtion.net; #匹配的域名名称 ssl on; ssl_certificate /home/tantan/tiandiyihao/ssl/server.crt; ssl_certificate_key /h...
2018-06-21 10:01:44 2063
原创 nginx中location的配置
location匹配顺序"="前缀指令匹配,如果匹配成功,则停止其他匹配普通字符串指令匹配,顺序是从长到短,匹配成功的location如果使用^~,则停止其他匹配(正则匹配)正则表达式指令匹配,按照配置文件里的顺序,成功就停止其他匹配如果第三步中有匹配成功,则使用该结果,否则使用第二步结果注意点匹配的顺序是先匹配普通字符串,然后再匹配正则表达式。另外普通字符串匹配顺序是根据配置中字符长度从长到短,...
2018-06-20 16:40:58 269
原创 nginx匹配转发
找到nginx\conf\nginx.conf如下部分:server {listen 80;server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / {root html;index index.html index.htm;}修改后如下:server {listen 80;s...
2018-06-20 16:37:04 1374
转载 NGINX反向代理
一、代理服务器1、什么是代理服务器代理服务器,客户机在发送请求时,不会直接发送给目的主机,而是先发送给代理服务器,代理服务接受客户机请求之后,再向主机发出,并接收目的主机返回的数据,存放在代理服务器的硬盘中,再发送给客户机。2、为什么要使用代理服务器1)提高访问速度 由于目标主机返回的数据会存放在代理服务器的硬盘中,因此下一次客户再访问相同的站点数据时,会直接从代理服务器的硬盘中读取,起到了...
2018-06-20 16:27:53 113
原创 Nginx搭建Tomcat高性能负载均衡集群
1、配置多个tomcat首先需要知道的是,我们不通过Eclipse等其它工具启动Tomcat而通过手动启动Tomcat的时候是需要配置环境变量的。而我们启动Tomcat的时候,则需要读取环境变量中的相关配置来运行。也就是说,假如我有多个Tomcat,而启动的时候都是启动环境变量里面的Tomcat。这样便会因为端口冲突而导致启动失败了。假如我们想要启动多个Tomcat,则需要在环境变量中下手了。To...
2018-06-17 10:11:11 1040
原创 linux基本指令
1、cd用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。cd /opt :绝对路径cd opt :相对路径目录名有几个符号有特殊的含义,“..”代表上一级目录、“~”代表HOME目录、“-”代表前一目录。因此返回上一级目录可以使用命令:cd ..2、ls查看文件与目录的命令ls -l (也可以直接 ll ) :列...
2018-06-16 20:47:42 311
原创 springboot在linux部署
1、启动nohup java -jar RangerALdapApi-0.0.1-SNAPSHOT.jar >> catalina.out 2>&1 &nohup java -jar tiandiyihao-0.0.1-SNAPSHOT.jar > log.txt &echo hello > test.txt 这样控制台就不会输出h...
2018-06-16 11:51:57 877
转载 java发送http的get、post请求
Http请求:package wzh.Http;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.URL;import java.net.URLConnection;i...
2018-06-06 18:45:05 185
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人