自定义博客皮肤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)
  • 收藏
  • 关注

原创 什么是RestFul风格?

URI:每一个URI(统一资源定位符)指向一个特定的资源。Restful风格最大的特点为:资源、统一接口、URI和无状态。所有的资源,都可以通过URI定位,而且这个定位与其他资源无关。资源:互联网所有的事务都可以被抽象为资源,例如:.txt .html .jpg .mp3 .mp4等。Restful风格指的是网络应用中就是资源定位和资源操作的风格。PATCH(UPDATE):在服务器更新资源(客户端提供需要修改的资源数据)。PUT(UPDATE):在服务器更新资源(客户端提供完整资源数据)。

2023-06-06 15:15:18 143

原创 什么是关系型数据库?什么是非关系型数据库?

相较于关系型数据库,非关系型数据库更加灵活,没有固定的数据模型和结构,可以根据需要扩展数据类型。由于非关系型数据库的强调数据扁平化和冗余,因此通常适用于复杂和非结构化的数据存储场景,如海量用户产生的日志信息、社交网络的朋友圈数据等。每个表格中的数据可以通过一个独特的键与其他表格中的数据相连接,这样的连接就称为外键。关系型数据库(RDBMS)是指数据以表格的形式存储,其中数据以行和列的形式组织并通过预定义的关系进行连接。关系型数据库和非关系型数据库是两种不同的数据库类别。

2023-06-06 15:12:14 298

原创 表关联有哪些方式?

通常使用 INNER JOIN 和 OUTER JOIN 进行表关联,而 SELF JOIN 和 CROSS JOIN 的使用场景相对较少。在进行表关联时需要注意,选择正确的连接方式和连接条件非常重要,可以有效地避免数据混乱和结果错误的问题。同时还需要注意表的大小和索引的使用,可以提高查询的效率和性能。OUTER JOIN:外连接,包括左外连接、右外连接和全外连接。CROSS JOIN:交叉连接,它将左侧表的每一行与右侧表的每一行组合为一个完整的集合,产生所有可能的组合。

2023-06-06 15:11:44 1029

原创 MySQL和Oracle的对比?

比如,如果你需要高度安全和稳定性,以及复杂的企业级和大型数据库部署,Oracle可能更适合。而如果你需要简洁的解决方案,并追求成本效益和易用性,那么MySQL可能是更好的选择。性能和扩展性:由于MySQL的精简设计和管理方式,所以其性能通常比Oracle更高,尤其在读取和写入方面。MySQL的扩展性也相对较好,因为其社区活跃,有许多插件和工具可供选择和使用。特性功能:Oracle具有更多的高端特性功能,例如分布式事务、灾难恢复等,而MySQL则更着重于简单易用和性能优化。

2023-06-06 15:11:14 588

原创 为什么开发行业首推Google浏览器来开发?

1、开发工具 Chrome 提供了强大而丰富的开发工具,包括控制台、调试器、分析器和性能监控等,这些工具可帮助开发人员更轻松地排查问题、分析代码和测试应用程序。综上所述,Chrome 浏览器在开发行业被广泛认可并被首推,主要是因为它拥有强大而全面的开发工具、稳定的 Web 标准支持、高市场占有率以及丰富的社区生态系统。5、社区生态 Chrome 浏览器拥有庞大的社区生态系统,包括插件和扩展程序,开发人员可以使用这些工具来扩展其功能。

2023-06-06 15:10:42 272

原创 什么是约定大于配置

反之,可以配置来达到所期待的方式。SpringBoot的约定大于配置,按我的理解是:对比SpringMVC,需要在web.xml里面配置前端控制器,还需要在核心配置文件(*-servlet.xml)中配置视图解析器啥的,更要配置第三方的Tomcat服务器。一句话总结来说,约定大于配置就是一种开发原则,就是为了减少人为的配置,能使用默认配置就使用默认配置,默认配置其实就是所谓的“约定”。当存在特殊需求的时候,我们再自行自定义配置覆盖掉默认配置即可,这样就可以大大的减少配置工作,提高我们的工作效率。

2023-06-06 15:09:39 1805

原创 什么是SpringBoot 框架?

