自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(120)
  • 问答 (1)
  • 收藏
  • 关注

原创 面试题16

Oracle使用行级锁,对资源锁定的粒度要小很多,只是锁定sql需要的资源,并且加锁是在数据库中的数据行上,不依赖于索引,所以Oracle对并发性的支持要好很多。而Oracle有多重成熟命令行,图形界面,web管理工具,还有很多第三方的管理工具,管理及其方便高效,Oracle支持高并发,大访问量,是OLTP最好的工具。:int,float,double等数值型,varchar,char字符型,date,datetime,time,year,timestamp等日期型。默认是自动提交,可以修改为手动提交;

2023-06-06 14:58:48 227

原创 面试题15

很多开发者工具都来自于Chromium的开源代码或技术:前端们熟悉的React Native Debugger、Vue Debugger(Chrome插件)、Atom、Visual Studio Code、ndb(Node.js调试工具),Chrome/Chromium已经不再是一个单纯的浏览器项目了,它已经形成了一个生态系统,这一点足够让我兴奋。· 完善的账号体系:只要在一台设备上登录Google账号,所有的书签、搜索记录、密码等重要内容,都能完全同步到登录的其他设备上,非常方便;

2023-06-06 14:58:12 264

原创 面试题14

面向对象编程是将构成问题的事务分解成若干个对象,建立对象的目的不是为了步骤,而是为了描述某个事务在解决问题过程中的行为。面向对象有三大特征,封装,继承和多态。与人类思维一致,能够信息隐藏,提高了程序的可重用性,可维护性和安全性。面向切面最好的实现是AOP,通过预编译的方式和运行期间动态代理实现功能的维护,对业务逻辑的各个部分进行隔离,使业务逻辑耦合度降低,提高了程序的可重用性,同时也提高了开发效率。直接访问地址/logout,就可以直接进入Shiro的退出机制。什么是面向切面编程?过滤链的验证方式有哪些?

2023-06-06 14:57:09 220

原创 面试题13

授权则是发生在系统完成认证之后,最终会授予你访问资源的完成权限,授权是确定经过身份验证的用户是否可以访问特定资源的过程,来验证你是否有权授予你访问信息的权限。该方法需要的参数是PrincipalCollection对象,这个对象表示通过认证后的登录主体,这个方法作用就是要给这个登录的主体授权,返回一个授权后的主体simpleAuthorizationInfo。是一个强大且易用的Java安全框架,执行身份验证,授权,加密和会话管理,使用Shiro的易于理解的API,可以快速,轻松地获得任何应用程序。

2023-06-06 14:54:55 192

原创 面试题11

该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。SpringBoot是Spring和SpringMVC的整合升级体,利用注解来完成Spring和SpringMVC的大部分配置,省略了大量配置文件代码。POM是项目对象模型(Project Object Model)的简称,定义项目的基本信息,主要用于管理:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的依赖关系等等。是由Pivotal团队提供的全新框架,其设计目的是用来简化新。

2023-06-06 14:54:24 63

原创 面试题12

约定大于配置就是一种开发原则,就是为了减少人为的配置,能使用默认配置就使用默认配置,默认配置其实就是所谓的“约定”。当存在特殊需求的时候,我们在自行自定义配置覆盖掉默认配置即可,这样就可以大大的减少配置工作,提高我们的工作效率。加载配置文件,读取端口号,建立JDBC连接,读取到dao层的Mapper配置文件等其他配置。层之后的service,Controller正常走Spring加载流程。自动装配dao层,Controller自动装配service层;默认可以识别JSP文件吗?默认不可以识别JSP文件。

2023-06-06 14:53:55 61

原创 Java面试题10

Maven , 用于Java项目的构建 , 依赖管理 , 项目信息管理的项目管理工具.是Apache组织旗下的开源项目.它的核心功能是一个具有跨平台特性的构建工具 , 帮助我们自动化构建 , 并提供一个完整的优化的构建生命周期模型 , 和构建任务所需的基础组件/插件.它还是一个依赖管理工具和项目信息管理工具 , 方便开发人员更好的管理依赖与避免项目信息混乱等问题.除此之外还提供了一套标准的约定规则 , 减轻不同项目的差异性.一方面提供了可以拿来就用的工具,更重要的是,提供了可重用的设计。

2023-05-18 13:43:35 91

原创 Java面试题9

