自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 分布式事务

1.强一致性方案:通过第三方事务管理器来协调多个节点的事务性,保证每一个节点的事务达到同时成功或者同时失败,可以引入X/Open DTP模型提供的XA协议,基于二阶段提交的方式去实现,最终一致性:与之对应的就是强一致性(例如:新建一个文件用两个不同的编辑器打开,在一个编辑器中进行修改,另一个编辑器就会提示已经发生了更新),最终一致性就是支付成功后,2.弱一致性方案:是针对强一致性方案衍生出来的性能和数据一致性平衡方案,也就是损失掉强一致性,可能在某一时刻会存在不一致的状况,但数据会达到最终的数据一致性。..

2022-08-28 23:37:20 137 1

原创 java锁

monitor计数器为0,意味着目前还没有被获得,那这个线程就会立刻获得然后把锁计数器+1,一旦+1,别的线程再想获取,就需要等待 如果这个monitor已经拿到了这个锁的所有权,又重入了这把锁,那锁计数器就会累加,变成2,并且随着重入的次数,会一直累加 这把锁已经被别的线程获取了,等待锁释放。1.锁的竞争,是通过互斥变量,使用cas机制来实现,没有竞争到锁的线程AbstractQueuedsynchronized这样一个线程同步器来存储,他的底层是通过双向链表来实现,当锁释放的时候,会从。...

2022-08-28 22:49:32 148

原创 sql优化及索引失效

3.小表驱动大表的思想,可以用in关键字实现,会优先执行in里面的子查询,如果in里面的数据比较少,可以作为条件查询。5.用链接查询代替子查询,可以提升效率,子查询的时候会创建临时表,需要查询结束后再删除,比较耗费性能。9.使用过程中,尽量使用复合索引,少使用单列索引,数据库会选择一个最优的索引来使用。1.避免使用select*,这样不会走覆盖索引,导致回表操作,导致SQL性能变低。7.以%开头的like模糊查询,会导致索引失效,尾部模糊匹配,不会导致失效。4.不要在索引列进行运算操作,索引会失效。

2022-08-23 22:58:52 735 2

原创 spring全家桶

springcloud是spring推出的一套微服务的解决方案,准确来说我觉得springcloud是对微服务中出现的各种技术场景定义的一套标准规范,比如用zuul去实现应用网关,eureka实现微服务的注册和发现,ribbon去实现负载均衡,hystrix实现服务熔断,我们可以使用这一套组件快速落地微服务架构,以及微服务治理的一系列问题,我们只需要在springboot的项目基础上通过starter启动依赖,集成相关组件。自动配置通常是基于项目classpath中引入的类和已定义的Bean来实现的。

2022-08-23 22:56:19 234

原创 radis相关面试题

一般在使用的过程当中,一般会将两种缓存的机制配合使用,因为rdb的方式,体量较小并且执行高效,比如在14:00这个节点用rdb的方式恢复数据,这个时间的节点以后用apped追加的命令来恢复数据,这样就可以高效并完整的恢复redis的数据。对于单个主节点只能存储100g左右,如果超了,则使用集群架构,用切片的方式将数据分到每一个主从节点上面,官方推荐不超过1000个节点,如果小的集群中的主节点挂掉之后,则会影响读写,如果访问不是该节点,则完全不影响。),使用单线程实现io操作,可以支持数据的持久化。

2022-08-23 22:54:25 247

原创 mysql事务实现原理?

3.接下来I表示事务的隔离性,也就是说多个并行事务对同一个数据进行操作的时候,如何去避免多个事务的干扰,导致数据混乱的问题而InnoDB中实现了SQL9.2的一个标准,提供了四种隔离级别的实现,分别是RU(未提交读)、RC(已提交读)、RR(可重复读)、串行化;2.其次就是C表示一致性,也就是说数据的完整性约束没有被破坏,这个更多的是依赖业务层的一些保障,数据库本身也提供了一些,比如像主键的唯一约束,字段长度和类型的一些保障等等。

2022-08-23 22:51:14 141

原创 Java面试-----项目篇

项目整理一.介绍一下你的项目?    说到这个项目,有一个小故事,之前在美团上点了一个外卖,等送过来的时候已经凉了,饭菜并没那么可口,于是萌生了一个想法,如果自己能做一个平台,让厨师上门烹饪会好一点,根据我的分析这个市场还是很客观的,家宴就有这样的需求,有了这个想法,我就跟我几个舍友商量实施了这个项目,首先我们获取了这个项目的需求,然后再分工各自完成。二.项目用到了那些技术?我的模块...