基于这一设计原则,Spring Boot 极大地简化了项目和框架的配置。Spring Boot集成了绝大部分目前流行的开发框架,就像Maven集成了所有的JAR包一样,Spring Boot集成了几乎所有的框架,使得开发者能快速搭建Spring项目。Spring Boot 建立在 Spring 基础之上,遵循“约定优于配置”的原则,避免了创建项目或框架时必须做的繁杂配置,帮助开发者以最少的工作量,更加简单、方便地使用现有 Spring 中的所有功能组件。Spring Boot 可以构建一切。

2023-05-18 21:09:33 68

原创 SpringBoot 的工作流程?

3.加载配置文件,读取端口号,建立JDBC连接,读取到dao层的Mapper配置文件等其 他配置。5.Service自动装配记录dao层;Controller自动装配记录Service层。1.手动运行启动类BootApplication.java,同时启动内置tomcat。4.dao层之后的Service,Controller正常走Spring加载流程。2.注解@MapperScan(“com.xly.dao”)读取到dao层。6.Controller连接到前端资源,完成页面展示。

2023-05-18 21:09:12 40

原创 面向切面编程

AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。AOP思想是OOP(面向对象)的延续 在 OOP 中, 我们以类(class)作为我们的基本单元, 而 AOP 中的基本单元是 Aspect(切面),AOP是软件行业的热点,也是Spring框架中的一个重要内容,是函数式编程的一种延伸范式。

2023-05-18 21:08:47 32

原创 Ajax可以接收不是JSON串的数据类型吗

它基于 ECMAScript的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。Ajax 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术。使用Ajax技术网页应用能够快速地将增量更新呈现在用户界面上,而不需要重载(刷新)整个页面,这使得程序能够更快地回应用户的操作。

2023-05-18 21:06:28 86

原创 SSM和SpringBoot框架对比?

Spring用来管理Bean、SpringMVC是基于Spring的MVC框架、MyBatis是轻量级的持久层框架。而Spring Boot是由Spring官方推出基于Spring的开发框架,这个框架里包含很多的子产品(Spring子产品如Spring、SpringMVC、Spring-Data-Jpa及其它第三方的产品),而且还提供了内置的Tomcat。首先来说,Spring Boot 和 SSM 都是Java体系的一款开发框架,两者在Java Web开发环境中是当下最火热的框架,这两者其实有很多关联。

2023-05-18 21:06:22 463

原创 创建对象的过程

创建子类对象必须先创建父类对象,在一个对象被创建过程中,实例变量(对象私有变量)4、调用本类中的构造方法,实例变量可以在这里第三次赋值。2、递归的构造父类对象,所有实例变量被赋予默认值。3、本类属性初始化,所有实例变量被赋予初始值。1、为父类和子类分配内存空间。

2023-05-17 18:51:53 31

原创 面向切面编程

AOP为AspectOrientedProgramming的缩写,意为:面向切面编程,通过预编译方式和运行。AOP中的基本单元是Aspect(切面),AOP是软件行业的热点,也是Spring框架中的一个重。AOP思想是OOP(面向对象)的延续在OOP中,我们以类(class)作为我们的基本单元,而。一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。AOP是OOP的延续,是软件开发中的。可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程。

2023-05-17 18:51:24 28

原创 什么是pom文件

Maven是以项目为中心的设计。POM(projectobjectmodel)是Maven对一个单一项目的描。没有POM的话,Maven是毫无用处的——POM是Maven的核心。源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的。聚合:聚合和关联多个项目中相同的配置,在被聚合项目中定义其子模块。继承:子项目继承父项目的pom.xml,在子项目中定义父项目。POM之间的关系,继承、聚合与依赖。动了这种以模型来描述的构建方式。url、项目的依赖关系等等。

2023-05-17 18:51:22 49

原创 什么是Maven

ManagementSystem),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻。Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项。找pom.xml文件,再通过pom.xml文件中的坐标,到一个专门用于”存放jar包的仓。jar包的坐标,这样就很好的避免了jar直接引入进来,在需要用到jar包的时候,只要查。一键构建指的是整个构建过程,使用maven一个命令可以轻松完成整个工作。maven进行管理,这个过程称为构建。

2023-05-17 18:50:19 43

原创 常用的密码加密方法

