自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

转载 阻塞队列

原文地址ByJakob Jenkov 翻译:寒桐 校对:方腾飞阻塞队列与普通队列的区别在于,当队列是空的时,从队列中获取元素的操作将会被阻塞,或者当队列是满时,往队列里添加元素的操作会被阻塞。试图从空的阻塞队列中获取元素的线程将会被阻塞,直到其他的线程往空的队列插入新的元素。同样,试图往已满的阻塞队列中添加新元素的线程同样也会被阻塞,直到其他的线程使队列重新变得空闲起来,如从队列中移...

2019-08-26 14:46:37 160

转载 并发编程 06—— CompletionService :Executor 和 BlockingQueue

Java并发编程实践 目录并发编程 01—— ThreadLocal并发编程 02—— ConcurrentHashMap并发编程 03—— 阻塞队列和生产者-消费者模式并发编程 04—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程 05—— Callable和Future并发编程 06—— CompletionService : Exec...

2019-08-17 15:49:54 216

转载 并发编程 05—— Callable和Future

Java并发编程实践 目录并发编程 01—— ThreadLocal并发编程 02—— ConcurrentHashMap并发编程 03—— 阻塞队列和生产者-消费者模式并发编程 04—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程 05—— Callable和Future并发编程 06—— CompletionService : Exec...

2019-08-17 15:36:04 150

原创 Excle快速生成Sql语句

我们想把excle中数据添加到数据库中,但由于excle中数据太多这个时候我们应该怎么办。这里用的是mysql数据库为例1、例如我想把图1的数据给添加到图2的数据库中;2、先写个sql语句确认一条数据能插入成功。3、然后复制这条sql语句打开excle,选中表格后的一个单元格,在上方函数位置粘贴刚才的sql语句并做修改:="INSERT INTO student(i...

2019-08-13 10:31:46 438

转载 嵌套管程锁死

原文链接 作者:Jakob Jenkov译者:余绍亮 校对:丁一嵌套管程锁死类似于死锁, 下面是一个嵌套管程锁死的场景:线程1获得A对象的锁。线程1获得对象B的锁(同时持有对象A的锁)。线程1决定等待另一个线程的信号再继续。线程1调用B.wait(),从而释放了B对象上的锁,但仍然持有对象A的锁。线程2需要同时持有对象A和对象B的锁,才能向线程1发信号。线程2...

2019-08-06 11:42:39 124

转载 Java中的锁

Java中的锁原文链接作者:Jakob Jenkov译者:申章校对:丁一锁像synchronized同步块一样,是一种线程同步机制,但比Java中的synchronized同步块更复杂。因为锁(以及其它更高级的线程同步机制)是由synchronized同步块的方式实现的,所以我们还不能完全摆脱synchronized关键字(译者注:这说的是Java 5之前的情况)。自Java 5...

2019-08-06 11:31:20 148

转载 饥饿和公平

原文地址ByJakob Jenkov 翻译Simon-SZ 校对:方腾飞如果一个线程因为CPU时间全部被其他线程抢走而得不到CPU运行时间,这种状态被称之为“饥饿”。而该线程被“饥饿致死”正是因为它得不到CPU运行时间的机会。解决饥饿的方案被称之为“公平性” – 即所有线程均能公平地获得运行机会。下面是本文讨论的主题:1.Java中导致饥饿的原因:高优先级线程吞噬所...

2019-08-05 15:30:52 130

转载 避免死锁

原文链接 作者:Jakob Jenkov译者:申章 校对:丁一在有些情况下死锁是可以避免的。本文将展示三种用于避免死锁的技术:加锁顺序 加锁时限 死锁检测加锁顺序当多个线程需要相同的一些锁,但是按照不同的顺序加锁,死锁就很容易发生。如果能确保所有的线程都是按照相同的顺序获得锁,那么死锁就不会发生。看下面这个例子:Thread 1: loc...

2019-08-05 15:29:16 150

转载 20个高级Java面试题汇总

这是一个高级Java面试系列题中的部分。这一部分论述了可变参数,断言,垃圾回收,初始化器,令牌化,日期,日历等等Java核心问题。程序员面试指南:https://www.youtube.com/watch?v=0xcgzUdTO5MJava面试问题集合指南:https://www.youtube.com/watch?v=GnR4hCvEIJQ 什么是可变参数? ...

