- 博客(25)
- 收藏
- 关注
转载 redis
Redis为什么这么快?redis采用多线程会有哪些问题? Redis支持哪几种数据结构 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 Redis如何使用Redis实现分布式锁? Dubbo提供了4种均衡策略, RandomLoadBalance(随...
2019-04-26 11:21:00 109
转载 java常见面试题锦集(springmvc)
什么是mvc? MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种设=设计模式,用于组织代码用一种业务逻辑和数据显示分离的方法。 什么是spring mvc? SpringMVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Contro...
2019-04-22 15:50:00 141
转载 java常见面试题锦集(spring)
说你下你对Spring IOC的了解 Spring IOC(inversion of control)负责控制对象的生命周期和对象间的关系。 DI(Dependency Injetion)依赖注入:动态的向对象注入它所需要的对象。 好处:降低对象之间的耦合度,是程序更加稳定。 简单介绍下Spring AOP Spring AOP面向切面编程,在面向对象(oop)编程思想中...
2019-04-22 09:23:00 138
转载 java面试题总结系列(mybatis)
mybatis的工作原理 1.通过输入流读取并加载myabtis全局配置文件和mapper映射文件,生成configuration对象和一个个MapperStatement对象。 2.SqlsessionFactoryBuilder通过configuration生成sqsessionFactory,用于开启sqlsession会话。 3.sqlsession完成与数据库的交互。 ...
2019-04-19 20:50:00 159
转载 java面试题总结系列(多线程)
什么是进程,什么是线程? 进程是操作系统分配资源的最小单元,线程是操作系统调度的最小单元。 线程包含在进程当中,是进程中实际运行单位。 java实现多线程的几种方式,应该使用哪种方式比较好? (1)继承 java.lang.Thread 类 (2)实现 java.lang.Runnable 接口 如果你要继承其他类,最好实现Runnable。 Th...
2019-04-19 14:03:00 119
转载 java面试题总结系列(JDBC)
说一下通过JDBC操作数据库的步骤 第一步:通过反射注册并加载驱动Driver,驱动类会自动注册到DriverManager类,并加载到内存中。 第二步:通过DriverManager类获取connection连接对象。 第三步:通过连接对象获取statement数据库操作对象。 第四步:通过statement执行sql语句,返回Resultset结果集。...
2019-04-18 22:38:00 165
转载 java面试题总结系列(集合)
1.谈谈你对ArrayList的理解 ArrayList实现了List接口,底层采用的数组实现。 ArrayList实现了Cloneable接口,即覆盖了clone()方法,能被克隆。 ArrayList实现了java.io.Serializable接口,这意味着ArrayList支持序列化,能够通过序列化传输。 构造函数 ArrayList提供了三个构造函数: ...
2019-04-18 21:42:00 125
转载 zookeeoer简介以工作原理
1、Zookeeper的角色 » 领导者(leader),负责进行投票的发起和决议,更新系统状态 » 学习者(learner),包括跟随者(follower)和观察者(observer),follower用于接受客户端请求并想客户端返回结果,在选主过程中参与投票 » Observer可以接受客户端连接,将写请求转发给leader,但observer不参加投票过程,只同步lead...
2019-04-17 14:02:00 260
转载 生产者与消费者
使用阻塞队列来实现 //消费者 publicclassProducerimplementsRunnable{ privatefinal BlockingQueue<Integer>queue; publicProducer(BlockingQueue q){ this.queue=q; } @O...
2019-04-15 11:26:00 89
转载 Java数据结构和算法——链表
1、链表(Linked List) 链表通常由一连串节点组成,每个节点包含任意的实例数据(data fields)和一或两个用来指向上一个/或下一个节点的位置的链接("links") 链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。 使用链表结构可以克服数...
2019-04-13 20:50:00 93
转载 二分查找法
代码如下: public class BinarySearch { /* * 循环实现二分查找算法arr 已排好序的数组x 需要查找的数-1 无法查到数据 */ public static int binarySearch(int[] arr, int x) { int low = 0; int hig...
2019-04-12 20:35:00 99
转载 java动态代理实现与原理详细分析
关于Java中的动态代理,我们首先需要了解的是一种常用的设计模式--代理模式,而对于代理,根据创建代理类的时间点,又可以分为静态代理和动态代理。 一、代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委...
2019-04-12 19:15:00 212
转载 几种推荐使用的单例设计模式
1、饿汉式(静态常量) public class Singleton { private final static Singleton INSTANCE = new Singleton(); private Singleton(){} public static Singleton getInstance(){ ret...
2019-04-12 15:57:00 119
转载 合并排序数组
代码如下: public class MergeSortedArray { public static void main(String[] args) { int[] arr = {9, 16, 40, 46, 48, 90}; int[] arr2 = { 12, 22, 35, 76}; int[] resu...
2019-04-12 11:21:00 95
转载 关于二叉树的前序、中序、后序三种遍历(递归与非递归)
二叉树遍历分为三种:前序、中序、后序,其中序遍历最为重要。为啥叫这个名字?是根据根节点的顺序命名的。 比如上图正常的一个满节点,A:根节点、B:左节点、C:右节点,前序顺序是ABC(根节点排最先,然后同级先左后右);中序顺序是BAC(先左后根最后右);后序顺序是BCA(先左后右最后根)。 比如上图二叉树遍历结果 前序遍历:ABCDEFGHK 中序遍...
2019-04-11 23:00:00 173
转载 基本注解的详解
@Target表示注解能放在什么位置上ElementType.TYPE:能修饰类、接口或枚举类型ElementType.FIELD:能修饰成员变量ElementType.METHOD:能修饰方法ElementType.PARAMETER:能修饰参数ElementType.CONSTRUCTOR:能修饰构造器ElementType.LOCAL_VARIABLE:能修饰局部变量Element...
2019-04-11 16:31:00 114
转载 @Repeatable元注解的使用
@Repeatable注解表明标记的注解可以多次应用于相同的声明或类型,此注解由Java SE 8版本引入。以下示例如何使用此注解: 第一步,先声明一个重复注解类: package org.springmorning.demo.javabase.annotation.meta; import java.lang.annotation.Repeatable; @...
2019-04-11 16:24:00 417
转载 自定义注解以及通过反射获取注解
一、自定义的注解 @Target({ElementType.METHOD,ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Inherited @Documented public @interface jdbcConfig { String ip(); int port() default ...
2019-04-11 15:56:00 249
转载 springmvc常见面试题
1、SpringMVC怎么样设定重定向和转发的? (1)转发:在返回值前面加"forward:",譬如"forward:user.do?name=method4" (2)重定向:在返回值前面加"redirect:",譬如"redirect:http://www.baidu.com" 2、SpringMvc怎么和AJAX相互调用的? 通过Jackson框架就可以把Java里面的对象...
2019-04-11 15:50:00 114
转载 servlet请求转发与重定向的区别
1.请求转发(forward) request.getRequestDispatcher("parameter").forward(request,response);跳转到指定的服务器资源,地址栏URL不变,请求响应不变。 2请求包含(include)request.getRequestDispatcher("parameter").include(request,response...
2019-04-11 15:30:00 136
转载 SpringMVC工作原理
SpringMVC的工作原理图: SpringMVC执行流程: 1.用户发送请求至前端控制器DispatcherServlet 2.DispatcherServlet收到请求调用处理器映射器HandlerMapping。 3.处理器映射器根据请求url找到具体的处理器,生成处理器执行链HandlerExecutionChain(包括处理器对象和处理器拦截器)一并...
2019-04-11 11:40:00 110
转载 mybatis一级缓存二级缓存
一级缓存 Mybatis对缓存提供支持,但是在没有配置的默认情况下,它只开启一级缓存,一级缓存只是相对于同一个SqlSession而言。所以在参数和SQL完全一样的情况下,我们使用同一个SqlSession对象调用一个Mapper方法,往往只执行一次SQL,因为使用SelSession第一次查询后,MyBatis会将其放在缓存中,以后再查询的时候,如果没有声明需要刷新,并且缓存没有...
2019-04-11 09:48:00 87
转载 Spring配置项<context:annotation-config>的解释说明
我们一般在含有Spring的项目中,可能会看到配置项中包含这个配置节点<context:annotation-config>,这是一条向Spring容器中注册 AutowiredAnnotationBeanPostProcessor CommonAnnotationBeanPostProcessor PersistenceAnnotationBeanPostProces...
2019-04-10 20:30:00 140
转载 Spring中Bean的作用域、生命周期
Bean的作用域(scope) Spring 3定义了五种作用域,分别为singleton(单例)、prototype(原型)、request、session、global session,五种作用域如下: 1.singleton:单列模式,Spring Ioc容器中只会存在一个共享的bean实例,无论有多少个Bean引用它,始终都是指向同一个对象。singleton是spr...
2019-04-10 15:10:00 90
转载 Mybatis简介以及工作原理
Mybatis的工作原理 1、加载mybatis全局配置文件(数据源、mapper映射文件等),解析配置文件,MyBatis基于XML配置文件生成Configuration,和一个个MappedStatement(包括了参数映射配置、动态SQL语句、结果映射配置),其对应着<select | update | delete | insert>标签项。 2、SqlSes...
2019-04-09 20:12:00 309
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人