自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 正式表达式

前言正则表达式是一些含有特殊意义字符的字符串,而这些特殊意义的字符被称为正则表达式中的元字符。PS: 本文章由于记录一些关于正则表达式的常用元字符、限定符和相关的类、方法等,欢迎有需要的同学随时进行查阅收藏 : )一、String类中的matches(String regex)方法/** * 用于判断当前字符串对象是否和参数regex指定的正则表达式匹配 * /public boolean matches(String regex) { return Pattern.matches(re

2020-05-23 12:07:18 324

转载 与Java有关的12个语法糖(转发)

前言本文转发自“Web项目聚集地”(点击蓝色字体即可跳转)本文从Java编译原理角度,深入字节码及class文件,抽丝剥茧,了解Java中的语法糖原理及用法,帮助大家在学会如何使用Java语法糖的同时,了解这些语法糖背后的原理。语法糖语法糖,也称糖衣语法,是由英国计算机学家Peter.J.Landin发明的一个术语,指在计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更...

2019-07-27 20:32:08 189

转载 Spring Boot项目模板(转发)

前言本篇文章转发自“Java团长”,点击蓝色字体即可跳转到原文。内容有所删改!本文以一个简单的电商订单系统为例,整理出一套公共性的项目模板,旨在尽量多地包含日常开发之所需,减少开发者的重复性工作以及提供一些最佳实践。源码:git clone https://github.com/e-commerce-sample/order-backend git checkout a443dace所...

2019-07-18 08:10:26 342

转载 数据库索引的底层原理(转发)

前言本文转发自“Java团长”,点击蓝色字体即可跳转至原文。内容有所删改!要了解数据库索引的底层原理,我们就得先了解一种叫树的数据结构,而树中很经典的一种数据结构就是二叉树!所以下面我们就从 二叉树 到 平衡二叉树 ,再到 B-树,最后到 B+树 来一步一步了解数据库索引底层的原理!二叉树(Binary Search Trees)二叉树是每个结点最多有两个子树的树结构。通常子树被称作“...

2019-07-13 12:10:32 508

转载 Spring AOP中JDK和CGLib动态代理哪个更快?(转发)

前言本文转发自“好好学java”,点击蓝色字体即可跳转到原文。本篇内容有所删改!一、基本概念Spring AOP的底层实现有两种方式:一种是JDK动态代理,另一种是CGLib。自Java 1.3以后,Java提供了动态代理技术,允许开发者在运行期创建接口的代理实例,后来这项技术被用到了Spring的许多地方。JDK动态代理主要设计java.lang.reflect包下边的两个类:Pr...

2019-07-11 22:20:41 311

转载 Java语言20种常用类库和API(转发)

前言本文转发自“Web项目聚集地”作者:ArthurKingYs。本文总结了 日志、JSON解析、单测、XML解析、字节码处理、数据库连接池、集合类、邮件、加密、嵌入式SQL数据库、JDBC故障诊断 以及 序列化 等20个方面的常用类库。内容有所删改!一、日志相关类库打印日志是服务器端应用中最重要的事情,因为日志是你了解你的程序发生了什么的唯一途径。尽管JDK附带自己的日志库,但是还...

2019-05-19 20:47:18 444

转载 编辑器专题之IntelliJ IDEA图文教程(转发)

前言本文转发自“IntelliJ IDEA 使用教程(2019图文版) – 从入门到上瘾”(点击蓝色字体即可跳转)作者:一只袜子。内容有所删改!一、IDEA VS Eclipse核心术语比较两者最大的转变就在于工作空间概念的转变,并且在IDEA当中,Project和Module是作为两个不同的概念,对项目结构是具有重大意义的,这也恰恰是很多IDEA初学者觉得困扰的地方。为什么要取...

2019-05-15 20:37:56 236

转载 编辑器专题之Intelli J IDEA中的Debug调试(转发)

前言本文转发自“Web项目聚集地”(点击蓝色字体即可实现跳转)作者:bojiangzhou内容有所删减!Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化。通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码。在Intelli J IDEA中使用好Debug,主要包括如下内容:...

2019-05-09 22:12:21 453

转载 编辑器专题之理解IntelliJ IDEA的项目配置和Web部署(转发)

前言本文转发自“Web项目聚集地”(点击蓝色字体即可实现跳转)作者:Dulk内容有所删改!一、项目配置的理解IDEA中最重要的各种配置项,就是这个Project Structure了,关乎你的项目运行。Project1)Project name: 定义项目的名称2)Project SDK: 设置该项目使用的JDK,也可以在此处新添加其他版本的JDK3)Project l...

2019-05-09 20:34:06 150

转载 编辑器专题之Eclipse VS IDEA(转发)

前言本文转发自“Web项目聚集地”(点击蓝色字体即可跳转)原作者:Danni3个人觉得,本篇文章非常适合高校计算机系的学生阅读,尤其是即将参加校招,走上工作岗位的高年级学生。因为在学校里教学java语言的时候,绝大部分老师使用的开发工具都是Eclipse;而真正到了工作中基本上都转成了Jet Brains公司开发的IDEA开发工具,因此有必要了解一下!Eclipse和idea,哪个更好...

2019-05-09 17:23:44 150

转载 通过Java编程实现发送短信功能(转发)

前言该文章转发自“Web项目聚集地”(点击蓝色字体即可跳转),作者:王久一。内容有所删改!正文我们日常使用的软件或者网站,大部分都在使用短信业务,比如 注册 、 验证码功能 。还有一些特定的业务需要发送短信通知用户等。有了需求就会有平台提供服务,国内有很多互联网公司都提供短信业务,比如阿里、腾讯、七牛。国外有Twillo公司同样可以提供服务,也有相应的额度。本篇文章提及的是腾讯提供的短信...

2019-05-09 11:10:13 8333

转载 前后端分离详解(转发)

前言本文转发自“Web项目聚集地”(点击蓝色字体即可跳转)作者:松哥。这篇文章让我受益匪浅。前后端不分离的时代后端模板:JSP、FreeMarker、Velocity前端模板:Thymeleaf前后端不分离的时代,JSP是一个非常典型的写法,JSP将HTML和Java代码结合在一起,刚开始的时候确实提高了生产力,但是时间久了,大伙就发现JSP存在的问题了:对于后端工程师来...

2019-05-07 16:04:48 1921

转载 MQ(Message Queue:消息队列)详解(转发)

前言本篇文章转发自Web项目聚集地(点击蓝色字体即可跳转),作者为:Java3y,首发于作者自己的公众号:Java3y。在此感谢原作者的对于“消息队列”的详细讲述,让我对于“消息队列”有了更深一步的了解。同时,原作者在文中所提及的一些问题虽然并没有全部给出答案(比如消息队列的数据应该存在哪?如何存储?),但却都是有启发式,抛砖引玉,能引起我们思考的好问题,值得我们深思!本篇文章有所删改,并...

2019-04-21 11:17:48 3183

转载 彻底理解cookie,session,token(转发)

前言本文转发自“Java团长”,点击蓝色字体即可跳转。发展史互联网发展早期,Web基本上就是文档的浏览而已。既然是浏览,作为服务器,不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议,就是请求+响应。但是随着交互式Web应用的兴起,像在线购物网站,需要登录的网站等等,马上就面临一个问题,那就是要 管理会话,必须记住哪些人登录系统,哪些人往自己的购物车中放商品...

2019-04-18 20:54:32 403

原创 专业名称积累(架构篇,持续更新......)

前言本篇文章用于记录在平常的学习和生活中所见到的有关系统架构的专有名词,持续更新…SOA(面向服务的架构)SOA(Service-Oriented Architecture):面向服务的架构,一个组件模型。它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这...

2019-04-17 16:11:23 153

转载 关于三次握手与四次挥手的考点详解(转发)

前言本文转发自“Java团长”,点击蓝色字体即可跳转。注:原文中有几处错误,在本文中已经尽量更正,并且在关键地方加上了强调字体,如果屏幕前的您还发现什么错误,欢迎在评论区进行评论,同时依旧向原作者表示感谢!三次握手常见面试题:1)为什么需要有三次握手?2)三次握手的作用是什么?需要三次握手才能确认双方的接收与发送能力是否正常为啥只有三次握手才能确认双方的接受与发送能力是否...

2019-04-14 11:26:41 326

转载 user表的迭代设计之路(转发)

前言本篇文章转发自:“Web项目聚集地”微信公众号,点击蓝色字体即可跳转。用户表是每个应用/网站立项动工考虑的第一件事件;用户表结构的设计,算是整个后台架构的基石;如果基石不稳,待到后面需求跟进了发现不能应付,回过头来反复修改用户表,要大大小小作改动的地方也不少;与其如此,不妨设计用户表之初就考虑可扩展性,争取不需要太多额外代价的情况下一步到位:先前设计 1. id 2. usern...

2019-04-13 16:49:38 244

转载 深入理解Spring IoC的原理(转发)

前言本文转发自好好学java,作者:莫那·鲁道(点击蓝色字体即可跳转),本文有所修删改。原作者的这篇文章对Spring IoC的实现原理讲的挺详细的。当然,也正因为如此,所以理解起来有些难度,估计本文不止需要二刷,三刷四刷都是免不了的!广义的IOCIoC(Inversion of Control): 控制反转。两种实现方法: 依赖查找(DL)和依赖注入(DI)。IOC和DI、DL...

2019-04-03 13:34:06 129

转载 为何要重写hashcode和equals方法?(转发)

前言本文转发自微信公众号Java团长(点击蓝色字体即可跳转),感谢原作者详细的讲解,让我受益匪浅。安利一下,给更多的朋友看!本文内容有所删改。面试常问:为什么要重写hashCode方法?有没有尝试过在HashMap的“键”部分存放自定义的对象?遇到了什么问题?在这个过程中有没有重写过equals河hashCode方法?在使用HashMap时为何要重写hashCode和equals方...

2019-04-03 10:33:41 85

原创 CSS3开发之transition和animation的对比

前言最近在开发的过程中有这样的需求:让某一个按钮标签一开始处于隐藏的状态。然后,随着页面的价值,按钮标签慢慢地从暗变到亮,整个过程都是自动完成的,无需用户操作。寻找解决思路由于一开始的思路是:想让按钮标签从暗变到亮这个过程应该属于过渡的效果。于是:顺着这个思路,我查询了大量有关transition的资料。然而,我发现大多数网站都把用户鼠标滑过或者点击了某个标签使得标签的某些状态发生了改变...

2019-03-30 20:20:21 103

原创 CSS文件的开发踩坑(持续更新...)

前言本篇文章主要用于记录在学习CSS样式文件中所遇到的坑。在正式编写CSS样式表之前,通常习惯性的编写如下语句用于清除外边距和内边距。原因是:浏览器会在我们所编写的样式表之上默认的添加一定的外边距和内边距,一般在开发中我们都会将其清零,然后自己编写所需的内外边距。*{ margin: 0; padding: 0;}如果在编写CSS样式表时有使用到浮动属性,记得...

2019-03-30 19:14:56 151

原创 Android开发踩坑之子线程中调用Toast

前言今天在编写Android应用开发的登录程序时发生了一个问题:用户点击登录按钮,主界面会弹出一个窗口接收用户输入,当用户点击确定后,程序调用等待进度条等待3秒钟,接着弹出“用户登录成功”的Toast提示框,然后…就没有然后了,程序直接奔溃。原因检查尝试过debug、也上网找了一阵子,最终发现原来问题出现在程序调用进度条ProgressDialog类的时候:ProgressDialog...

2019-03-27 13:26:21 1792

原创 在Eclipse中修改Android应用程序所能兼容的最低版本

前言最近在做Android应用程序开发的时候,遇到过这样的问题:Call requires API level 9(current min is 8):java.lang.String#isEmpty自查了一下代码,发现原来是我在项目中使用到了"isEmpty()"方法,此方法对Android API的最低要求为API 9的版本。而我在之前新建项目时把最低兼容的版本设置为API 8,因此导致...

2019-03-25 10:21:43 2746

原创 专有名词积累(Java篇,持续更新......)

前言本篇文章用于记录在平常的学习和生活中所见到的有关Java方面的专有名词,持续更新…Jetty:一个开源的servlet容器,它为基于Java的web容器,例如JSP和Servlet提供运行环境。Jetty使用Java语言编写,它的API以一组jar包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立运行的Java应用提供网络和web连接。或者,作为插件插入到...

2019-03-14 19:13:01 370

原创 计算机网络基础知识

前言本篇文章所讲述的是简略版的有关计算机网络的一些知识。重点为计算机网络体系结构的‘五层’结构。五层模型物理层:通过光纤、电缆、双绞线等输出介质将两台计算机连接起来,并通过高低电频(电信号的形式)来传输0,1,0,1这样的二进制比特位。(本层涉及到数模之间的转换、数模之间的编码格式等)数据链路层:通过‘帧’这种数据格式来传输数据。一个帧由帧头部分(Head)和帧数据部分(Data)构...

2019-03-05 21:49:19 190

转载 Redis的前世今生(转发)

前言本文转发自微信公众号Java团长(点击蓝色字体即可跳转)IT工程师们为什么要使用Redis?它有什么用处和好处?所谓存在即合理,本文将从一个实际问题出发,一步步探究在实际开发中Redis的演进步骤;如何从一个单机的服务,进化为一个高可用的、去中心化的、分布式的存储系统;客户端可以消费的redis服务。从零开始最初的需求非常简单,我们有一个提供热点新闻列表的api:http://a...

2019-03-04 08:51:50 1417

转载 精选Java IO面试题(转发)

前言本文转发自精选Java IO面试题及参考答案,内容有所修改。Java IO面试题汇总什么是IO流?它是一种数据的流从源头流到目的地。比如文件拷贝,输入流从文件中读取数据存储到进程(process)中,输出流从进程中读取数据然后写入到目标文件。字节流和字符流的区别?字节流用于操作包含ASCII字符的文件。JAVA也支持其他的字符如Unicode,为了读取包含Unicode字符的...

2019-02-28 21:19:53 1854

转载 如何在Eclipse中查看JDK源代码(转发)

前言本篇文章转发自:在Eclipse下查看JDK源代码,内容有所补充。一、在Eclipse中查看JDK类库的源代码的步骤:点击Window->Preferences->Java->Installed JRES。此时Installed JRES右边是列表窗格,列出了系统中的JRE环境,选择你的JRE,然后点边上的Edit...,会出现一个窗口(Edit JRE)。选...

2019-02-27 23:12:14 178

原创 Java进阶之二进制基础

前言本篇将讲解Java中JDK内置的进制转换以及在Java中,数据类型之间的转换机制和过程。图片、部分源程序源自慕课网。一、Java中JDK内置的进制转换注:其中的‘其他进制转换成十进制’,还有其他方法,如下所示:Integer.parseInt(“0101”, 2) // 二进制转换成十进制Integer.parseInt(“376”, 8) // 八进制转换成十进制...

2019-02-25 11:49:25 186

转载 大小端格式详解(编程语言为C语言)

前言本篇文章转载自zhaoshuzhaoshu所写的《大端小端格式详解》(单击蓝色的‘大端小端格式详解’,即可跳转到原文)何为大端,何为小端?所谓大端模式:是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中。所谓小端模式:是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。为什么会有大小端?这是因为在计算机系统中,我们是以字节为单位的,每个...

2019-02-25 11:23:49 1252

转载 二进制详解+集合算法的实现笔记

前言本篇文章转载自iukey所写的《位运算的威力》(点击蓝色的‘位运算威力’,即可跳转到原文)一、有关位运算的基础知识总结位运算包括:&(与)、|(或)、^(异或)、~(取反)、>>(右移)、<<(左移)环境预设:32位机下面,int占2个字节,有符号例如:int a = 11;int b = 1000;(a)2 = (00000000 000...

2019-02-25 11:02:35 3651

原创 那些年我们一起学过的二进制

前言本篇主要讲解了二进制的常见位运算及其特殊用法以及‘原码’、‘反码’与‘补码的概念’。一、二进制位运算与运算· 符号:‘ & ’· 运算规则:相同位作比较,只有当两位全为1,结果才为1。· 例如:0110 & 0011 = 0010· 图示如下:或运算· 符号:‘ | ’· 运算规则:只要有一个为1,结果就为1· 例如:0110 | 0011 ...

2019-02-25 10:28:13 126

原创 Java语言的入门总结与归纳(六)

前言本小节为Java入门阶段最后一个小节,讲解总结了有关Java集合框架的知识。Java中的集合框架详解集合框架的概念与作用· Java中的集合类是一种工具类,就像是容器,存储任意数量的具有共同属性的对象。· 集合的作用1)在类的内部,对数据进行组织2)简单而快速的搜索大数量的条目3)有的集合接口,提供了一系列排列有序的元素,并且可以在序列中间快速的插入或者删除有关元素。4...

2019-02-23 21:33:30 121

原创 Java语言的入门总结与归纳(五)

前言本小节所介绍的Java语言基础语法知识为慕课网上的课程学习笔记。Java语言中的异常与异常处理异常概念:阻止当前方法或作用域,称之为异常异常处理的作用和意义:能够将异常提示给编程人员或用户,使得本来已经中断的程序以适当的方式运行或退出,并且能够保存用户的当前操作或者进行数据回滚,最后再把占用的资源释放掉。Java异常体系结果简介· Throwable类:Java中所有的异常类...

2019-02-21 16:36:02 243

原创 java语言的入门总结与归纳(四)

前言本小节所介绍的java语言基础语法知识为慕课网上的课程学习笔记。同时,制作了一个阶段性的小程序——“答答租车”小程序。一、有关于类的核心知识点类是对象的类型,是具有相同属性和方法的一组对象的集合属性的概念:对象具有的各种特征,每个对象的每个属性都拥有特定值方法的概念:对象执行的操作类与对象的关系:类是抽象的概念,而对象是一个具体的实体,对象是类的实例化和具体化。所有Jav...

2019-02-14 16:52:05 206

原创 java语言的入门总结与归纳(三)

前言本小节主要介绍当使用Eclipse开发java程序时的一些步骤、项目导入和导出以及一些java语言的基础语法知识等。一、通过使用Eclipse开发java程序的步骤:创建java项目(File—>new—>Java Project新建一个Java工程文件)创建程序包(目的:为了便于程序(源代码文件)的管理,可将不同的源代码文件放到指定的包下面,避免重名问题)(在工程文...

2019-02-08 12:21:10 419

原创 java语言的入门总结与归纳(二)

前言本小节用于讲解如何通过使用“记事本”编写Java程序步骤新建一个文件,并修改其名称及后缀名,如“HelloWorld.java”。(默认的后缀名是以.txt结尾的,需要将其修改为.java)使用记事本打开编写Java源文件(以.java结尾的文件),然后保存。如:public class HelloWorld{ public static void main(Stri...

2019-02-03 21:15:49 129

原创 java语言的入门总结与归纳(一)

前言从这一篇文件开始,我打算做一整套的关于java语言的入门总结和归纳。原因有以下几点:对自己的学习做一个整体的记录。java语言是绝大多数高校计算机专业必开的一门编程语言,很多学生在学习的过程中都会遇到很多的坑,我也不例外,而作为一个从事互联网行业的人,本身就受到开源、开放共享等文化的影响,这在上世纪60年代阿帕网(互联网的前身)的架构设计上就已经埋下了伏笔。所以我想把踩过的一些坑,...

2019-01-27 16:23:27 354

原创 十速单片机学习归纳总结(五):呼吸灯实验

前言这篇文章用来记录呼吸灯实验的设计思路并进行经验的归纳总结源代码main.h文件#ifndef __main_h#define __main_h #define P_led1 P2_0#define P_led2 P2_1#define F_led1On() P_led1 = 0#define F_led1Off() P_led1 = 1#define F_led2...

2019-01-25 21:11:11 3622

原创 十速单片机学习归纳总结(四):LED闪烁实验

前言通过前一篇文章的分享,我们已经成功搭建好了一个普适性的单片机框架,而这篇文章我们将开始编写第一个实验:LED闪烁实验。代码的编写均在VSCode编辑器中进行;编写代码的文件为main.c文件和main.h文件!步骤一首先需要先在单片机上任意找一个IO口,如:P2_0,接着在main.h文件中写入代码:#define P_led1 P2_0#define F_led1On() ...

2019-01-25 12:41:15 1555

空空如也

空空如也

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

TA关注的人

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