随笔分类 -  java

摘要:PriorityQueue是什么? 一个基于优先级堆的无界优先级队列。优先级队列的元素按照其自然顺序进行排序,或者根据构造队列时提供的 Comparator 进行排序,具体取决于所使用的构造方法。优先级队列不允许使用 null 元素。依靠自然顺序的优先级队列还不允许插入不可比较的对象(这样做可能导致 阅读全文
posted @ 2020-07-03 10:55 ZJfor 阅读(91) 评论(0) 推荐(0) 编辑
摘要:实现类:ArrayDeque和LinkedList 作用:Deque既可以做栈使用也可以做队列使用; 缺点:Deque违背了单一职责性原则 ArrayDeque: ArrayDeque是Deque接口的一种具体实现,是依赖于可变数组来实现的。ArrayDeque 没有容量限制,可根据需求自动进行扩容 阅读全文
posted @ 2020-06-30 16:58 ZJfor 阅读(119) 评论(0) 推荐(0) 编辑
摘要:HashTable: 底层数组+链表实现,无论key还是value都不能为null,线程安全,实现线程安全的方式是在修改数据时锁住整个HashTable,效率低,ConcurrentHashMap做了相关优化初始size为11,扩容:newsize = oldsize*2+1计算index的方法:i 阅读全文
posted @ 2020-06-24 09:11 ZJfor 阅读(178) 评论(0) 推荐(0) 编辑
摘要:jvm参数: -ea 根据阿里java开发手册: 单元测试应该是全自动执行的,并且非交互式的。测试用例通常是被定期执行的,执 行过程必须完全自动化才有意义。输出结果需要人工检查的测试不是一个好的单元测试。单元 测试中不准使用 System.out来进行人肉验证,必须使用 assert来验证。 测试代 阅读全文
posted @ 2020-06-23 11:01 ZJfor 阅读(226) 评论(0) 推荐(0) 编辑
摘要:安全性考虑: 如果一个表没有主键;默认的InnoDB会自动帮你创建一个不可见的、长度为6字节的row_id,而且InnoDB 维护了一个全局的 dictsys.row_id,所以未定义主键的表都共享该row_id,每次插入一条数据,都把全局row_id当成主键id,然后全局row_id加1; 该全局 阅读全文
posted @ 2020-06-12 16:50 ZJfor 阅读(869) 评论(0) 推荐(0) 编辑
摘要:zookeeper:是应用于分布式架构的分布式协调服务; 主要功能: 统一配置管理:对于多台服务器的配置文件共性内容做提取然后管理;做法:将共性yml文件放在zookeeper的znode节点中,让其他系统监听znode节点; 统一命名管理:其他服务器通过域名访问到我们的资源 分布式锁: zooke 阅读全文
posted @ 2020-03-07 17:17 ZJfor 阅读(115) 评论(0) 推荐(0) 编辑
摘要:SOLID 是面向对象设计5大重要原则:遵循此原则可以使我们的程序更加健壮,可扩展... 单一职责原则(SRP): 指的是一个类或者一个方法只做一件事。 开放封闭原则(OCP): 对扩展开放,对修改关闭。意为一个类独立之后就不应该去修改它,而是以扩展的方式适应新需求。 里氏替换原则(LSP): 所有 阅读全文
posted @ 2020-02-19 23:53 ZJfor 阅读(257) 评论(0) 推荐(0) 编辑
摘要:1.为什么使用锁: 解决并发操作数据引起脏读,数据不一致的情况; 锁对象:java中任何非null对象; 2.实现方法: 有两种方式:synchronized关键字和并发包中的锁类 // (1):加静态方法上面,表示会监视这个类对象 public static synchronized void s 阅读全文
posted @ 2020-02-18 19:45 ZJfor 阅读(154) 评论(0) 推荐(0) 编辑
摘要:常用设计模式: 单例模式: 解决问题:配置类Config的对象只能有一个 解决方案: Static Config instance Private Config() Static Config newInstance(){ If (instance==null){ Instance=new Conf 阅读全文
posted @ 2020-02-16 21:19 ZJfor 阅读(3132) 评论(0) 推荐(0) 编辑
摘要:UserDAO.java:目标方法 public class UserDAO implements IDAO{ @Override public void save() { // TODO Auto-generated method stub } @Override public void sele 阅读全文
posted @ 2020-02-13 03:37 ZJfor 阅读(120) 评论(0) 推荐(0) 编辑
摘要:全局变量和局部变量的区别全局变量:1、成员变量定义在类中,在整个类中都可以被访问。2、成员变量随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中。(实例变量)3、成员变量有默认初始化值。局部变量:1、局部变量只定义在局部范围内,如:函数内,语句内等,只在所属的区域有效。2、局部变量 阅读全文
posted @ 2020-02-03 17:07 ZJfor 阅读(220) 评论(0) 推荐(0) 编辑
摘要:类加载的统一的原则 变量定义的先后顺序决定初始化顺序,而在不同变量之间,又存在着某些规则(先静态对象,再非静态对象) 静态代码块属于类,且在类加载时只执行一次,即使后面有类加载的条件也不会再次执行; 类加载条件: 1 创建类的实例2 访问某个类或接口的静态变量,或者对该静态变量赋值3 调用类的静态方 阅读全文
posted @ 2020-01-11 16:27 ZJfor 阅读(2857) 评论(0) 推荐(0) 编辑
摘要:redis,mq等消息中间件,和新知识 消息中间件的三大要素:生产者(Producer)、消息(Message)、消费者(Consumer)。 阅读全文
posted @ 2020-01-03 18:56 ZJfor 阅读(193) 评论(0) 推荐(0) 编辑
摘要:网络 在物理网络的基础上,建立抽象的连接 win + r, 输入 cmd 输入命令: ipconfig 如果ping不通,要关闭防火墙 开始 搜索防火墙 Socket 通信 Socket - 插头 Socket - 网络套接字 通过 ip 地址,两台主机可以互相找到对象 在两台主机上,各选择一个端口 阅读全文
posted @ 2019-12-27 21:48 ZJfor 阅读(277) 评论(0) 推荐(0) 编辑
摘要:根据有作用范围由小到大: page(jsp有效) 》page域指的是pageContext. request(一次请求) 》request域request HttpServletRequest//请求转发可以传递数据,使请求在同一个下 session(一次会话) 》session域session H 阅读全文
posted @ 2019-12-26 09:45 ZJfor 阅读(249) 评论(0) 推荐(0) 编辑
摘要:redis:在cluster中sh start.sh zookeeper:在bin中启动 sh zkServer.sh start zoo1.cfg sh zkServer.sh stop zoo2.cfg sh zkServer.sh status zoo3.cfg 虚拟机有问题就克隆再拷贝 阅读全文
posted @ 2019-12-24 14:29 ZJfor 阅读(339) 评论(0) 推荐(0) 编辑
摘要:zookeeper的默认配置文件为zookeeper/conf/zoo_sample.cfg,需要将其修改为zoo.cfg。其中各配置项的含义,解释如下: 1.tickTime:CS通信心跳时间 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间 阅读全文
posted @ 2019-12-19 19:05 ZJfor 阅读(1184) 评论(0) 推荐(0) 编辑
摘要:步骤: 1.生产者启动时会将自己的服务信息写入注册信息(ip /port /服务名称 ); 2.注册中心会动态的管理服务信息 3.当消费者启动时,注册中心会将注册信息发送给消费者端,消费者并缓存到本地,方便消费者下次访问 4.当用户发起请求时,会经过http协议访问服务器消费者,服务器消费者经过负载 阅读全文
posted @ 2019-12-18 13:39 ZJfor 阅读(431) 评论(0) 推荐(0) 编辑
摘要:所在的包:import com.alibaba.dubbo.config.annotation.Reference;@Reference import org.springframework.beans.factory.annotation.Autowired;@Autowired import j 阅读全文
posted @ 2019-12-17 20:27 ZJfor 阅读(1983) 评论(0) 推荐(0) 编辑
摘要:方案:由于html的同源策略不能访问,利用javascript中src属性的开放策略解决 这种策略为jsonp:JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题 跨域思想: 1.利用javascript中的src属性 2.定义回调 阅读全文
posted @ 2019-12-17 12:05 ZJfor 阅读(503) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示