![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
J2EE
文章平均质量分 52
csdn_user_info
这个作者很懒,什么都没留下…
展开
-
设计模式-简单工厂模式-面向对象
简单工厂模式:原先实例化对象是在代码逻辑中实现中,现在用一个单独的类来做这个创造实例的过程,这就是工厂。好处:例子:要求用java实现计算器控制台输入两个数字和运算符号,得到结果。初学者碰到问题直觉的做法就是用计算机能够理解的逻辑来描述和表达待解决的问题,这其实是用计算机的方式去思考。但是这样做程序不容易维护,也不容易扩展,也不容易复用。毕竟复制和复用是不一样的,所以最好的做...原创 2019-06-08 10:49:52 · 134 阅读 · 0 评论 -
多线程的问题
1.多线程解决什么问题?(1)提高程序的运行性能。(2)充分利用系统的处理能力,提高系统的资源利用率。(3)提高程序的响应时间。(4)更好的编程模型。2.为什么对并发度能做提升?线程是大多数操作系统调度的基本单位,一个程序作为一个进程来运行,程序在运行的过程中能创建多个线程,而一个线程同一时刻只能运行在一个处理器核心上。所以对于一个单线程程序,再多的处理核心处理器加入也无法...原创 2019-08-20 23:51:40 · 181 阅读 · 0 评论 -
wait/notify/notifyall的使用场景
wait/notify/notifyall的使用场景1.wait使当前线程阻塞,前提是线程必须获得锁,所以一般配合synchronized使用。2.线程执行wait的时候,会释放当前的锁,然后让出cpu,进入等待状态。3.wait方法需要被try catch包含。4.wait/notify/notifyall的使用场景(1)生产者/消费者模型的实现注意点:a.假死当...原创 2019-08-03 14:20:45 · 2013 阅读 · 0 评论 -
线程池学习
三个思考问题:1.怎么设置线程池的容量大小?2.线程池添加任务的流程?3.怎么设置核心线程数的大小?线程池中Executor、ExecutorService、Executors三者的区别(1)Executors类提供工厂方法创建不同类型的线程池,比如:newSingleThreadExecutor():创建一个只有一个线程的线程池。newFixedThreadPo...原创 2019-12-15 15:09:07 · 147 阅读 · 0 评论 -
http学习总结
http协议属于应用层的协议,dns解析得到ip后,通过三次握手建立TCP连接,然后发送http请求,目前http基本上都是1.1版本,默认都是开启Keep-Alive,这样建立的TCP连接,可以在多次请求中复用。http的报文主要包括三个部分:(1)请求行主要包括URL(例子:www.baidu.com),方法(GET/PUT/POST/DELETE),版本(http版本...原创 2019-06-01 14:22:25 · 131 阅读 · 0 评论 -
递归输出目录的文件名
import java.io.File;public class Wuyu9 { private static String separator = File.separator; private static String path = "F:" + separator + "A"; public static void Q(File m) { if(m.exists()) {...原创 2018-07-28 06:48:40 · 701 阅读 · 0 评论 -
Java分布式应用技术架构介绍
分布式架构的演进系统架构演化历程-初始阶段架构初始阶段 的小型系统 应用程序、数据库、文件等所有的资源都在一台服务器上通俗称为LAMP特征:应用程序、数据库、文件等所有的资源都在一台服务器上。描述:通常服务器操作系统使用linux,应用程序使用PHP开发,然后部署在Apache上,数据库使用Mysql,汇集各种免费开源软件以及一台廉价服务器就可以开始系统转载 2016-02-20 15:21:25 · 356 阅读 · 0 评论 -
java接口与抽象类
关键点:接口和抽象类的分别适用场景,两者的区别适用场景:1.优先定义接口。2.当有多个接口实现公共的部分,则适用抽象类,然后集成它。使用抽象类是为了代码的复用,而使用接口是为了实现多态性。区别:(1)抽象类1.抽象方法必须存在于抽象类中。2.类声明abstract,只能被继承使用,不能生成对象,但是可以有构造函数。3.子类继承抽象类必须实现其中的抽象方法,...原创 2019-05-01 20:17:38 · 1438 阅读 · 1 评论 -
线程之间的通信
线程通信常用的方式有:wait/notify 等待 Volatile 内存共享 CountDownLatch 并发工具 CyclicBarrier 并发工具原创 2019-05-02 15:59:50 · 309 阅读 · 0 评论 -
线程安全的实现方法
1什么是线程安全:如果一个对象可以安全的被多个线程同时使用,那他就是线程安全的。如何实现线程安全:1.互斥同步。互斥是方法,同步是目的,互斥同步的主要问题是线程阻塞和唤醒所带来的性能问题,属于一种悲观的并发策略。实现同步主要有(1)加synchronized (2)重入锁Reentrantlock。关于synchronized和Renntrantlock的区别(1).两...原创 2019-05-02 23:21:42 · 438 阅读 · 0 评论 -
从二维数组路径最小和看动态规划到维特比算法
动态规划/维特比算法----参考吴军的《数学之美》,七月算法。摘要:主要是从题目--二维数组路径最小和 的暴力枚举解法时间复杂度太高,贪心算法解法只能做到局部最优无法做到全局最优,从而引出动态规划,再到一个特殊但应用广泛的动态规划算法-维特比算法。题目:二维数组路径最小和Given amxngrid filled with non-negative numbers...原创 2019-05-06 21:54:20 · 496 阅读 · 0 评论 -
java异常-chckedexception与uncheckedexception
异常处理原创 2019-05-03 22:15:53 · 154 阅读 · 0 评论 -
关于缓存问题的几个思考
1.缓存雪崩,击穿。2.如何保证缓存与DB数据的一致。原创 2019-05-03 22:14:50 · 133 阅读 · 0 评论 -
分布式ID如何实现
分布式id原创 2019-05-03 22:13:28 · 238 阅读 · 0 评论 -
Reentrantlock与condition
Reentrantlock1.与condition的使用。2.readlock和wirtelock实现原理。原创 2019-05-03 22:07:22 · 102 阅读 · 0 评论 -
jsp的九大隐式对象及其作用域
九大对象: 内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用 1-out: javax.servlet.jsp.JspWriter类型,代表输出流的对象。作用域为page(页面执行期) request:javax.servlet.ServletRequest的子类型,此对象封装了由WEB浏览器或其它客户端生成地HTT转载 2015-08-24 01:25:03 · 799 阅读 · 0 评论