视图解析器是用来接收经过处理器适配器调用具体的controller后生成的逻辑视图的,它接受 DispatcherServlet传过来的ModelAndView,然后将ModelAndView数据填充到相应的视图中,然后返回一个带有数据的视图再传给DispatcherServlet.是存储和交换文本信息的语法,类似 XML,比 XML 更小、更快,更易解析,将Java对象转换为特殊格式的字符串(JSON串),主要用于与前端页面的交互。解析返回值,匹配默认的视图解析器,拼接成一个跳转的URI(默认转发)

2023-05-17 17:34:34 77

原创 Java面试题8

不能,new对象与Spring管理的对象没有关联,new对象并没有spring参与管理,它的属性不存在依赖注入,它的属性要手动实例化。Spring管理的对象与它的属性存在依赖关系。创建子类对象必须先创建父类对象,在一个对象被创建过程中,实例变量(对象私有变量)通常被赋值了三次。将返回值装到Map集合,Map集合中定义了翻译规则,把数据库的标准命名改为Java的标准命名。为代码解耦,降低代码间的耦合度,就是让对象和对象之间关系不是使用代码关联,而是通过配置来说明。控制反转和面向切面,依赖注入。

2023-05-17 17:33:02 77

原创 Java面试题9

第一步:编写一个注解实现的增强类,在使用注解时,为了增强减少代码冗余,可以创建一个方法来替代execution表达式。第三步:在Spring的文件中注册,实现AOP切入实现,注意导入约束。第二步:在Spring配置文件中,注册bean,并增加支持注解的配置。代理:一个类被AOP织入增强后,就产生一个结果代理类。编织:把增强应用到目标对象来创建新的代理对象的过程。切入点:目标类+额外功能=代理类;增强:目标类+额外功能=代理类;什么是代理,增强,切入点,编织?第一步:编写业务接口和实现类。

2023-05-17 17:32:59 53

原创 Java面试题7

即Object-Relational Mapping(对象映射关系),他的作用是在关系型数据库和业务实体对象之间作一个映射,这样,我们在具体的操作业务对象的时候,就不需要再去和复杂的SQL语句打交道,只需简单的操作对象的属性和方法。动态SQL就是根据不同的条件生成不同的sql语句。所谓的动态sql,本质还是sql语句,只是我们在sql层面,去执行一个逻辑代码。动态sql就是拼接sql语句,我们只有保证sql正确性,按照sql的格式,去排列组合就可以了。文件的SQL组的返回值有几种?

2023-05-17 17:31:17 72

原创 Java面试题6

是一个Spring的作用于后台的Web层的组件框架,主要用于接收请求、响应数据等操作,其底层是servlet,SpringMVC是对Servlet更深层次的封装,换成controller层,通过内置对象,方法参数收集或方法对象收集来进行参数收集,通过转发和重定向两种跳转方式来跳转页面。1.转发:携带参数,地址栏不变,服务器内跳转,共用一个request,可以在request作用域中存储数据,只能跳转到当前项目下,一次请求,只保留第一个地址。角色功能,跳转方式,收参。链接跳转,表单跳转:携带参数。

2023-05-17 17:30:31 73

原创 Java面试题5

3.HttpServletRequest: 每次只要有请求进入服务器,服务器就会把请求过来的HTTP协议信息解析好封装好Request对象中,传递到service方法中给我们使用,获取到请求的信息。3.:为了解决的局限性,我们有了,相当于全局变量,哪个方法里都可以取值。2.:是给servlet的init()方法传递需要的信息的,这些值都会被封装成ServletConfig对象。

2023-05-17 17:29:25 67

原创 Java面试题4

JSP全称是Java Server Pages,是服务器页面,是一种动态的网页开发技术,通过使用JSP标签在html中插入Java代码,JSP在进行编译执行之后,把生成的页面返回客户端,需要用tomcat解析,JSP文件的技术基础是Servlet。Jstl出现的目的是同EL一样也是要代替jsp页面中的脚本代码。EL表达式的全称是 Expression Language,是表达式语言,主要是代替jsp页面中的表达式脚本在jsp页面中进行数据的输出。什么是EL表达式,JSTL表单式?常用的应用服务器有哪些?

2023-05-17 17:28:55 79

原创 Java面试题3

双标签:、、、、、、、JavaScript是网页编程语言,而jQuery是一个基于JavaScript编写的框架,实际上还是JavaScript而已。根据键返回相关联的值,如果不存在指定的键,返回null。如果存在由指定的键映射的“键-值对”,返回true。1. 什么是Map?删除由指定的键映射的“键-值对”。以“键-值对”的方式进行存储。

