自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 手写Spring(一)

手写框架——Spring(一)依赖解析xml使用测试市面上,形形色色的框架,眼花缭乱,学完一个可能俩月后就被淘汰了,又有了新的大佬代替了他。所以,框架是学不完的。同一类型的框架,在原理上基本都是类似的,所以,搞懂其底层实现原理可以让我们更快的上手一个新的技术。而搞懂一个东西,最直接、印象深刻的方式应该就是自己做出来这个东西吧。于是,我就突然想写一个博客,对一些主流软件的基本功能实现进行一个汇...

2019-07-13 23:56:07 449 1

原创 自动装箱带来的性能影响

对于Java中的自动装箱,已经是耳熟能详,此处也不多做介绍,本文的重点是,在开发过程中,如何避免自动装箱带来的负面影响。最直接的方案,自然是能使用基本数据类型的,坚决不使用包装类型,如使用int而不是用Integer,使用long而不是用Long。不过总会有一些特殊情况,当该成员表述的值,null需要被区别对待的时候,就无法不使用包装类型了。如使用boolean时,true代表真,false代...

2020-04-17 07:57:41 263

原创 API统一返回数据格式

如今的项目,基本上都是前后端分离,而且前端的生态也已经很强大。后端基本上只要保证数据响应就可以了。那么,接口交互就成了前后端对接最重要也是最耗时的工作。而提高交互效率的最好的方法就是统一数据格式,后端把数据丢到一个统一的格式中去,前端解析数据也从固定的格式中去取。这样,前端就省去复杂的无关数据解析,能直接拿到想要的数据。后端也只需要把数据丢到固定的格式中去,不用每次都要包装一下。格式统一达到...

2020-03-08 12:48:11 1781

原创 for循环中,i++和++i有什么区别

在Java中,for循环是很常见的。一般我们写的格式,或者IDE提供的默认模板的格式大都如下:for (int i = 0;i < 10; i++) { // TODO something}对局部变量i使用的都是i++,可是最近在很多算法中看到使用了++i。就很是不理解。首先从for循环执行逻辑上去分析,发现结果从理论上来说,应该是一样的。但是本着大佬这么做一定有他的理由的原则...

2020-02-05 23:55:46 465

原创 日志——快速定位问题的主武器

在每个项目中,日志的地位都是举足轻重的,好的日志可以大大提升问题确认的速度,尤其是针对无法断点调试的线上环境。所以好的日志规范是非常必要的。日志级别首先不得不说的就是日志的级别,级别的划分主要是为了区分不同目的、不同重要程度的信息,以方便对日志进行过滤。日志级别由高到底为ERROR>WARN>INFO>DEBUG>TRACE。ERROR级别的日志用来标注一些影响到...

2019-12-21 18:15:02 604 1

原创 SpringBoot中使用undertow

undertow依赖参数配置多端口监听首先说一下undertow是个啥?undertow是一个采用Java开发的灵活的高性能web服务器。其提供包括阻塞和基于NIO的非阻塞机制。它是红帽公司的开源产品,是一个完全为嵌入式设计的web服务器。优点:轻量:undertow只有几百KB,在嵌入式模式下运行,占用的堆内存也只有4MB左右servlet兼容:完美兼容servlet3.1Web...

2019-10-15 23:09:00 8474 1

原创 Web会话管理

Web会话管理基于server端的session来管理基于cookie来管理Web应用通常使用的是HTTP请求,当时HTTP是无状态的, 一次请求结束,连接就会自动断开,服务器只能知道每个请求的来源地址,可是这对会还的管理毫无意义。根本无法对用户进行认证和权限控制。于是,就有了相应的方案来解决这问题。常用的方法有三个:基于server端的session来管理基于cookie来管理基于to...

2019-08-30 11:47:26 209

原创 RESTful API

RESTful API什么是RESTful API如何使用协议域名版本资源路径HTTP动词状态码Hypermedia API总结什么是RESTful APIREST 是 REpresentational State Transfer的缩写,它是一种分布式超媒体系统的架构风格。最初由Roy Fielding在2000年的论文中提出。其包含6个引导约束,具体查看官网的介绍。如何使用下面说明一下...

2019-07-04 23:16:51 198 1

原创 XML与实体转化——JAXB

XML与实体转化——JAXB序列化操作步骤测试反序列化测试在业务环境中,数据传输最经常使用的就是XML和JSON。XML虽然相对于JSON的读写成本大,冗余度较高,但是其在数据的检索与复用上有较大的优势。其最多的使用场景是在关系型数据库中以及内部系统的数据交换、或者是数据存储(一般指配置文件,其它数据存储场景使用较少)。在xml和实体之间的互相转换,有很多框架或工具都封装了自己的方法。今天主要...

2019-07-04 08:58:52 255

原创 SpringBoot整合MyBatis

SpringBoot整合MyBatis依赖配置MyBatis以其小巧灵活的特性,已经被很多互联网公司用于日常开发中。随着SpringBoot的流行,MyBatis同样也出了整合SpringBoot的方案。本篇文章简要介绍一下在SpringBoot中如何快捷的使用MyBatis。依赖首先是国际惯例、导入依赖包。绝大部分的框架或者工具都是通过一个boot-starter的依赖包。MyBatis也...

2019-05-22 20:41:05 146

原创 SpringBoot整合JSP

SpringBoot整合JSP依赖配置映射启动方式虽然JSP在很多互联网公司都已经不再使用,但是在很多老企业,为了追求项目稳定,或者由于某些其它原因(这个原因只能意会,比如我我之前遇到一个拒绝新技术的TL,那就没办法)仍然在使用JSP。而随着SpringBoot的流行程度,很多框架或者工具都开始提供与SpringBoot整合的方案。本篇介绍一下整合JSP的步骤。依赖在SpringBoot中已...

2019-05-19 16:03:43 224

转载 Python中拼接字符串的7种方式

在Python中,处理字符串的方式有很多种,它们各有各的特点,常用的有7种。1. 使用 % 占位拼接print('%s %s' % ('Hello','World'))以上代码会输出Hello World。这种方式第一次出现是在C语言中,%s是一个占位,意味着这里可以被放置一个字符串,实际的字符串的值通过后面的元组传递。占位符不仅仅有%s,如%d代表一个整数、%f代表浮点数等等。这种方...

2019-02-27 22:05:27 7753 1

空空如也

空空如也

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

TA关注的人

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