2018-10-11 19:02:46 982

原创 Java面试------JDBC篇

Jdbc篇1.什么是JDBC,什么时候用它?JDBC的全称是Java DataBase Connection,也就是Java数据库连接,我们可以用它来操作关系型数据库。JDBC接口及相关类在java.sql包和javax.sql包里。我们可以用它来连接数据库,执行SQL查询,存储过程,并处理返回的结果。2.什么是JDBC的连接,如何创建?JDBC连接是和数据库服务器建立的一个会话。...

2018-10-11 15:47:12 387

原创 Java面试------多线程篇

多线程篇一.什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要 100 毫秒,那么用十个线程完成改任务只需 10 毫秒。二.什么是进程?线程是进程的子集,一个进程可以有很多线程,每条线程并行执行不同的任务。不同的进程使用不同的内存空...

2018-09-26 21:49:48 174

原创 Java面试-------Servlet篇

Servlet篇一.Servlet的生命周期?1 装载Servlet类并创建实例阶段,该阶段在默认情况下发生在客户端第一次向服务器端发送请求; 2 初始化阶段,servlet实例创建完成后,调用init(ServletConfig config)方法对该实例完成初始化工作; 3 服务阶段,根据Http请求方式,调用service()方法中对应的doGet()或doPost()方法,...

2018-09-26 19:50:28 138

原创 Java面试-------HTTP篇

HTTP篇一.说一下什么是HTTP协议?客户端和服务器端之间数据传输的一种格式规范,格式简称为“超文本传输协议”。二.什么是Http协议无状态协议?怎么解决Http协议无状态协议?无状态协议对事物处理没有记忆能力,缺少状态说明如果后续处理需要前面的信息。 无状态协议解决方案:第一通过Cookic,第二种通过Session会话保存。三.说一说HTTP协议中的302状态?这种情...

2018-09-26 19:31:12 235

原创 Java面试------ssm篇

SSM篇一.什么是spring?是一个轻量级的开源框架,是为了解决企业开发的复杂型而创建的; 通俗的讲spring就是为了创建对象,在spring框架中的核心就是IOC(控制反转,也就是xml依赖),AOP(面向切面编程,感觉跟动态代理差不多,添加功能但是不修改原有的代码) 主要是不创建对象,但是描述创建它们的方式,在代码中不直接与对象和服务连接,但在配文件中描述哪一组件需要哪一个服务...

2018-09-19 23:32:31 250

原创 Java面试-------数据库篇

数据库篇一.SQL语句的优化:      1.应该尽量避免在where中使用!=,从而导致放弃引擎索引查询成为全表查询      2.数据库结构优化      3.范式优化,消除沉余      4.拆分表:分区将数据在物理上分隔开,不同分区数据可以保存在不同的磁盘里二.SQL注入是什么?一般开发前台由登录注册的功能,数据会传入后台,拼成一个SQL语句,如果输入密码时输入...

2018-09-19 20:31:02 138

原创 Java面试-----反射