2023-05-17 17:28:15 71

原创 Java面试题2

数组,是有序的元素序列,用于储存多个相同类型数据的集合,数组是在程序设计中,为了处理方便,把具有相同类型的若干元素按无序的形式组织起来的一种形式。这些无序排列的同类数据元素的集合称为数组。方法覆盖又称重写,在Java中,是子类可继承父类中的方法,而不需要编写相同的方法。重载:在Java中,有函数或者方法有相同的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或方法之间,互相称之为重载函数或方法。数组名,起始下标,结尾下标,替换的数字为):将数组选定的范围的数据替换。接口存储一组无序,不重复的对象。

2023-05-17 17:25:40 67

原创 Java面试题1

当使用双引号创建一个String时,他首先在String池中查找相同值的String,如果存在那么只是返回引用,否则他在池中创建一个新的String,然后返回引用。面向对象是将构成问题的事务分解成若干个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在解决问题过程中的行为。对象是系统中用来描述客观事实事物的一个实体,它是构成系统的一个基本单位,由一组属性和一组行为构成。类和对象之间的关系是抽象和具体的关系,类是对多个对象进行抽象的结果,对象是类的具体实现。5. 什么是类,什么是对象?

2023-05-17 17:24:20 78

原创 Redis

redis是C语言开发的一个开源高性能键值对的内存数据库,可以用来做数据库、缓存、消息中间件等场景,是一种NoSQl的 数据库。1.优秀的性能,数据存储在内存中,读写速度非常快,并支持并发10W QPS。删除文件dump.rdb 清空当前数据库(硬盘)2.单线程但进程,是线程安全的,采用IO多路复制。6.可以作为消息中间件使用,支持消息发布及订阅。判断key是否存在,存在返回1,不存在返回0。保存当前数据库 持久化技术。5.支持数据持久化到磁盘。清空当前数据库(缓存)查看key值指定类型。

2023-04-16 15:03:41 69

原创 关系型数据库和非关系型数据库的区别

而NoSQL数据库是横向扩展的,非关系型数据存储天然就是分布式的,NoSQL数据库的扩展可以通过给资源池添加更多普通的数据库服务器(节点)来分担负载。关系型和非关系型数据库的主要差异是数据存储的方式。非关系型数据库一般强调的是数据最终一致性,而没有像ACID一样强调数据的强一致性,从非关系型数据库中读到的有可能还是处于一个中间态的数据,因此如果业务对于数据的一致性要求很高,那么非关系型数据库并不是一个很好的选择,非关系型数据库更多的偏于OLAP场景,而关系型数据库更多偏向于OLTP场景。

2023-04-16 14:53:06 405

原创 MySQL和Oracle的区别

Oracle使用行级锁,对资源锁定的粒度要小很多,只是锁定sql需要的资源,并且加锁是在数据库中的数据行上,不依赖于索引,所以Oracle对并发性的支持要好很多。而Oracle有多重成熟命令行,图形界面,web管理工具,还有很多第三方的管理工具,管理及其方便高效,Oracle支持高并发,大访问量,是OLTP最好的工具。MySQL:int,float,double等数值型,varchar,char字符型,date,datetime,time,year,timestamp等日期型。MySQL开源是免费的;

2023-04-16 14:49:37 240

原创 蓝桥杯-立方尾不变,有些数字的立方的末尾正好是该数字本身

一些数字的立方的末尾正好是数字本身。比如:1,4,5,6,9,24,25,.....;请你计算一下,在10的4次方以内的数字中(指该数字,并非他立方后的数值),符合这个特征的正整数一共有多少个。已知循环次数,用for循环。可以将数字和数字的立方转成字符串。判断字符串str是否以字符串str2结尾。

2023-04-05 17:46:54 619

原创 蓝桥杯-求和

小明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到 40 中这样的数包 括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574。请问,在 1 到 2019 中,所有这样的数的和是多少?思路1:获取1-2019每个数字的千位(不为0)、百位、十位、个位,将每个数字和0、2、1、9这四个数字进行比较。本题的结果为一 个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。思路2:将数字转成字符串,获取每一位的数字,将每一个数字与0、2、1、9这四个数字进行比较。

2023-04-05 16:55:18 56

原创 蓝桥杯-天干地支

