- 博客(16)
- 资源 (2)
- 收藏
- 关注
原创 Javaweb线程安全问题总结
我们以往的Javaweb程序部署都是在Tomcat容器中部署的。那么,我们多个浏览器同时发送请求,应用是如何处理的了?首先,每个request一个线程去处理。 tomcat 实现的是 servlet 标准——很经典的线程池模型。 但线程不可能一直加上去,否则切换线程开销会剧增,系统会抖动,性能会下降。所以一般会丢请求。Tomcat默认线程最大并发量是150个,这个值可以在server.xml...
2019-09-29 17:33:14 3951
原创 git工具讲解---图解
Add命令是把文件从IDE的工作目录添加到本地仓库的stage区,Commit命令把stage区的暂存文件提交到当前分支的仓库,并清空stage区。Push命令把本地仓库的提交同步到远程仓库。...
2019-09-26 11:12:02 3408
原创 Windows中使用jstack查看线程状态---有案例演示和详细讲解。
我们再学习java 线程 开发的时候,肯定遇到查看线程状态的这种操作。比如当前这个案例代码:/*** 测试suspend:挂起 和resume:重启 方法的弊端*/public class BadSuspend { public static Object u=new Object(); static ChangeObjectThread t1=new Change...
2019-09-25 10:48:38 7837 2
原创 java线程所占内存和jvm内存的关系
最近刚深入学习 Thread 编程,这个时候,就聊到了java的Thread所占内存是jvm中哪里的?经过激烈的讨论得出如下结论首先,jvm的几个变量要了解下:-Xms 为jvm启动时分配的初始堆的大小,也是堆大小的最小值,比如-Xms200m,表示分配200M-Xmx 为jvm运行过程中分配的最大堆内存,比如-Xmx500m,表示jvm进程最多只能够占用500M内存-Xss ...
2019-09-18 14:25:34 9190
原创 Linux(Redhat&&Centos)环境安装Redis及相关常用配置
第一步: 下载redis安装包wget http://download.redis.io/releases/redis-4.0.6.tar.5第二步:解压压缩包tar -zxvf redis-4.0.6.tar.gz第三 步:yum安装gcc依赖(如果你已经安装了gcc就跳过这一步)yum install gcc解释下:因为redis的底层是有c++实现的,所以需要安装 gcc的依赖;...
2019-09-17 14:57:29 4116
原创 maven项目从多仓库下载jar包的实现
1.首先,我们要知道如何配置多个maven仓库地址参考:https://blog.csdn.net/sayyy/article/details/804515312.然后,我们配置之后无效的原因。一般我们开发人员,每个人都自己在maven的settings文件中配置了一个地址,我配置的是阿里云地址http://maven.aliyun.com/nexus/content/groups/pu...
2019-09-10 14:47:57 4965
原创 Java设计模式学习篇------第十四篇:代理模式(开发工具建议使用:IDEA)
代理模式在代理模式(Proxy Pattern)中,一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口。介绍意图:为其他对象提供一种代理以控制对这个对象的访问。主要解决:在直接访问对象时带来的问题,比如说:要访问的对象在远程的机器上。在面向对象系统中,有些对象由于某些原因(比如对象创建开销很大,或者某些操作需要安全...
2019-09-05 15:30:06 3456
原创 Java设计模式学习篇------第十三篇:享元模式(开发工具建议使用:IDEA)
享元模式享元模式(Flyweight Pattern)主要用于减少创建对象的数量,以减少内存占用和提高性能。这种类型的设计模式属于结构型模式,它提供了减少对象数量从而改善应用所需的对象结构的方式。享元模式尝试重用现有的同类对象,如果未找到匹配的对象,则创建新对象。我们将通过创建 5 个对象来画出 20 个分布于不同位置的圆来演示这种模式。由于只有 5 种可用的颜色,所以 color 属性被用来...
2019-09-05 14:36:53 3359
原创 Java设计模式学习篇------第十二篇:外观模式(开发工具建议使用:IDEA)
外观模式外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。这种模式涉及到一个单一的类,该类提供了客户端请求的简化方法和对现有系统类方法的委托调用。介绍意图:为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使...
2019-09-04 10:56:31 3534
原创 Java设计模式学习篇------第十一篇:装饰器模式(开发工具建议使用:IDEA)
装饰器模式装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。我们通过下面的实例来演示装饰器模式的用法。其中,我们将把一个形状装饰上不同的颜色,同时又不改变形状类。介绍意图:动态地给...
2019-09-04 10:22:50 3490
原创 Java设计模式学习篇------第十篇:组合模式(开发工具建议使用:IDEA)
组合模式组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。这种模式创建了一个包含自己对象组的类。该类提供了修改相同对象组的方式。我们通过下面的实例来演示组合模式的用法。实例演示了一个组织中员工的层次结构。介绍意图:...
2019-09-03 16:55:11 3655
原创 Java设计模式学习篇------第九篇:过滤器模式(开发工具建议使用:IDEA)
过滤器模式过滤器模式(Filter Pattern)或标准模式(Criteria Pattern)是一种设计模式,这种模式允许开发人员使用不同的标准来过滤一组对象,通过逻辑运算以解耦的方式把它们连接起来。这种类型的设计模式属于结构型模式,它结合多个标准来获得单一标准。实现我们将创建一个 Person 对象、Criteria 接口和实现了该接口的实体类,来过滤 Person 对象的列表。Cri...
2019-09-03 15:47:13 3376
原创 Redhat 安装git并配置环境变量 非yum方式
先检查自己的Linux系统是否自带了gitgit --version如果现实 1.8.xx什么的,就卸载掉,因为这个git对于gerrit的兼容性不够好。卸载gityum -y remove git下载新版本git 2.12.2wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.12.2.tar.gz这个...
2019-09-02 11:06:40 3643
原创 安装gerrit过程笔记
https://www.cnblogs.com/yinzhengjie/p/11007383.html --安装gerrit教程https://www.jianshu.com/p/a9a35ce6241a --Git配置多用户和邮箱https://my.oschina.net/stefanzhlg/blog/529403 --配置多个SSHKEYssh-keygen -t rsa -C...
2019-09-01 19:26:03 3524
VirtualBox在Windows平台的安装步骤.pdf
2020-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人