对称加密算法中常用的算法有:DES、3DES、TDEA、Blowfish、RC2、RC4、对称加密的优缺点:优点是算法公开、计算量小、加密速度快、加密效率高,安全、可认证;采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法。非对称加密算法是一种密钥的保密方法,它需要两个密钥来进行加密和解密,这两个密钥是。非对称加密的优缺点:优点是安全性更高,公钥是公开的,秘钥是自己保存的,不需要将私。上的普通的物理签名,但是在使用了公钥加密领域的技术来实现的,用于鉴别数字信息的方。

2023-05-17 18:49:15 331

原创 框架的设计含义

在软件工程中,框架被定义为整个或部分系统的可重用设计,表现为一组抽象构件及构件实。一个框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件。之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它。框架提供了所有应用期望的默认行为的类集合。通俗的说,框架是完成是某种应用的半成品,提供了一些常用的工具类和一些基础通用化的。组件,可以供开发人员在此基础上,更便捷的完成各自特有的系统。具体的应用通过重写子类或组装对象来支持应用专用的行为。简化开发、通用功能封装。

2023-05-17 18:48:47 50

原创 SpringMVC的工作流程?

DispatcherServlet接收到这个请求之后,根据http请求以及HandlerMapping中的配置找到。找到处理请求的处理器Handler之后,此时的请求处理权就交给了Handler,然后Handler。的请求映射路径(在web.xml文件中配置,后面专门有web.xml文件配置解析),web容器。将具体的处理进行封装,再由具体的处理器适配器(HandlerAdapter)进行具体的调用(也。ModelAndView对象是一个逻辑视图,并不是正式的视图。处理请求的处理器Handler。

2023-05-17 18:47:24 70

原创 Spring的主要功能有哪些?

四个功能:IOC(控制反转)/DI(依赖注入),AOP(面向切面编程),jdbcTemplate(Spring。Aop的实现:它的实现是基于java的动态代理,java的动态代理有两种实现方式,cglib和。3.什么是依赖注入,依赖注入其实是IOC的另一个名字,和IOC是同一个概念,但是是从。注入应用程序的某个对象,注入了什么:注入某个对象所需要的外部资源(常见的就是对象)在一起的功能分开,主要的功能就是再不改变源码的基础上,动态的增强方法的功能,目的。比如日志(的输入),(启动数据库)事务,对数据。

2023-05-17 18:46:55 118

原创 Log日志功能等级?

总共有8等级:OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALL。2.FATAL为可能导致应用中止的严重事件错误。4.WARN为一般警告,比如session丢失。7.TRACE为比DEBUG更细粒度的事件信息。5.INFO为一般要显示的信息,比如登录登出。8.ALL为最低等级,将打开所有级别的日志。3.ERROR为严重错误主要是程序的错误。1.OFF为最高等级关闭了日志信息。6.DEBUG为程序的调试信息。

2023-05-17 18:45:57 661

原创 页面跳转的方式有哪些?各有什么特点?

(2)可以跨页面传值。例如:跳转之前的.jsp中request.setAttribute("msg","用户名或密码错误。引起的问题:因为跳转后地址栏不变,还是跳转前的地址,刷新时刷新的。还是跳转前的页面,在对表单进行提交时会出现表单的重复提交,会出现很大的问题。跳转之后的.jsp中request.getAttribute("msg");转发(request.getRequestDispatcher)(2)不可以跨页面传值。(1)地址栏改变,不会引起表单重复提交的问题。3.链接链接地址的访问方式。

2023-05-17 18:45:19 698

原创 什么是JSP?

另外,可以创建JSP标签库,然后像使用标准HTML或XML标签一样使用它们。JSP编译器可以把JSP文件编译成用Java代码写的Servlet,然后再由Java编译器来编译成能快速执行的二进制机器码,也可以直接编译成二进制码。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。

2023-04-12 22:01:18 93

原创 JavaScript和jQuery的各自三种标签选取方式?

如$("input:checked")选取input类型的已经选择的元素。此项可以修改元素的css属性。如$("p")选取p元素。

2023-04-12 22:00:28 21

原创 常用的应用服务器有哪些?

Undertow的架构是组合式的,可以通过组合各种小型的目的单一的处理程序来构建Web服务器。JRun:是由Allaire公司开发的JAVA服务器软件,它支持JSP1.1、Servlet2.2规范,目前最新的版本是JRun4,但是它的下载是要付费,它是Micromedia的一个应用服务器,它基于Sun公司的Java2平台企业版(J2EE)。glassfish是Oracle 开发的官方Java EE容器,,也是同时支持Servlet和EJB,支持最新的特性,有自己的web容器,支持集群,支持热部署。

2023-04-12 21:59:13 91

原创 JavaScript和jQuery的关系?

javaScript是用于Web客户端开发的脚本语言,Ajax是基于JS语言,主要组合JS、CSS、XML三种技术的新技术,是用于创建交互式网页应用的网页开发技术。jQuery是JS的框架,基于JS语言,集合Ajax技术开发出来的JS库,封装JS和Ajax的功能,提供函数接口,大大简化了Ajax,JS的操作。javaScript的简写形式就是JS,一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能(其编写的程序可以被嵌入到HTML或XML页面中,并直接在浏览器中解释执行)。

2023-04-12 21:57:42 104

原创 全局线程栈,连接流

连接流:将一个数据流的消息与另一个数据流的消息连接起来,这通常基于这些消息中的关键字。当连接流时,彼此相关的不同流中的消息通常由一组关键字标识。与线程绑定的是栈,用来储存自动变量。栈的每一个元素被称为栈帧,线程调用方法时,会向方法栈压入一个新帧。一般情况下,线程栈是在进程的堆中分配栈空间,每个线程拥有独立的栈空间。每一个线程建立,都会有一个默认栈与之配合。栈由编译器进行管理,自动分配和释放,存放函数调用过程中的各种参数,局部变量,返回值以及函数返回地址。

2023-04-10 18:52:55 22

原创 Map常用API方法

extends V> map) 添加另一个Map到当前Map中,要求K是当前Map本身对应的K,或者子类;返回Map双边队列中所有Key对应的Set集合;Map双边队列个数;

2023-04-10 18:49:15 84

原创 常用的遍历方式及特点

特点:使得遍历集合过程更加方便、简短、直观、易读,同时也提高了代码可维护性和可读性。特点:迭代器提供了操作元素的方法 可以在遍历中相应地操作元素。特点:效率最高,遍历快,可以根据自定计数器操作元素。

2023-04-10 18:47:57 120

原创 数组常用的API方法

13. join() && toString() 把数组中的所有元素转换成一个符串。15: indexOf() 查找指定的字符串值在字符串中首次出现(索引)位置。12. find:返回通过测试(函数内判断)的数组的第一个元素的值。2. pop() && shift() 尾部头部删除。8. filter:从数组中找出所有符合指定条件的元素。4. reverse() 颠倒数组中元素的顺序。5. :sort() 对数组的元素进行排序。3. splice()添加或删除数组中的元素。

2023-04-10 18:47:01 24

原创 什么是方法重载

4、重写对方法的访问权限和抛出异常有特殊的要求,而方法的重载没有这方面的限制。5、父类的方法只能被同一子类重写一次,而一个方法可以在所有类中被重载很多次。方法重载简称重载,重载即同一个类中两个或多个方法名相同但参数不同的情况。5、重载是发生在编译时的,因为编译器可以根据参数类型来选择使用哪个方法。1、重写只能用于子类重写父类的方法,而重载用于同一类中的所有方法。2、参数列表必须不同(参数的个数,类型,顺序不同)2、重写的参数列表必须相同,重载的参数列表必须不同。6、重写是运行时的多态,重载是编译时的多态。

2023-04-10 18:46:26 1423

原创 常用的循环方法

2、do while 循环。while(循环条件){}while(条件);

2023-04-10 18:45:18 112

原创 什么是方法覆盖

4、被重写的方法不能为static, 如果父类中的方法为静态,而子类的方法不是静态的,但是两个方法除了这一点其他都满足重写条件,那么会发生编译错误, 反之亦然。如果子类和父类中的方法都是静态的,并且满足重写条件,但仍然不会发生重写,因为静态方法是在编译时把静态方法和类的引用进行匹配。1、重写的方法必须与原方法有相同的方法名、参数列表和返回值类型(Java SE5之后返回值类型可以是其类型的子类型)2、被重写的方法不能是final类型,因为final类型无法重写。

2023-04-10 18:42:28 717

原创 String常用API类型

public String replace(CharSequence target,CharSequence replacement) 使用新值,将字符串中的旧值替换,得到新的字符串。public String substring(int beginIndex, int endIndex) 根据开始和结束索引进行截取,得到新的字符串(包前不包后)public String substring(int beginIndex) 从传入的索引处截取,截取到末尾,得到新的字符串。

2023-04-10 18:41:09 15

原创 密码加盐的设计理念?

由于密码是由用户设定的,在实际应用中,用户设置的密码复杂度可能不够高,同时不同的用户极有可能会使用相同的密码,那么这些用户对应的密文也会相同,这样,当存储用户密码的数据库泄露后,攻击者会很容易便能找到相同密码的用户,从而也降低了破解密码的难度,因此,在对用户密码进行加密时,需要考虑对密码进行掩饰,即使是相同的密码,也应该要保存为不同的密文,即使用户输入的是弱密码,也需要考虑进行增强,从而增加密码被攻破的难度,而使用带盐的加密hash值便能满足该需求。

2023-03-14 17:35:18 32

原创 MD5加密的优缺点?

计算速度快,加密速度快,不需要密钥;可以检查文件的完整性,一旦文件被更改,MD5值会改变;防止被篡改,传输中一旦被篡改,计算出的MD5值也会改变;防止看到明文,公司存放密码存放的是MD5值。

2023-03-14 17:34:15 32

原创 什么是Subject

Subject:主体,代表了当前“用户”,这个用户不一定是一个具体的人,与当前应用交互的任 何东西都是Subject,如爬虫、机器人等;所有Subject都绑定到 SecurityManager,与Subject的所有交互都会委托给SecurityManager;可以把Subject认为是一个门面;SecurityManager才是实际的执行者。

2023-03-14 17:28:47 121

原创 Shiro身份认证流程

Subject把标识token交给SecurityManager,在SecurityManager安全中心中,SecurityManager把标识token委托给认证器;认证器的作用一般是用来指定如何验证,它规定本次认证用到哪些Realm;认证器Authenticator将传入的标识token,与数据源Realm对比,验证token是否合法。Shiro把用户的数据封装成标识token,token一般封装着用户名,密码等信息;使用Subject门面获取到封装着用户的数据的标识token;

2023-03-14 17:20:55 92

原创 Shiro特点

Shiro 是一个强大而灵活的开源安全框架,能够非常清晰的处理认证、授权、管理会话以及密码加密。内置的基于 POJO 企业会话管理,适用于 Web 以及非 Web 的环境;简单的身份认证(登录),支持多种数据源(LDAP,JDBC 等);对角色的简单的签权(访问控制),也支持细粒度的鉴权;易于理解的 Java Security API;不跟任何的框架或者容器捆绑,可以独立运行。支持一级缓存,以提升应用程序的性能;非常简单的加密 API;异构客户端会话访问;

2023-03-14 17:18:44 272

原创 常见的异常有哪些?

ArrayIndexOutOfBoundsException -----数组下标越界异常 -----访问下标不存在的数组元素。NullPointerException ----- 空指针异常 ----- 对null调用了方法。ClassNotFoundException -----类找不到异常 -----指定的类不存在。ArithmeticException -----算术异常 ----- 除数为0。ParseException ----- 解析异常 -----字符串格式不正确。

2023-03-06 17:16:28 30

原创 HTML图像

浏览器将图像显示在文档中图像标签出现的地方。如果你将图像标签置于两个段落之间,那么浏览器会首先显示第一个段落,然后显示图片,最后显示第二段。URL 指存储图像的位置。如果名为 "pulpit.jpg" 的图像位于 www.runoob.com 的 images 目录中。要在页面上显示图像,你需要使用源属性(src)。src 指 "source"。源属性的值是图像的 URL 地址。 是空标签,意思是说,它只包含属性,并且没有闭合标签。在 HTML 中,图像由 标签定义。

2023-03-02 10:12:35 23

空空如也

空空如也

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

TA关注的人

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