天干一共有十个,分别为:甲(jiǎ)、乙(yǐ)、丙(bǐng)、丁(dīng)、戊 (wù)、己(jǐ)、庚(gēng)、辛(xīn)、壬(rén)、癸(guǐ)。地支一共有十二个,分别为:子(zǐ)、丑(chǒu)、寅(yín)、卯(mǎo)、 辰(chén)、巳(sì)、午(wǔ)、未(wèi)、申(shēn)、酉(yǒu)、戌(xū)、 亥(hài)。每过一年,天干和地支都会移动到下一个。输出一个拼音,表示天干地支的年份,天干和地支都用小写拼音表示(不 表示声调),之间不要加入任何多余的字符。

2023-04-05 16:04:48 68

原创 蓝桥杯-合约个数

一个数如果除了 1 和自己还有其他约数,则称为一个合数。例如:1, 2, 3 不是合数,4, 6 是合数。请问从 1 到 2020 一共有多少个合数。这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一 个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

2023-04-04 22:17:42 49

原创 蓝桥杯-美丽的2

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一 个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。他很好奇,在公元1到2020年(包含)中,有多少个年份的数位中包含数字2?通过String.valueOf转换成字符串,然后比较2;小蓝特别喜欢2,今年是公元2020年,她特别高兴。

2023-04-04 22:15:42 66

原创 蓝桥杯-纸张尺寸