2019-08-04 20:09:28 299

转载 HTTP相关面试题

HTTP协议在 OSI 七层模型中,HTTP协议位于最顶层的应用层中。通过浏览器访问网页就直接使用了 HTTP 协议。使用 HTTP 协议时,客户端首先与服务端的 80 端口建立一个 TCP 连接,然后在这个连接的基础上进行请求和应答,以及数据的交换。HTTP 有两个常用版本,分别是 1.0 和 1.1。主要区别在于 HTTP 1.0 中每次请求和应答都会使用一个新的 TCP 连接,...

2019-08-04 20:07:49 253

转载 面试被问烂的 Spring IOC

广义的 IOC IoC(Inversion of Control) 控制反转,即“不用打电话过来,我们会打给你”。 两种实现: 依赖查找(DL)和依赖注入(DI)。IOC 和 DI 、DL 的关系(这个 DL,Avalon 和 EJB 就是使用的这种方式实现的 IoC): DL 已经被抛弃,因为他需要用户自己去是使用 API 进行查找资源和组装对象。即有侵入性。 ...

2019-08-04 19:17:42 180

转载 面试中的单例问题

当我兴冲冲的带着笔记答案参加面试时,突然发现面前的面试官显得很严肃而且眉头紧锁,不知道是工作太累了,还是说他对今天的面试官不是很满意。于是我就勇敢的坐过去在他的面前坐了下来,没想到第一道题就让面试官看出了我的水平,因此今天跟大家聊聊面试中单例的问题,希望大家都能了解这块内容。在早期的项目代码中,如果我们想使用类的某个方法,我们基本都会创建一个类的对象实例然后再调用方法,这样的实现往往在系统...

2019-08-04 19:15:11 210

转载 面试中常问的List去重问题,你都答对了吗?

