- 博客(31)
- 收藏
- 关注
转载 11/18整理
OR会引起索引失效的说法是这样来的:如果是这样一个查询SELECT * FROM TB WHERE A=1 AND B>2 AND C并且在TB表上有这样一个索引:CREATE INDEX INX_TB_ABCD ON TB (A,B,C,D)那么这个查询可以用到这个索引如果同样是这个索引,查询换成SELECT * FROM TB_ WHERE A=1 OR B>2 OR
2017-11-18 18:16:46
392
转载 11/8
JavaWeb的四大作用域为:PageContext,ServletRequest,HttpSession,ServletContext;PageContext域:作用范围是整个JSP页面,是四大作用域中最小的一个;生命周期是当对JSP的请求时开始,当响应结束时销毁。 ServletRequest域:作用范围是整个请求链(请求转发也存在);生命周期是在service方法调用
2017-11-08 11:50:39
835
转载 <context:annotation-config> 和 <context:component-scan>的区别
Spring 开启Annotation 和 诠释及区别 和 的区别 是用于激活那些已经在spring容器里注册过的bean(无论是通过xml的方式还是通过package sanning的方式)上面的注解。除了具有的功能之外,还可以在指定的package下扫描以及注册javabean 。下面我们通过例子来详细查看他们的区别,有三个class A,B,C,并且B,C的对象
2017-11-08 00:17:17
264
转载 11/7整理 多线程相关
ThreadLocal总结:当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。ThreadLocal是如何做到为每一个线程维护变量的副本的呢?其实实现的思路很简单:在ThreadLocal类中有一个Map,用于存储每一个线程的变量副本,Map中元素的键为线程对
2017-11-07 17:47:35
256
转载 前几天整理的面经
1 final用于修饰变量 final变量只能赋值一次,赋值的方式有三种:1)声明变量时直接赋值;2)非静态成员变量在{}块中赋值,静态成员变量在static{}块中赋值;3)非静态成员变量在构造方法中赋值。三种赋值方式的顺序是1)、2)、3),若有一种方式先行赋值了,则后面的方式就不能再赋值,否则就会编译错误。[java] view plain copy print?
2017-11-06 15:29:17
272
转载 深入剖析Java中的装箱和拆箱
深入剖析Java中的装箱和拆箱 自动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题。本文先讲述装箱和拆箱最基本的东西,再来看一下面试笔试中经常遇到的与装箱、拆箱相关的问题。 以下是本文的目录大纲: 一.什么是装箱?什么是拆箱? 二.装箱和拆箱是如何实现的 三.面试中相关的问题 若有不正之处,请
2017-11-05 19:17:51
205
转载 sql 面试题总结
查询时使用联合索引的一个字段,如果这个字段在联合索引中所有字段的第一个,那就会用到索引,否则就无法使用到索引。 例如联合索引 IDX(字段A,字段B,字段C,字段D),当仅使用字段A查询时,索引IDX就会使用到;如果仅使用字段B或字段C或字段D查询,则索引IDX都不会用到。 这个规则在oracle和mysql数据库中均成立。B树和B+树的区别 如图所示,区别有以下两点:1.
2017-11-05 09:56:16
332
转载 mvc框架优缺点
MVC:模型(Model)、视图(View)、控制器(Control) 流程如下: 首先是视图向控制器发送请求,控制器再将业务请求发送给模型, 然后模型处理请求业务并把结果返回给控制器,控制器根据结果再选择 视图。 MVC的优点: 1、低耦
2017-11-03 22:33:46
2320
转载 二叉树最近公共父节点
在二叉树中找最近公共父节点。分为两种情况,一种是有父指针,一种没有父指针。1、有父指针这种情况比较简单,计算两个结点的深度,再把深度大的向上移,移到同一深度。在同时向上移动,直到两个结点相同,这样便找到了父节点。这个算法时间复杂度为O(N)。代码实现:[cpp] view plain copy#include str
2017-11-03 00:52:13
377
转载 双重锁单例模式 观察者模式
单例模式标签: 设计模式-java2016-11-17 19:52 162人阅读 评论(0) 收藏 举报 分类:java(3) 设计模式(2) 版权声明:本文为博主原创文章,如需转载,请标明出处。在软件开发过程中常会有一些对象我们只需要一个,如:线程池(threadpool)、缓存(cache)、对话框、偏好设置等。这些
2017-11-03 00:16:45
471
转载 11/1 面试总结-设置mysql 查询区分大小写
详解MySQL查询时区分字符串中字母大小写的方法_MySQL如果你在mysql有唯一约束的列上插入两行值'A'和'a',Mysql会认为它是相同的,而在oracle中就不会。就是mysql默认的字段值不区分大小写?这点是比较令人头痛的事。直接使用客户端用sql查询数据库。 发现的确是大小不敏感 。通过查询资料发现需要设置collate(校对) 。 collate规则
2017-11-02 23:54:49
580
转载 问面试官
当面试官问「你有什么要问我的吗」时,应该问什么?面试官一般在面试的最后,会问你一句还有什么问题吗。最开始我一般都会问你们主要做些什么,需要哪些技能。面试多了就感觉这个问题没有那么简单,所以稍微搜索了一下相关问题,总结一下。问题的主要答案来自知乎的为什么面试官在最后的面试中,都会问一句你还有什么问题吗,这个考察什么?,当面试官问「你有什么要问我的吗」时,应该问什么?,面试结尾
2017-11-02 23:20:11
421
转载 关于java重载函数,参数为null时,调用的处理。(精确性原则)
关于以下程序的输出结果 [java] view plain copypublic class TestNull { public void show(String a){ System.out.println("String"); } public void show(Object o){ Sy
2017-11-02 22:46:50
386
转载 多线程打印abc
面试题--三个线程循环打印ABC10次的几种解决方法博客分类: 多线程Java面试题多线程javathreadSemaphoreCondition 最近发现公司有份笔试试卷中有道多线程的题目:有三个线程分别打印A、B、C,请用多线程编程实现,在屏幕上循环打印10次ABCABC… 这个最早好像是迅雷的面试题目吧,看到了然后就想重温一下这个题目的解决方法
2017-11-02 22:29:52
398
转载 面经tcp ip
链接:https://www.nowcoder.com/questionTerminal/0d07822c751c41ff865401d77c17364d?orderByHotValue=0&done=0&pos=13&onlyReference=false来源:牛客网介绍一下TCP连接建立与关闭过程中的状态。TCP连接过程是状态的转换,促使状态发生转换的因素包括用户调用、特定数据包以
2017-11-02 11:02:35
490
转载 10/30 fb面经
网页解析的全过程--输入url到展示页面 (2016-06-16 09:50:15)转载▼标签: 浏览器解析页面 页面解析全过程 输入url到展示页面 浏览器加载页面分类: 前端性能1.用户输入网址,浏览器发起DNS查询请求用户访问网页,DNS服务器(域名解析系统)会根据用户
2017-10-30 22:28:53
222
转载 maven groupId,groupId,version
Maven中的主要参数解析如下: groupId: 代表组织和整个项目的唯一标志。比如说所有的Maven组件的groupId都是org.apache.maven。 artifactId: 具体项目的名称,它于groupId共同确定一个项目在maven repo中的位置,例如,groupId=org.codehaus.mojo, artifactId=my-project的项目,在maven r
2017-10-30 00:26:22
1465
转载 java面试题 10/29总结
ThreadLocal的作用是提供线程内的局部变量,这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或者组件之间一些公共变量的传递的复杂度。每个Thread维护一个ThreadLocalMap映射表,这个映射表的key是ThreadLocal实例本身,value是真正需要存储的Object。ThreadLocal 就是把变量分成很多个拷贝,每个线程拥有一个。这里没有所谓的
2017-10-28 20:44:00
314
转载 Java中,abstract使用的场合
abstract(抽象)修饰符,可以修饰类和方法1,abstract修饰类,会使这个类成为一个抽象类,这个类将不能生成对象实例,但可以做为对象变量声明的类型,也就是编译时类型,抽象类就像当于一类的半成品,需要子类继承并覆盖其中的抽象方法。2,abstract修饰方法,会使这个方法变成抽象方法,也就是只有声明(定义)而没有实现,实现部分以";"代替。需要子类继承实现(覆盖)。注意:有抽象方法的类一定
2017-10-13 11:00:45
387
转载 spring 面试题
1. Spring工作机制及为什么要用?Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。Spring既是一个AOP框架,也是一IOC容器。SpringFramework的组成:Spring AOP,Spring DAO,Spring ORM,Spring Web,Spring Context, Spring Web MVC。Spring的核心就是I
2017-10-05 00:55:49
358
转载 git学习资料
廖雪峰的官方网站https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000Git中pull对比fetch和mergePOSTED ON 2014年7月12日 BY OOBA使用git fetch和git pull都可以更新远程仓库的代码到本地,但是
2017-09-30 23:55:25
299
转载 Lock的await/singal 和 Object的wait/notify 的区别
在使用Lock之前,我们都使用Object 的wait和notify实现同步的。举例来说,一个producer和consumer,consumer发现没有东西了,等待,produer生成东西了,唤醒。线程consumer线程producersynchronize(obj){ obj.wait();//没东西了,等待 }synchronize(ob
2017-09-13 23:05:54
250
转载 用Runtime.getRuntime().exec()需要注意的地方
有时候我们可能需要调用系统外部的某个程序,此时就可以用Runtime.getRuntime().exec()来调用,他会生成一个新的进程去运行调用的程序。此方法返回一个java.lang.Process对象,该对象可以得到之前开启的进程的运行结果,还可以操作进程的输入输出流。Process对象有以下几个方法: 1、destroy() 杀死这个子进程 2、exitVal
2017-06-20 16:21:49
632
转载 spring四种依赖注入方式
平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中。依赖注入的另一种说法是“控制反转”,通俗的理解是:平常我们new一个实例,这个实例的控制权是我们程序员,而控制
2017-05-27 16:57:23
275
转载 spring四种依赖注入方式
平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中。依赖注入的另一种说法是“控制反转”,通俗的理解是:平常我们new一个实例,这个实例的控制权是我们程序员,而控制
2017-05-27 16:56:23
422
转载 java 的异常有几种类型
未检查异常和已检查异常所有派生自Error和RuntimeException的类,都是未检查异常.其余的是已检查异常.未检查异常意思就是说,编译器不会检查程序是否抛出异常,换句话说,程序员可以不用使用try-catch来捕获异常,比如NullPointerExceptionThrowable接口是JVM用来判断是不是可以throw。Error是T
2017-05-15 18:17:04
13672
转载 希尔排序(java实现)
上篇blog中介绍的直接插入排序,希尔排序就是对直接插入排序的一个优化。比如有这么一种情况:对一个无序数组进行从小到大的排序,但是数组的最后一个位置的数是最小的,我们要把它挪到第一个位置,其他位置的都要往后移动,要是这个数组非常大,那么直接插入排序的开销就非常大。 现在有一个array,希尔排序就是设定一个增量incrementNum(0 先从array[0]开始,以incre
2017-05-14 22:16:18
248
转载 J2EE框架(Struts&Hibernate&Spring)的理解
SSH:Struts(表示层)+Spring(业务层)+Hibernate(持久层)Struts:Struts是一个表示层框架,主要作用是界面展示,接收请求,分发请求。在MVC框架中,Struts属于VC层次,负责界面表现,负责MVC关系的分发。(View:沿用JSP,HTTP,Form,Tag,Resourse ;Controller:ActionServlet,struts
2017-05-10 23:06:59
303
转载 java中类加载的全过程及内存图分析
类加载机制:jvm把class文件加载到内存,并对数据进行校验、解析和初始化,最终形成jvm可以直接使用的java类型的过程。(1)加载将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区中的运行时数据结构,在堆中生成一个代表这个类的java.lang.Class对象,作为方法区类数据的访问入口。(2)链接 将java类的二进制代码合并到jvm的运行
2017-05-09 01:13:53
641
转载 java程序运行时内存分配详解
一、 基本概念 每运行一个java程序会产生一个java进程,每个java进程可能包含一个或者多个线程,每一个Java进程对应唯一一个JVM实例,每一个JVM实例唯一对应一个堆,每一个线程有一个自己私有的栈。进程所创建的所有类的实例(也就是对象)或数组(指的是数组的本身,不是引用)都放在堆中,并由该进程所有的线程共享。Java中分配堆内存是自动初始化的,即为一个对象分配内存的时候,会初
2017-05-09 00:30:16
568
转载 IP数据包的传输全过程详解—数据是如何在tcp/ip各层封
我们知道现在的互联网中使用的TCP/IP协议是基于,OSI(开放系统互联)的七层参考模型的,(虽然不是完全符合)从上到下分别为 应用层 表示层 会话层 传输层 网络层 数据链路层和物理层。其中数据链路层又可是分为两个子层分别为逻辑链路控制层(Logic Link Control,LLC )和介质访问控制层((Media Access Control,MAC )也就是平常说的MAC层。LLC对两个节
2017-05-07 23:18:52
25255
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人