在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm ×× 841mm, 将 A0 纸 沿长边对折后为 A1 纸, 大小为 841mm ×× 594mm, 在对折的过程中长度直接取 下整 (实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸, 依此类推。输入一行包含一个字符串表示纸张的名称, 该名称一定是 A0、A1、A2、 A3、A4、A5、A6、A7、A8、A9 之一。输出两行,每行包含一个整数,依次表示长边和短边的长度。输入纸张的名称, 请输出纸张的大小。

2023-03-28 22:44:07 122 1

原创 蓝桥杯-顺子日期

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。小明特别喜欢顺子。顺子指的就是连续的三个数字:123、456 等。顺子日期指的就是在日期的 yyyymmdd 表示法中,存在任意连续的三位数是一个顺子的日期。例如 20220123 就是一个顺子日期,因为它出现了一个顺子:123; 而 20221023 则不是一个顺子日期,它一个顺子也没有。小明想知道在整个 2022 年份中,一共有多少个顺子日期?代码分析20220120202201212022012220220123202201242

2023-03-28 22:24:18 47

原创 蓝桥杯-修建灌木

有 N 棵灌木整齐的从左到右排成一排。爱丽丝在每天傍晩会修剪一棵灌 木, 让灌木的高度变为 0 厘米。爱丽丝修剪灌木的顺序是从最左侧的灌木开始, 每天向右修剪一棵灌木。当修剪了最右侧的灌木后, 她会调转方向, 下一天开 始向左修剪灌木。直到修剪了最左的灌木后再次调转方向。灌木每天从早上到傍晩会长高 1 厘米, 而其余时间不会长高。在第一天的 早晨, 所有灌木的高度都是 0 厘米。输出 N 行, 每行一个整数, 第 i 行表示从左到右第 i 棵树最高能长到多高。爱丽丝要完成一项修剪灌木的工作。

2023-03-28 21:56:29 65

原创 蓝桥杯-刷题统计

小明决定从下周一开始努力刷题准备蓝桥杯竞赛。他计划周一至周五每天 做 a 道题目, 周六和周日每天做 b 道题目。请你帮小明计算, 按照计划他将在 第几天实现做题数大于等于 n 题?对于 100%100% 的评测用例, 1≤10181≤a,b,n≤1018.对于 50%50% 的评测用例, 1≤1061≤a,b,n≤106.输入一行包含三个整数 a,b 和 n.输出一个整数代表天数。

2023-03-26 19:13:06 127

原创 蓝桥杯-排列字母

又如,GOODGOODSTUDYDAYDAYUP 排列后为 AADDDDDGGOOOOPSTUUYYY。其实根据ABCD字母表的排列顺序一个个的排列就可以出来了。小蓝要把一个字符串中的字母按其在字母表中的顺序排列。例如,LANQIAO 排列后为 AAILNOQ。请问对于以下字符串,排列之后字符串是什么?

2023-03-26 18:14:36 63

原创 蓝桥杯-求和

对于所有评测用例, 1≤n≤200000,1≤ai​≤1000。输出一个整数 S,表示所求的和。请使用合适的数据类型进行运算。对于 30% 的数据,≤n≤1000,1≤ai​≤100。第二行包含 n 个整数a1​,a2​,⋯,an​。输入的第一行包含一个整数 n。

2023-03-26 17:52:24 217

原创 蓝桥杯-裁纸刀

在上面的例子中,小蓝的打印机没办法打印到边缘,所以边缘至少要裁 4 次。另外,小蓝每次只能裁一张纸,不能重叠或者拼起来裁。如果小蓝要用一张纸打印出 20 行 22 列共 440 个二维码,他至少需要裁多少次?小蓝用一张纸打印出两行三列共 6 个二维码,至少使用九次裁出来,下图给出了一种裁法。小蓝有一个裁纸刀,每次可以将一张纸沿一条直线裁成两半。由此看出 裁多少次是由多少个二维码加3;

2023-03-26 17:27:01 366

原创 九进制转十进制

九进制正整数 (2022)9(2022)9​ 转换成十进制等于多少?把九进制转成十进制需要乘以几次方。

2023-03-26 17:15:23 143

原创 Shiro1

主体,代表了当前 “用户”,这个用户不一定是一个具体的人,与当前应用交互的任何东西都是 Subject,如网络爬虫,机器人等;和Spring Security最大的区别是Shiro是一个独立的模块,使用灵活,但会造成侵入式的设计;是 Java 的一个安全框架。目前,使用 Apache Shiro 的人越来越多,因为它相当简单,对比 Spring Security,可能没有 Spring Security 做的功能强大,但是在实际工作时可能并不需要那么复杂的东西,所以使用小而简单的 Shiro 就足够了。

2023-03-15 18:14:57 53

原创 MD5密码加密

很多人使用的密码是常见的组合,攻击者将这些密码的常见组合进行单向哈希,得到一个摘要组合,然后与数据库中的摘要进行比对即可获得对应的密码。数字签名,数字签名是只有信息的发送者才能产生的别人无法伪造的一段字符串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。,防止抵赖,一旦用户的文件被第三方MD5加 密,如果以后甲方说这个文件不是他写的,那么当用文件MD5后获得的签名一致,就可以确认;(1)因为用户习惯用容易记住的密码,比如手机号、生日,不法分子容易获取这类密码,这也就是要加盐的原因。

2023-03-15 18:12:41 1821

原创 MyBatis-Plus开启AR功能

ServiceImpl隶属于com.baomidou.mybatisplus.extension.service.impl.ServiceImpl。1. 实体类和Dao层,Service和ServiceImpl层 开启AR后,可以使用MP的内置方法,减少了SQL代码的重复书写。用类和方法来实现SQL功能,由于类和方法的局限性,复杂SQL需求,还是需求原始的SQL来完成。3. MyBatis-Plus不是为了取代MyBatis,是在其基础上做的功能升级,但无法替代,他们双生的魂斗罗。

2023-03-15 17:55:21 187

原创 MyBatis-Plus

MyBatis-Plus(简称MP)是一个 MyBatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。MP会内置集成部分SQL方法,可以直接使用,而不用一个SQL需求对应一个Mapper下的一个SQL条目。1. pom.xml 引入Mybatis-Plus的jar坐标,覆盖Spring-MyBatis。使用类,对象,方法来替代SQL标签,不用再书写SQL语句。底层依然是封装JDBC。2.修改application.yml配置文件。另一个数据持久成框架,

2023-03-15 17:14:43 59

原创 Excel工具类--上传

4. 实体类特殊字段添加读取转换器。

2023-03-15 17:09:37 53

原创 Excel工具类--下载

大写的报错:com.github.crab2died.exceptions.Excel4JException: java.beans.IntrospectionException: Can not get the getter or setter method。特殊字段处理,需求书写写入转换器类,实现ExcelUtils的WriteConvertible。2.实体类的属性名一定要检查,有些情况下属性名开头大写的话也会报以上错误。是额外提供的工具类,来处理不同浏览器下的乱码问题。实体类字段标注转换器类。

2023-03-15 17:04:39 87

原创 Quartz

由于 @Component 注解的存在,声明支持Spring的注解驱动查找,所以SpringBoot启动时,可以找到该类,并同时加载该任务计划。任务计划器,利用cron表达式实现定时任务执行。1.环境在SpringBoot中;4.正常启动SpringBoot。秒 分 时 日 月 星期 年。3.书写Quartz任务表。在线cron表达式生成。

2023-03-15 16:57:19 55

空空如也

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

TA关注的人

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