面试中经常被问到的list如何去重,用来考察你对list数据结构,以及相关方法的掌握,体现你的java基础学的是否牢固。我们大家都知道,set集合的特点就是没有重复的元素。如果集合中的数据类型是基本数据类型,可以直接将list集合转换成set,就会自动去除重复的元素,这个就相对比较简单。如下示例:publicclassTest{publicstaticvoid...

2019-08-04 13:08:27 196

转载 面试必问:Spring循环依赖的三种方式

引言:循环依赖就是N个类中循环嵌套引用,如果在日常开发中我们用new 对象的方式发生这种循环依赖的话程序会在运行时一直循环调用,直至内存溢出报错。下面说一下Spring是如果解决循环依赖的。第一种:构造器参数循环依赖Spring容器会将每一个正在创建的Bean 标识符放在一个“当前创建Bean池”中,Bean标识符在创建过程中将一直保持在这个池中。因此如果在创建Bean过程中发现自己已...

2019-08-04 13:06:30 210

转载 JVM面试题

1、你知道哪些或者你们线上使⽤什么GC策略?它有什么优势,适⽤于什么场景?参考 触发JVM进行Full GC的情况及应对策略。https://blog.csdn.net/chenleixing/article/details/46706039/2、Java类加载器包括⼏种?它们之间的⽗⼦关系是怎么样的?双亲委派机制是什么意思?有什么好处?启动Bootstrap类加载、扩展Ext...

2019-08-04 13:04:17 199

转载 死锁

死锁是两个或更多线程阻塞着等待其它处于死锁状态的线程所持有的锁。死锁通常发生在多个线程同时但以不同的顺序请求同一组锁的时候。例如,如果线程1锁住了A,然后尝试对B进行加锁,同时线程2已经锁住了B,接着尝试对A进行加锁,这时死锁就发生了。线程1永远得不到B,线程2也永远得不到A,并且它们永远也不会知道发生了这样的事情。为了得到彼此的对象(A和B),它们将永远阻塞下去。这种情况就是一个死锁。...

2019-08-04 10:13:45 146

原创 Java笔试题

Java笔试题库(01期)1、Spring DAO 中最常用的类是()A,JdbcTemplate ,SimpleJdbcTemplate B,SimpleJdbcInsert,SimpleJdbcProcedure C,SimpleJdbcInsert ,SimpleJdbcStoredProc D,SimpleJdbcQuery ,SimpleJdbcEx...

2019-08-03 23:49:04 9761

转载 最全的Spring AOP

1.什么是AOP?AOP(Aspect-Oriented Programming, 面向切面编程): 是一种新的方法论, 是对传统 OOP(Object-Oriented Programming, 面向对象编程) 的补充,它的主要编程对象是切面(aspect), 而切面模块化横切关注点.在应用 AOP 编程时, 仍然需要定义公共功能, 但可以明确的定义这个功能在哪里, 以什么方式应用, 并且不...

2019-08-03 16:43:54 154

转载 Spring学习总结(二)

Spring AOP技术(注解方式)实现引入开发包:4核心包+2日志包+1测试包+2aop开发包+2aspectJ开发包(共11个)Spring配置文件: 12345678 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http...

2019-08-03 13:33:31 173

转载 Spring学习总结(一)

IOC功能(注解方式)步骤一:导入注解开发所有需要的jar包IOC容器必须的6个jar包(4个核心包+2个日志包) AOP的jar包(1个)步骤二:创建对应的包结构, 编写Java的类UserService.java:接口 UserServiceImpl.java:具体的实现类步骤三:现在想使用注解的方式, 那么就需要引入context的约束, 具体的约束如下applica...

2019-08-03 12:54:43 141

原创 git小乌龟工具TortoiseGit记住账号密码

怎么设置记住密码:在[系统盘]:\Users\ [你的用户名] (例如: C:\User\Administrator 里面的.gitconfig)下面,有一个.gitconfig文件,这个是记录你的git配置信息的。在该文件后面加上[credential] helper = store设置完后,输入一次密码就不会再要求输入。但是会生成一个.git-credentia...

2019-08-02 23:53:54 496

转载 Java基础面试题及答案解析(10)

概括的解释下线程的几种状态 就绪(Runnable):线程准备运行,不一定立马就能开始执行。 运行中(Running):进程正在执行线程的代码。 等待中(Waiting):线程处于阻塞的状态,等待外部的处理结束。 睡眠中(Sleeping):线程被强制睡眠。 I/O阻塞(Blocked on I/O):等待I/O操作完成。 同步阻塞(B...

2019-08-02 23:38:20 160

转载 Java基础面试题及答案解析(9)

内部类和静态内部类的区别内部类:1、内部类中的变量和方法不能声明为静态的。2、内部类实例化:B是A的内部类,实例化B:A.B b = new A().new B()。3、内部类可以引用外部类的静态或者非静态属性及方法。静态内部类:1、静态内部类属性和方法可以声明为静态的或者非静态的。2、实例化静态内部类:B是A的静态内部类,A.B b = new A.B()...

2019-08-02 23:35:46 125

转载 Java中级面试题及答案解析(8)

数据库的三大范式1 、第一范式(1NF)在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构...

2019-08-02 23:33:51 171

转载 spring面试题及答案解析(7)

这一篇说一些Java最流行的框架spring的一些知识点。大家注意到了没有,我不说面试题,改用知识点了。因为后台有小伙伴留言说有很多人不准备面试,可不可以发一些学习的知识点。其实面试所问的往往是企业期望技术人掌握的东西,这些不一定只是为了去面试看,通过看这些问题反省自己对某一块知识的掌握也是很好的。但小编还是想尽量满足大部分小伙伴的想法,所以以后发的面试题一律改称知识点。以下是知识点正文...

2019-08-02 23:31:50 198

转载 Java同步块

Java 同步块(synchronized block)用来标记方法或者代码块是同步的。Java同步块用来避免竞争。本文介绍以下内容:Java同步关键字(synchronzied) 实例方法同步 静态方法同步 实例方法中同步块 静态方法中同步块 Java同步示例Java同步关键字(synchronized)Java中的同步块用synchronized标记。同步块在Jav...

2019-08-02 23:25:33 118

转载 Java内存模型

ava内存模型规范了Java虚拟机与计算机内存是如何协同工作的。Java虚拟机是一个完整的计算机的一个模型,因此这个模型自然也包含一个内存模型——又称为Java内存模型。如果你想设计表现良好的并发程序,理解Java内存模型是非常重要的。Java内存模型规定了如何和何时可以看到由其他线程修改过后的共享变量的值,以及在必须时如何同步的访问共享变量。原始的Java内存模型存在一些不足,因此Jav...

2019-08-02 23:22:19 200

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除