自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一篇文章带你了解红黑树(附与其他树的对比)

文章地址

2022-03-28 20:29:38 472 2

原创 spring源码系列-AOP的项目结构解析

spring源码系列-AOP的实现接口方法上一篇播客已经阐述了AOP的同用的接口方法定义。但是真正的aop实现方法 远远不止这个。这篇文章就专门介绍整个框架aop的代码结构。spring源码系列-AOP的项目结构解析spring源码系列-AOP的实现接口方法前言aop包aop.aspectj包aop.aspectj.annotation包aop.aspectj.autoproxy包aop.config包aop.framework包aop.framework.adapter包aop.framework.

2021-11-30 11:33:40 511

原创 spring源码系列-AOP 联盟 AOP 通用接口定义

spring源码系列-AOP使用源码基本接口AOP 通知部分advice通知接口定义异常类AOP 反射拦截抽象部分通用拦截器Invocation调用接口新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入使用使用其实不用多

2021-11-30 09:28:06 756

原创 Java处理请求接口后返回的json数据-利用对象进行处理

Java处理请求接口后返回的json数据-利用对象进行处理 项目场景:处理思路:示例代码:友情提示:此方法利用的是阿里的fastjson,请注意使用前引用不使用对象直接对字符串进行操作,请前往本文文末连接;项目场景:之前写过一篇关于Java对json字符串的处理.当时想着偷个懒,直接获取;后来发现;当使用频率较多的时候,就不太方便了. 咱们都是学过面向对象的,这里都已经告诉咱们的了,面向对象嘛!既然是面向对象编程 那就向json的数据转化为对象呗处理思路:需要根据接收的json对

2021-04-29 15:26:48 3644

原创 Java处理请求接口后返回的json数据 - 直接处理json字符串

