- 博客(71)
- 收藏
- 关注
原创 spring整合及高频面试题
谈谈你对 Spring的理解让 java 开发模块化,并且全面。Spring 通过控制反转降低耦合性,一个对象的依赖通过被动注入的方式而非主动 new,还通过代理模式实现了面向切面编程。IOC 是什么,什么是 Spring IOC 容器?⭐IOC 是一种设计思想。 **IOC 容器是 Spring 用来实现 IOC 的载体, IOC 容器在某种程度上就是个Map(key,value),key是 name 属性,value 是对应的对象。**容器创建 Bean 对象, 使用依赖注入来管理对象之间的相互依
2021-05-21 08:52:43
238
原创 阻塞队列什么机制
什么是阻塞队列阻塞队列:从名字可以看出,他也是队列的一种,那么他肯定是一个先进先出(FIFO)的数据结构。与普通队列不同的是,他支持两个附加操作,即阻塞添加和阻塞删除方法。阻塞队列的特点阻塞添加:当阻塞队列是满时,往队列里添加元素的操作将被阻塞。阻塞移除:当阻塞队列是空时,从队列中获取元素/删除元素的操作将被阻塞。在多线程中,阻塞的意思是,在某些情况下会挂起线程,一旦条件成熟,被阻塞的线程就会被自动唤醒。阻塞队列不用手动控制什么时候该被阻塞,什么时候该被唤醒,简化了操作。根据插入和取出两种类型
2021-05-18 16:22:18
191
1
原创 Mysql面试题以及知识总结
MySQL架构逻辑架构图和执行流程:并发控制表级锁: MySQL中锁定 粒度最大 的一种锁,对当前操作的整张表加锁,实现简单,资源消耗也比较少,加锁快,不会出现死锁。其锁定粒度最大,触发锁冲突的概率最高,并发度最低,MyISAM和 InnoDB引擎都支持表级锁。行级锁: MySQL中锁定 粒度最小 的一种锁,只针对当前操作的行进行加锁。 行级锁能大大减少数据库操作的冲突。其加锁粒度最小,并发度高,但加锁的开销也最大,加锁慢,会出现死锁。事务原子性(Atomicity): 事务是最小的执行
2021-05-15 13:46:05
905
6
转载 JVM面试题
JVM 的主要组成部分及其作用类加载器(ClassLoader)运行时数据区(Runtime Data Area)执行引擎(Execution Engine)本地库接口(Native Interface)组件的作用: 首先通过类加载器(ClassLoader)会加载类文件到内存,Class loader只管加载,只要符合文件结构就加载。运行时数据区(Runtime Data Area)是jvm的重点,我们所有所写的程序都被加载到这里,之后才开始运行。而字节码文件只是 JVM 的一套指令集规范,
2021-05-15 13:39:13
144
原创 java集合容器面试题2021
一 概览容器的思维导图:CollectionListJava 的 List 是非常常用的数据类型。List 是有序的 Collection。Java List 一共三个实现类:分别是 ArrayList、Vector 和 LinkedList。ArrayList:ArrayList 是最常用的 List 实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能力,就要将已经有数组的数据复制到新的存储空间中。当从 Ar
2021-05-15 13:36:06
220
转载 Java基础面试题
Java基础面试题Java 语言有哪些特点/什么是Java?简单易学;面向对象(封装,继承,多态);平台无关性( Java 虚拟机实现平台无关性);GC实现垃圾回收;异常处理机制;支持多线程;支持网络编程并且很方便;编译与解释并存;面向对象和面向过程的区别面向过程 :面向过程性能比面向对象高。 因为类调用时需要实例化,开销比较大,比较消耗资源,所以当性能是最重要的考量因素的时候,比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发。但是,面向过程没有面向对象易维护、
2021-05-15 13:26:20
127
转载 创建线程有哪些方式以及线程池的七大参数
创建线程的四种方式1、继承Thread类创建线程类2、实现Runnable接口3、通过Callable和Future创建线程4、创建线程池创建线程的主要三种方式继承Thread类创建线程类 (extends) public class FirstThreadTest extends Thread{ int i = 0; //重写run方法,run方法的方法体就是现场执行体 public void run() { for(;
2021-05-14 11:01:12
425
原创 在浏览器中输入url,显示主页的过程
常见的面试题看图总体来说分为下面几个过程:DNS解析TCP连接发送HTTP请求服务器处理请求并返回HTTP报文浏览器解析渲染页面连接结束
2021-05-14 10:38:12
71
原创 Spring的核心,Ioc和aop
Spring是一个开源框架。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring的核心是控制反转(IoC)和面向切面(AOP)。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式)轻量级开源框架。1.I
2021-05-14 10:34:03
443
原创 synchronized和Lock有什么区别
在解决这个问题之前,先来看看技术点1、线程与进程:一个程序最少需要一个进程,而一个进程最少需要一个线程。关系是线程–>进程–>程序的大致组成结构。所以线程是程序执行流的最小单位,而进程是系统进行资源分配和调度的一个独立单位。2、Thread的几个重要方法:a、start()方法,调用该方法开始执行该线程;b、stop()方法,调用该方法强制结束该线程执行;c、join方法,调用该方法等待该线程结束。d、sleep()方法,调用该方法该线程进入等待。e、run()方法,调用该方法直
2021-05-14 10:25:24
93
原创 Redis和MYSQL的区别
redis和mysql的区别从类型上来说,mysql是关系型数据库,redis是缓存数据库mysql用于持久化的存储数据到硬盘,功能强大,但是速度较慢redis用于存储使用较为频繁的数据到缓存中,读取速度快mysql和redis因为需求的不同,一般都是配合使用。1.mysql和redis的数据库类型mysql是关系型数据库,主要用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。redis是NOSQL,即非关系型数据库,也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运
2021-05-14 08:56:28
183
原创 hashmap是否线程安全,如何解决的
ConcurrentHashMap的原理与结构Hash表的结构是数组加链表,就是一个数组中,每一个元素都是一个链表。在插入元素的时候,首先通过对传入的键(key),进行一个哈希函数的处理,来确定元素应该存放于数组中哪个一个元素的链表中。这种数据结构在实现HashMap的时候并不是线程安全的,因为在HashMap扩容的时候,是会将原先的链表迁移至新的链表数组中,在迁移过程中多线程情况下会有造成链表的死循环情况(JDK1.7之前的头插法);还有就是在多线程插入的时候也会造成链表中数据的覆盖导致数据丢失。所
2021-05-14 08:50:47
589
原创 小Q爬塔
public class 小Q爬塔{ public static void main(String[] args) { int[] p = new int[10005]; int[] t = new int[10005]; Scanner sc = new Scanner(System.in); int n = sc.nextInt(); for(int i = 1; i <= n; i ++) { int x = sc.nextInt(); p[i] = M
2020-09-07 15:54:22
128
原创 docker中配置挂载目录时容器启动不了
一般都是应为没有权限,很多次了,总结一下在docker run中加入 --privileged=true 给容器加上特定权限关闭selinux在selinux添加规则,修改挂载目录
2020-08-19 18:41:22
1535
转载 交互之springboot后端跨域问题
编写一个filter即可package com.yj.blog.filter;import org.springframework.stereotype.Component;import javax.servlet.*;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;@Componentpublic
2020-06-17 13:03:46
167
原创 css设置 ul 中 li 不能居左(轮播图的时候,轮播的小点总是不能对齐左边)
在一次写轮播图的时候,轮播的小点总是不能对齐左边,后来发现是这是由于不同浏览器的预设值引起的, 你用ie打开应该zd是没有这个问题的.Firefox或者Chrome等浏览器会给ul标记的padding-left设一个默认专值,为40px. 而ie的默认值为0。解决这个问题属只需要在ul的css里加上"padding-left:0;"就可以了,也可以加margin:0px;padding:0...
2020-05-04 22:39:58
515
原创 Expected one result (or null) to be returned by selectOne(), but found: 2
很多人都在说这个问题,但是很大一部分人错在了最简单的地方public List getall();在你写mapper的时候,看看你的返回值类型
2020-04-30 17:21:49
170
原创 idea中tomcat控制台乱码
找到tomcat安装目录:/Library/Java/apache-tomcat-9.0.8/conf编辑:logging.properties新增一行:java.util.logging.ConsoleHandler.encoding = UTF-8 (这里utf-8改成gbk。如果是gbk改成utf-8)很奇怪。但是有效。至于其他的idea设置我就不写了,网上都是,我就是这里的问题。...
2020-03-11 13:31:26
119
原创 idea在连接mysql数据库时区错误
第一种:直接cmd在mysql中运行set global time_zone = ‘+8:00’’;然后再次检测就好了第二种:直接修改驱动:简单粗暴
2020-02-06 01:46:20
682
原创 JAVA经典算法40题(5)
利用条件运算符的嵌套来完成此题:学习成绩> =90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。程序分析:这个题的话只要简单的判断语句也可以出来,不过符合题目的要求,使用条件运算符的嵌套进行即可;package test;import java.util.Scanner;public class Main { public static void m...
2020-01-10 12:40:23
199
原创 JAVA经典算法40题(3)
题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。package test;public class Main { public static void main(String[] args) { for(int i = 100; i <...
2020-01-04 17:41:18
110
原创 JAVA经典算法40题(2)
题目:判断101-200之间有多少个素数,并输出所有素数。package test;public class Main { public static void main(String[] args) { int sum = 0; math mymath = new math(); for(int i = 101; i <= 200; i ++) { if(...
2020-01-04 17:23:37
140
原创 JAVA经典算法40题(1)
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21…一、最无脑的办法。就是利用数组来模拟出兔子的规律即可package test;public class Main { public static void main(S...
2020-01-04 13:51:27
181
4
原创 蓝桥杯算法题第二套(一)
一、矩阵加法输入两个 n行 m 列的矩阵 A 和 B,输出它们的和 A+B。输入格式第一行包含两个整数 n 和 m,表示矩阵的行数和列数。1 ≤n ≤ 100, 1≤m≤100。接下来 n 行,每行 m 个整数,表示矩阵 A 的元素。接下来 n 行,每行 m 个整数,表示矩阵 B 的元素。相邻两个整数之间用单个空格隔开,每个元素均在 11 ~ 10001000 之间。输出格式n ...
2019-12-20 12:26:00
904
原创 servlet基础知识总结
1:servlet就是一个特殊的java类,继承HttpServlet类,通过实现doGet()和doPost()方法来完成。2:Servlet的配置在web.xml 中 neme,class3:servlet的声明周期(1)客户端第一次请求时创建servlet实例。(2)web容器调用init()方法,进行初始化。(3)通过doGet()或者doPost()方法响应(4)web容器通...
2019-12-01 20:08:59
279
原创 java运算符
位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。1.与运算符(&)两个操作数中位都为1,结果才为1,否则结果为0,例如:101010110010结果为:1000102.或运算符(|)两个位只要有一个为1,那么结果就是1,否则就为0,例如:10101101000101结果为:10101113.非运算符(~)如果位为0,结果是1,如果位为1,结果...
2019-12-01 18:40:18
676
原创 web开发基础
HTTP版本1.0:连接属于非持久连接,一次tcp连接只能进行一次请求与响应一次请求与响应对应一个TCP连接客户端只有在接收到服务端对上一次请求响应后,客户端才可发出第二次请求不支持虚拟主机的访问在客户端响应接收到马上关闭1.1:连接属于持久连接,在一个TCP连接上可以传送多个请求和响应一般情况下,一个页面中的请求与响应对应一个TCP连接还允许不用等待上一次请求结果返回,就可以发出...
2019-10-29 21:34:41
189
原创 JS BOM编程
BOM编程-open和close<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>BOM编程-open和close</title> </head> <body> <script type="text/java...
2019-10-25 19:11:15
165
原创 JS DOM编程
获取文本框<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>DOM编程-获取文本框的value</title> </head> <body> <script type="text/javascript">...
2019-10-25 19:09:26
342
原创 关于JS代码的执行顺序以及其他问题
关于代码的执行顺序<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>关于代码的执行顺序</title> </head> <!-- load事件什么时候发生?页面全部元素加载完毕之后才会发生 --> <body ...
2019-10-20 20:16:49
233
原创 JS的常用事件
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>JS的常用事件</title> </head> <body> <script type="text/javascript"> /* JS中的事...
2019-10-20 20:09:09
266
原创 关于JS的数据类型
关于JS的数据类型<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>关于JS的数据类型</title> </head> <body> <script type="text/javascript"> ...
2019-10-15 10:16:00
145
1
原创 JS函数初步
JS函数的初步<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>JS函数初步</title> </head> <body> <script type="text/javascript"> /* ...
2019-10-14 19:37:12
155
原创 关于JS中的环境变量
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>关于JS中的环境变量</title> </head> <body> <script type="text/javascript"> /* J...
2019-10-14 19:31:51
1569
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人