反射篇一.反射机制的作用?在运行时判断任意一个对象所属的类 在运行是判断一个类所有的成员变量和方法 在运行时任意调运一个类的方法 在运行时构造一个任意的方法二.什么是反射机制?简单说,反射机制就是程序在运行时能获取自身的信息,在Java中只要给定类的名字就可以通过反射找到所有的信息。三.哪里用到了反射机制?Jdbc中有一行代码是:class.forName(“com.M...

2018-09-19 19:48:18 524

原创 Java面试-------异常篇

异常篇  一.Java中什么是Exception?在java中,异常功能是通过实现比如Throwable,Exception,RuntimeException之类的类,所有的异常都是通过Throwable衍生出来的。二.Java中的检查型异常和非检查型异常?检查型异常需要使用try, catch和finally关键字在编译期进行处理,否则会出现编译器会报错 Java中所有...

2018-09-19 17:37:49 157

原创 Java面试------IO流篇

IO流篇一.Java中有几种类型的流?字节流和字符流 字节流继承inputstream和outputstream,字符流继承自inputstreamReader和outputstreamWriter.二.分为两大类:(一):    1.字节输入流:fileinputstream;   构造函数是(file)    2.字节输出流:fileoutputstream;为了简...

2018-09-19 16:23:12 219

原创 Java面试------集合篇

集合篇一.集合中的使用泛型的优点?jdk1.5引入了泛型; 泛型解决了黄色警告线的问题; 避免了强制类型转换; 优化了代码格式二.Java集合中的基础接口?Collection为集合层级的根接口。一个集合代表一组对象,这些对象即为它的元素。Java平台不提供这个接口任何直接的实现。 Set是一个不能包含重复元素的集合。这个接口对数学集合抽象进行建模,被用来代表集合,就如一副牌...

2018-09-19 15:36:10 183

原创 Linux-基础学习(4)--IP、yum源、dhcp、http

一、管理网络1.ip基础知识(1)ipv4     全球因特网所采用的协议族是TCP/IP协议族。IP是TCP/IP协议族中网络层的协议,是TCP/IP协议族的核心协议。目前IP协议的版本号是4(简称为IPv4,v,version版本),它的下一个版本就是IPv6。(2)进制32位-----10进制 例如:172.25.254.109/255.255.255.0172....

2018-08-21 13:20:58 180

原创 Maven的安装配置以及使用IDEA配置创建Maven

1.maven是什么maven翻译为“专家”,“内行”。Maven是Apache下的一个纯java开发的开源项目,它是一个项目管理工具,使用maven对java项目进行构建、依赖管理。当前使用Maven的项目在持续增长。2.什么是项目构建项目构建是一个项目从编写源代码到编译、测试、运行、打包、部署、运行的过程。3.什么是依赖管理什么是依赖?一个java项目可能要使用一些第三方的...

2018-08-17 20:12:30 323

原创 linux的文件权限和进程及服务的控制

一. 文件的权限控制 目录一. 文件的权限控制前言1.文件的权限2.文件权限的定义3.不同类型文件的权限及其功能4.文件权限操作5.文件权限的修改6.特定用户对特定文件有指定权限二.进程及服务的控制1.什么是进程2.图形方式查看    gnome-system-monitor3.查看进程的命令4.进程优先级5:进程前后台的调用6....

2018-08-16 17:48:39 581

原创 linux中的用户管理

linux用户和用户组管理    Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。   用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和各自的密码。用户在登...

2018-08-09 17:01:39 255

原创 linux的初步认识

一.什么是liunx?      Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。       Linux操作系统诞生于1991 年10 月5...

2018-08-06 16:52:55 293

原创 File基础知识归纳

File类:表示文件或者目录的路径的抽象表现形式.  IO流就是对文件进行操作的  public File(String pathname):表示pathname的抽象路径表现的形式 (开发中使用这种方式) public File(String parent,String child) 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例 public File(...

2018-05-16 15:22:41 264

原创 异常的归纳小结

throw:表示也是抛出异常,抛出的一个异常对象 (throw new 异常类名() :匿名对象的方式) 面试题:  throws和throw的区别?  throws:也是表示抛出异常,它后面跟的异常类名,并且可以多个异常类名中间逗号开 举例: public void show() throws IoException,ClassNotFoundException{...} ...

2018-05-16 15:05:44 153

原创 IO流的基本认识和字节输入流和字节输入流

IO流的基本认识IO:在设备和设备之间的一种数据传输!IO流的分类: 按流的方向分: 输入流: 读取文件   (e:\\a.txt):从硬盘上文件读取出来后输出这个文件的内容 输出流: 写文件:将e:\\a.txt 内容读出来--->写到f盘下 按数据的类型划分: 字节流 字节输入流:InputStream :读取字节 字节输出流:OutputStream :写...

2018-05-16 11:49:07 1259

原创 TreeSet集合的两种排序(自然排序,选择排序)

自然排序TreeSet集合存储自定义对象(Student)按照姓名的长度从小到大进行比较 :主要条件public class TreeSetDemo { public static void main(String[] args) { //创建集合对象 TreeSet <Student> set = new TreeSet<Student>(); //...

2018-05-11 15:42:40 576

原创 TreeSet集合小结

 TreeSet集合模拟情况下是通过自然顺序对集合中的元素排序 TreeSet: 可以保证元素唯一并且元素排序(Integer类型的元素自然升序) 自然排序 比较器排序 给TreeSet集合存储以下元素:20,23,22,18,17,19,24..public class TreeSetDemo { public static void main(String[] a...

2018-05-11 15:23:56 249

原创 LinkedHashSet集合的小结

   如果在开发中,元素唯一性,并且还要保证元素有序(存储和取出一致),使用LinkedHashSet集合  如果开发中要使用集合排序的问题,使用TreeSet集合(红黑树结构),下午分解... 自然排序 选择器排序 LinkedHashSet集合: 底层是一种链接列表和哈希表组成 可以保证元素的唯一性,是由哈希表决定的(hashCode()和equals()) 可以保证元素的迭代顺序一...

2018-05-11 15:20:17 3760

原创 Set集合小结

 Set集合和List集合的区别? Set集合:不允许元素重复,唯一的(元素可以为null) ,不能保证迭代的顺序恒久不变(底层哈希表和hascode) 无序(存储和取出不一致) List:允许元素重复,并且存储特点:有序性(存储和取出一致)                通过Set集合存储字符串并遍历public class SetDemo1 { public static voi...

2018-05-11 15:18:03 132

原创 Map集合的小结(内含遍历方式)

 Map接口的功能:  添加功能:                       V put(K key,V value) :将指定的值和键关联起来   如果当前的这个键是一次存储,则返回值null  如果不是第一次存储,返回值是第一次对应的值,当前的值就把之前的键对应的值替换掉!    获取功能  Set<Map.Entry<K,V>> entrySet() :...

2018-05-11 15:10:58 271

原创 静态导入

 静态导入:Jdk5一个新特性 特点: 1)前提是该方法必须是静态的 2)导入到的一个方法的级别 静态导入的格式: import static 包名.类名.方法名; import static java.util.ArrayList.add;   方法必须是静态方法 常用类中哪个类中静态方法最多:Math   之前导包:java.util.Scanner;   导入到类的级别import s...

2018-05-08 21:43:18 252

原创 Vector集合的小结

  Vector集合 底层是一种可增长对象数组,查询快,增删慢 线程安全,同步,执行效率高 特有功能: public void addElement(Object obj)------->add(Object obj) public Enumeration elements():返回此向量的枚举--->相当于:public Iterator iterator() boo...

2018-05-08 21:24:56 1994 1

原创 遍历集合的三种常用方法

一.普通for循环  利用集合的size()方法和get()方法进行遍历如下代码public class for1 { public static void main(String[] args) { //创建集合对象 ArrayList<String> list = new ArrayList<String>(); list.add("hello")...

2018-05-08 21:21:18 850

原创 LinkedList的小结

 LinkedList集合的特点: 底层是一种链表实现,查询慢,增删快 线程不安全的,不同步,执行效率高特有功能:        添加功能 addFirst(Object e):将指定的元素插入到列表的开头 addLast(object e):将指定的元素添加到列表末尾 获取功能: getFirst():获取列表第一个元素 getLast():获取列表第二个元素 删除功能 publi...

2018-05-08 20:59:22 120

原创 泛型的使用介绍

 一.泛型的介绍泛型是Java 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。泛型在使用中还有一些规则和限制: 1、泛型的类型参数只能是类类型(包括自定义类),不能是简单类型。2、同一种泛型可以对应多个版本(因为参数类型是不确定的),不同版本的泛型类实例是不兼容的。3、泛型的类型参数...

2018-05-08 20:44:20 149

原创 集合的小结

上面是集合的继承体系图,根据此图可更方便学习集合Colleciton的集合的高级功能: boolean addAll(Collection c)  :添加一个集合中的所有元素 boolean removeAll(Collection c):删除的高级功能(思考:删除一个算是删除还是删除所有算是删除?) boolean containsAll(Collection c):包含所有元素算是包含,还是包...

2018-05-04 23:03:05 152

原创 System类的小结

System 类包含一些有用的类字段和方法。它不能被实例化。 常用的方法: public static void gc()运行垃圾回收器。  public static void exit(int status)终止当前正在运行的 Java 虚拟机。参数用作状态码;  一般情况,需要终止 Jvm,那么参数0 public static long currentTimeMillis...

2018-05-04 22:45:57 180

原创 Math类的小结

Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。  常用的方法: public static int abs(int a):绝对值 public static double ceil(double a):向上取整 public static double floor(double a):向下取整 public static int max(int a,int...

2018-05-04 22:40:26 110

原创 日历类和日期类的小结

Calendar类:日历类Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法 是一个抽象类,如何实例化? public static Calendar getInstance() :通过一个静态功能来创建日历了对象public class C...

2018-05-04 22:36:32 477

原创 String类的知识点小结

 1.Object中的一个方法: public String toString(); 回该对象的字符串表示    Integer:是int类型的包装类类型  它里面提供了一个方法   public static String toHexString(int i):以十六进制表示对字符串形式    直接输出对象名称:实际执行了Object中的toString(),输出的全类名@十六进制数据   ...

2018-04-26 18:00:32 247

空空如也

空空如也

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

TA关注的人

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