Java处理请求接口后返回的json数据项目场景处理思路参考代码项目场景我们熟知前端会大量的处理请求回来的JSON数据。但是也无可避免的,后端也会直接发送请求给接口,进而出现Java会直接处理josn数据的情况。处理思路将返回的数据接收到一个string对象中(有时候需要自己选择性的取舍接收)再将string转换为JSONObject对象用get()方法获取对应的值注:基于第三点的特殊情况,如果返回的json里面出现多组数据的情况(如下图/可能有更复杂的层次),则需要转换为数组(用JSO

2021-03-14 22:22:25 7290

原创 Spring蜕变笔记——依赖注入/自动装配

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档详细了解依赖注入前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入

2021-03-05 18:21:21 607 4

原创 清清楚楚15步 linux服务器安装mysql8.0 安排的明明白白

清清楚楚15步 linux服务器安装mysql8.0 不再困难 0.下载tar包:1.现在在 /usr/local下 创建mysql文件夹2.切换到mysql文件夹下 cd mysql3.通过xft或者RZ命令将包传进去。4.包有了之后,解压出来5. 改一下文件名字方便后安装失败糊涂了需要卸载,太长了也不方便使用6.进入解压后的数据库安装包,创建data文件夹7. 然后创建mysql的用户和用户组以及修改mysql用户的密码8.授权用户9.切换到bin目录下面,进行初始化,会初始化密码在@loaclhos

2021-01-13 18:01:07 262 1

原创 一篇文章带你实战了解Maven

一篇文章带你实战了解Maven概念1.1什么是Maven?1.2 Maven 能解决什么问1.3Maven的依赖管理1.4 项目的一键构建1.6概念模型Maven安装Maven仓库2.1 Maven 仓库的分类2.2 Maven 工程的认识2.3 Maven 工程的运行Maven 常用命令3.1 compile3.2 test3.3 clean3.4 package3.5 install3.6 Maven 指令的生命周期3.7概念模型idea 开发 maven 项目4.1 idea 的 maven 配置4

2020-09-28 16:30:57 108

原创 NOSQL非关系型数据库-Redis缓存优化案例

NOSQL非关系型数据库-Redis缓存优化案例案例需求分析代码service层dao层Redis优化service层Servlet层优化后注意案例需求1. 提供index.html页面,页面中有一个省份 下拉列表2. 当 页面加载完成后 发送ajax请求,加载所有省份分析代码未使用优化前:service层public class ProvinceServiceImpl implements ProvinceService { //声明dao private Pro

2020-09-22 22:19:39 150

原创 NOSQL非关系型数据库-Jedis客户端

NOSQL非关系型数据库-Jedis客户端 概念使用步骤1. 下载Jedis的jar包2. 使用测试3. Java代码执行前:4. Java代码执行后Jedis操作各种redis中的数据结构1. 字符串类型 string2. 哈希类型 hash3. 列表类型 list4.集合类型 set5. 有序集合类型 sortedset数据结构操作代码Jedis连接池连接池的使用1. 创建JedisPool2. 调用getResource()方法获取Jedis连接3. config的详细配置:连接池工具类Jedis

2020-09-22 14:12:03 176

原创 NOSQL非关系型数据库-Redis持久化

NOSQL非关系型数据库-Redis持久化和客户端操作持久化概念持久化机制1. RDB2. AOF持久化概念redis是一个内存数据库,当redis服务器重启,或者电脑重启,数据就会丢失,我们可以将redis内存中的数据库持久化保存到硬盘文件中。持久化机制1. RDB默认模式,不需要进行配置,默认就是使用这种机制(对性能影响比较小)在一定的时间间隔中,检测key的变化情况,然后进行持久化数据,编辑按包目录下的redis.windows.conf文件编辑内容after 90

2020-09-21 14:59:20 170

原创 NOSQL非关系型数据库-Redis快速入门

概念redis是一款高性能的NOSQL系列的非关系行数据库NOSQL: not only非关系型数据库MYSQL:关系型数据库1.1.什么是NOSQL NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。 随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到

2020-09-20 15:41:52 379

原创 轻量级数据交换格式-JSON解析器

JSON和Java对象的相互转换JSON解析器JSON转换为Java对象Java对象转换为JSON使用步骤代码JSON解析器一些封装好的工具常见的解析器:Jsonlib,Gson,fastjson,jackson(今天学习的)JSON转换为Java对象Java对象转换为JSON使用步骤导入Jackson的相关jar包创建Jackson核心对象ObjectMapper调用ObjectMapper的相关方法进行转换转换方法: writeValue(参数1,obj)

2020-09-11 10:15:11 115

原创 轻量级数据交换格式-JSON概念入门

轻量级数据交换格式-JSON入门概念语法基本规则获取数据代码取数据结果概念JavaScript Object Notation :JavaScript对象表示法JSON现在对于存储和交换信息的语法进行数据的传输JSON 比 XML 更小、更快、更易解析 作用(早期)在Java中:Person p = new person();p.setName("张三");p.setAge(23);p.setGender("男");在JavaScript中var p ={"name":"张

2020-09-10 21:12:12 229

原创 JavaEE核心技术之Listener监听器

JavaEE核心技术之Listener监听器概念web的三大组件之一。事件监听机制: * 事件:一件事情 * 事件源:事情发生的地方 * 监听器:一个对象 * 注册监听:将事件、事件源、监听器绑定在一起。 当事件源发生发生某个事件后,执行监视器代码。ServletContextListener监听ServletContext对象的创建和销毁方法void contextDestoryed(ServletContextEvent sce): ServletContext

2020-09-10 16:43:25 188

原创 JavaEE核心技术之Filter案例

JavaEE核心技术之Filter案例案例一:登录验证需求案例一:登录验证需求1. 访问项目案例的资源。验证其实是否登录、2. 如果登录直接放行3. 如果没有登录,则会跳转到登录页面,提示“您尚未登录,请先登录”。...

2020-09-10 09:33:51 158

原创 JavaEE核心技术之Filter过滤器

JavaEE技术之Filter过滤器概念*生活中的过滤器:净水器,空气净化器...web中的过滤器:当访问服务器资源时,过滤器可以将请求拦下来, 完成一些特殊的功能 过滤器的作用: 一般用于完成通过的操作。如:登录验证,统一编码处理,敏感字符过滤...快速入门:步骤: 1. 定义一个类,实现接口Filter 2. 复写方法 3. 配置拦截路径代码 @WebFilter("/*") //访问所有的资源之前,都会执行该过滤器public class Filt

2020-09-07 15:48:08 356

原创 JavaEE页面技术之JSTL标签&小案例

JavaEE页面技术之JSTL标签&小案例概念作用使用步骤常用的JSTL标签小案例概念JavaServer Pages Tag Library : JSP标准标签库* 是由Apache组织提供的开源的免费的JSP标签作用用户简化和替换JSP页面上的Java代码使用步骤1. 导入JSTL相关的jar包2. 引入标签库: taglib指令 <%@ taglib ="" prefix=""%>3. 使用标签常用的JSTL标签if相当于Java代码的i

2020-09-04 21:32:38 249

原创 JavaEE页面显示技术之EL表达式

JavaEE页面显示技术之EL表达式概念作用语法使用语法:1. $域名称.键名}2. ${键名}3. 获取对象4. 隐式对象概念Expression Language 表达式语言作用替换和简化JSP页面中的Java代码的编写语法${表达式}注意:1. JSP页面中默认支持EL表达式2. 忽略EL表达式:设置jsp的Page指令中:isELIgnored="true"3. 忽略单句EL表达式:加一个反斜线 \使用运算1. 算数运算符: + - * /(div) %(mo

2020-09-04 16:28:27 336

原创 JavaEE开发模式之MVC

JavaEE开发模式之MVCJSP演变史MVCMVC特点优点缺点JSP演变史1. 早期只有servlet,只能使用response输出标签数据,非常麻烦2. 后来有了JSP,简化的Servlet开发,如果过度使用JSP,在jsp中写了大量的Java代码,又写html表,造成维护困难,难于分工合作3. 再后来,Java的web开发,借鉴MVC开发模式,使得程序的设计更加合理性。MVC1. M:model ,模型 (JavaBean) *完成具体的业务 2. V:view ,控制器 (

2020-09-04 09:20:42 343

原创 JavaEE页显示技术之JSP

JSP指令:*作用:用于JSP页面,导入资源文件* 格式 <% 指令名称 属性名称 属性名称1=属性值1 属性名称2=属性值2 .. %>分类:1. page:配置JSP页面的*contentType:等同于response.setContentType() 1. 设置响应体的mime类型以及字符集 2. 设置当前JSP页面的编码(只能是高级的IDE才能生效, 如果使用低级工具,则需要设置pageEncoding属性设置当前页面的字符集) *import

2020-09-04 08:48:11 202

原创 JavaEE会话技术之Session案例

JavaEE会话技术之Session案例案例需求:需求分析代码验证码代码登陆代码登陆页面代码登录成功页面案例需求:访问带有验证码的登录页面login.jsp用户输入用户户名和密码以及验证码。* 如果用户名和密码输入有误,跳转登录页面, 提示用户名或者密码错误*如果验证码输入有误,跳转登录页面, 提示:验证码错误*如果输入全部正确,则转跳到主页success.jsp, 显示:用户名,欢迎您!需求分析代码验证码代码package com.web.servlet;imp

2020-09-03 22:09:12 118

原创 JavaEE会话技术之Session

JavaEE会话技术之Session概念快速入门原理细节Session特点概念服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象中。Httpsession快速入门1. 获取Httpsession对象: HttpSession session = request.getSession(); 2. 使用Httpsession对象: object getAttribute(String name) void setAttribute(String nam

2020-09-03 12:22:58 233

原创 JavaEE会话技术之cookie案例

需求:1. 访问一个servlet,如果第一次访问,则提示:您好!欢迎首次访问2. 如果不是第一次访问,则提示:欢迎回来,您上次到访时间为:显示时间字符串分析: 1. 可以采用cookie完成 2. 在服务器中的servlet判断是否有一个名字为lastTime的cookie 1. 有:不是第一次访问 1. 响应数据:欢迎回来,您上次的访问时间为:时间 2. 写回cookie:lastTime=时间 2. 没有:是第一次访问 1. 响应数据:您好,欢迎首次访问

2020-08-28 20:30:19 167

原创 JavaEE会话技术之Cookie

会话技术概念会话功能方式Cookie概念快速入门使用步骤实现原理Cookie的细节Cookie的特点和作用特点作用概念会话一次会话包含多次请求和响应。 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止。功能在一次会话范围内的多次请求间,共享数据方式1.客户端会话技术: Cookie2.服务器端会话技术: SessionCookie概念客户端会话技术,将 数据保存到客户端快速入门使用步骤1. 创建Cookie对象,绑定数据 * new

2020-08-28 18:41:14 237

原创 速解HTTP协议之文件下载案例

速解HTTP协议之文件下载案例文件下载需求:分析:步骤问题代码结构DownloadServlet中文编码类下载HTML页面文件下载需求:1. 页面显示超链接2. 点击超链接后弹出下载提示框3. 完成图片文件下载分析:1. 超链接指向的资源如果能够被浏览器解析,则在浏览器中展示,如果不能解析,则弹出下载提示框。不满足需求。2. 任何资源都必须弹出下载提示框。3. 使用响应头设置资源的打开方式: *content-disposition:attename;filename=xx

2020-08-28 11:02:55 667

原创 速解HTTP协议之ServletContent对象

速解HTTP协议之ServletContent对象概念获取功能1.获取MIME类型(互联网中文件的类型)2.域对象:共享数据3.获取文件的真实(服务器路径)路径概念代表整个web应用,可以和程序的容器(服务器)来通讯获取1.通过request对象获取request.getServletContext();2.通过HttpServlet来获取this.getServletContext();功能1.获取MIME类型(互联网中文件的类型)*MIME类型:在互联网通讯过程中定义的一

2020-08-26 17:49:00 334

原创 速解HTTP协议之response对象

速解HTTP协议之response对象功能案例完成重定向资源跳转的方式。代码实现:特点路径的写法服务器输出字符数据到浏览器步骤服务器输出字节数据到浏览器验证码功能设置响应消息1. 设置响应行 1. 格式:HTTP/1.1 200 ok 2. 设置状态码: setStatic(int sc)2. 设置相应头 setHeader(String name,String value)3. 设置响应体 使用步骤: 1. 获取输出流 * 字符输出流:Print

2020-08-25 11:53:15 270

原创 速解HTTP协议之响应消息

HTTP协议概念请求消息: 客户端发送给服务端的数据*数据格式:1. 请求行2. 请求头3. 请求空行4. 请求体响应消息:服务器端发送给客户端的数据*数据格式响应行1. 组成: 协议/版本 响应状态码 状态码描述2. 响应的状态码:服务器告诉客户端浏览器本次请求和响应的一个状态。1. 状态码都是三位数字。2. 分类: 1. 1xx : 服务器接收客户端消息, 但没有接收完成,等待一段时间后, 发送1xx多状态码 2. 2xx :

2020-08-19 12:09:26 134

转载 记录“偷懒”实用小技巧--beanutils包

记录“偷懒”实用小技巧--beanutils包Beautils介绍Beanutils工具包的常用类:对属性进行赋值操作封装用户对象类型转换使用BeanUtils本身自带的转换器实际开发中常常把客户机提交的元素封装到Map集合中去。Beautils介绍Apache组织开发了一套用于操作JavaBean的API,这套API考虑到了很多实际开发中的应用场景,因此在实际开发中很多程序员使用这套API操作JavaBean,以简化程序代码的编写。在工程下新建lib目录,导入commons-beanutil

2020-08-18 11:12:22 242

原创 速解HTTP协议之Request对象

速解HTTP协议之Request对象request对象Request对象继承体系结构request功能1.获取请求消息1.1获取请求行数据1.2获取请求头数据2.其他功能2.1获取请求参数 的通用方式3.请求转发3.1步骤:3.2特点4.共享数据4.1域对象request对象1.request和response对象是由服务器创建的。我们来使用他们2.request对象是来获取请求消息,response对象是来设置响应消息。Request对象继承体系结构ServletRequest

2020-08-16 16:52:22 368

原创 速解HTTP协议之请求消息

概念HTTP : Hyper Text Transfer Protocol 超文本传输协议超文本传输协议 传输协议:定义了客户端和服务器端通讯时,发送数据的格式特点 1.基于TCP/IP的高级协议 2. 默认端口号:80 3. 基于请求/响应模型的:一次请求对应一次响应 4. 无状态的:每次请求之间,相互独立,不能交互数据...

2020-08-16 10:23:49 94

原创 JavaWeb知识核心--Servlet体系结构

JavaWeb知识核心--Servlet体系结构Servlet --接口GenericServletHttpServlet步骤Servlet相关配置urlparttenServlet --接口 Servlet --接口 GenericServlet --抽象类 HttpServlet --抽象类 GenericServlet 里面只有一个service方法作为抽象,因为里面其他方法已经默认做了空实现 其他方法可选择性实现package com

2020-08-15 12:08:53 210

原创 JavaWeb知识核心--Servlet周期和注解

JavaWeb知识核心--Servlet周期和注解Servlet生命周期最重要的三个方法代码案例小疑问Servlet什么时候被创建?Servlet是单例的Servlet3.0/4.0步骤注意tomcat与IDEAServlet生命周期最重要的三个方法被创建执行init()方法只执行一次提供服务执行Service方法,执行多次被销毁 执行Destory()方法,只执行一次代码案例package com.web.servlet;import javax.ser

2020-08-15 11:05:50 119

原创 JavaWeb知识核心--Servlet快速入门

JavaWeb知识核心--Servlet快速入门概念快速入门创建JavaEE项目定义一个类,实现Servlet接口实现接口中的抽象方法配置Servlet启动小案例Servlet执行原理概念 全名叫server applet ,运行在服务端的小程序 servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则。 *将来我们自己定义一个类,实现Servlet接口,复写方法快速入门创建JavaEE项目定义一个类,实现Servlet接口实现接口中的抽象

2020-08-14 17:45:18 166

原创 xml解析--Jsoup快捷查询方式

xml解析--Jsoup快捷查询方式引入快捷查询方式selectorselector语法XPath引入以前当我们想获取<student> -> <name> -> <xing> -> "张"时,我们需要先依次获取对应的标签。在获取内容 我们希望有一种快捷的方式,一下子就能定位到这里。 因此就有了快捷查询方式。快捷查询方式selector选择器查询 使用方法:Elements select(String cssQue

2020-08-13 16:19:15 136

原创 xml解析--Jsoup快速入门

xml解析--Jsoup快速入门概念快速入门步骤概念Jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。快速入门步骤导入jar包jsoup-1.11.2.jar获取Document获取对应的标签Element对象获取数据package com.xml.jsoup;import org.jsoup.Jsoup;import o

2020-08-12 18:04:43 186

原创 来看看XML到底是个啥--xml解析

来看看XML到底是个啥--xml解析概念解析xml的方式xml常见的解析器概念操作xml文档,将文档中的数据读取到内存中。操作xml文档: 1.解析(读取):将文档中的数据读取到内存中 2.写入:将内存中的数据写到xml文档中。持久化的存储。解析xml的方式两种思想DOM思想(服务器端)将标记语言文档一次性加入内存中,在内存中形成dom树 优点:操作方便,可以对文档进行CRUD(增删改查)的所有操作 缺点:占内存(一

2020-08-12 16:38:17 143

原创 来看看XML到底是个啥--xml约束文档

约束文档概念逻辑图分类DTDstudent.dtd引入约束文档dtd实例Schemastudent.xsd引入schema文档实例概念规定xml文档的书写规则 * 作为框架的使用者(程序员) 1.能够在xml中引入约束文档 2.能够简单的读懂约束文档逻辑图以下是约束文档的的作用和逻辑关系的图解:分类DTD一种简单的约束文档student.dtd<!ELEMENT students (student*) ><!ELEMENT s

2020-08-11 17:53:18 273

原创 来看看XML到底是个啥--xml快速入门

来看看XML到底是个啥--xml快速入门XML概念功能:存储数据配置文件在网络中传输xml与html的 区别语法:快速入门基本语法快速入门组成部分文档申明指令(已经不这么使用了,了解即可)标签属性文本XML以前为了代替语法松散的html而诞生。最后竞争不赢,就发展自己的优势,与properties配置文件竞争。(xml 存数据比properties厉害,标签存数据特别的结构化)。概念Extensib Markup language 可扩展标记语言*可扩展:标签都是自定义的。如 <sue

2020-08-11 11:18:15 118

空空如也

空空如也

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

TA关注的人

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