
java
肖先森是摩羯座
这个作者很懒,什么都没留下…
展开
-
zookeeper简介
分布式管理工具,基于原子广播zab协议(存数据是加锁的),为分布式而生,适合存储少量数据,提供数据及节点变化监听。应用:统一命名服务,配置管理,集群管理,共享锁,队列管理。一:集群搭建:0、放开防火墙1、安装jdk(zookeeper服务器用java编写,依赖jdk)2、vim /etc/profile 配置java和zk的环境变量3、mv zoo_sample.cfg zoo.cfg4、改hos...原创 2018-06-04 22:03:14 · 307 阅读 · 0 评论 -
springmvc静态资源
注意后面的/原创 2018-06-04 10:41:51 · 238 阅读 · 0 评论 -
并发编程记录
synchronized:同步对象锁:一个对象一把锁,用于实例方法,锁住对象中的所有同步实例方法 synchronized直接加在方法上和synchronized(this)都是对当前对象加锁。 重入锁:同步方法A中执行方法B,可以直接执行,无需抢锁,包括父子的情况。类锁:一个类一把锁,用于静态方法,锁住类中的所有同步静态方法。对象锁和类锁不冲突,持有类锁的不会影响同步的实例方法。锁改...原创 2018-05-11 11:50:17 · 178 阅读 · 0 评论 -
jvm知识点记录
年轻代:主要是用来存放新生的对象。老年代:主要存放应用程序中生命周期长的内存对象。持久代:JVM中方法区的一个实现,是指内存的永久保存区域,主要存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域. 它和和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果...原创 2018-05-20 16:23:45 · 223 阅读 · 0 评论 -
线程池ThreadPoolExecutor使用
线程池可以通过Executors快捷的创建。创建可缓存的线程池,线程数可以无限多。ExecutorService service1 = Executors.newCachedThreadPool();创建定长的线程池。ExecutorService service2 = Executors.newFixedThreadPool(10);创建定长的线程池,可定时周期执行。ExecutorServic...原创 2018-03-06 17:59:56 · 253 阅读 · 0 评论 -
值传递,引用传递。
先看结论:值传递:将实参的值,复制了一份给形参。引用传递:将实参的地址值,复制了一份给形参。所以不管是值传递还是引用传递,形参拿到的都只是实参的副本,而不是实参本身。基本数据类型都是值传递,类,数组,接口都是引用传递,可以这么理解。(理解而已,实际都是值传递)看例子:change方法复制了p的引用,然后在方法内把本方法内p的引用的引用改为了person的引用,但是mai...原创 2018-03-06 16:18:58 · 273 阅读 · 0 评论 -
innodb RC RR
InnoDB采用了MVCC多版本控制的方式来实现RC和RR,MVCC也只在RC和RR级别下工作,但是在这两个级别下会有不同的方式。RC下:语句级的多版本,即一个事务的多条只读语句,创建不同的版本,可以读到其他事务已提交的数据。RR下:事务级的多版本,即一个事务只有一个版本,所以读不到其他事务已提交的数据(只有一个版本)。...原创 2018-03-13 10:31:27 · 405 阅读 · 0 评论 -
InnoDB,锁,事务。
前面记录事务的时候,有些地方有点蒙蔽,再记录下mysql的引擎InnoDB的知识点。mysql InnoDB引擎实现的是基于多版本的并发控制协议-MVCC。MVCC读不加锁,读写不冲突,极大的增加了系统的并发性能,几乎所有的关系型数据库管理系统都支持MVCC。在MVCC并发控制中,读操作可以分为两类:快照读和当前读。快照读:读取的是记录的可见版本,不用加锁。当前读:读取的是当前的最新版本,并且当前...原创 2018-03-09 18:38:05 · 227 阅读 · 0 评论 -
关于事务的记录
Spring的事务:Spring的事务是数据库对事务的支持,数据库不支持Spring也是无法做到的,Spring能操作事务也是因为控制了和数据库的连接。纯JDBC用事务步骤:1、获取连接 Connection con = DriverManager.getConnection() 2、开启事务con.setAutoCommit(true/false); 3、执行CRUD 4、提交事务/回滚事务 c...原创 2018-03-07 19:04:07 · 731 阅读 · 0 评论 -
java反射main方法注意点。
我们在用反射的方法执行main方法的时候,我们往调用类的main方法中的参数传入被调用类的类全名,然后根据该类名来执行main方法。public class invokeClassMainMethod { public static void main(String[] args) throws Exception { Method startClassMainMethod= Class原创 2017-07-02 11:53:18 · 1033 阅读 · 0 评论 -
springboot-01工程搭建
1.springboot介绍2.搭建过程2.1.我们选择Spring Initializr的方式新建项目,没有此工具可去http://start.spring.io/ 生成。也可直接生成maven项目,然后在pom中配置。2.2.下一步,注意是jar。2.3.此处可以选择你所需的组件,也可以先不选,之后在pom中配置。然后一直下一步创建。2.4.原创 2017-05-21 22:31:11 · 243 阅读 · 0 评论