自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何高效的触发设备离线

业务场景业务开发过程中,我们经常会需要判断远程终端是否在线,当终端离线的时候我们需要发送消息告知相应的系统,例如:设备通过mqtt与服务端进行交互,通过心跳来上报设备的运行状态,如果超过30秒未上报设备信息则判断设备离线关闭相应的连接通道一般处理这种业务场景有2种比较常见的方法轮询法使用一个Map<uid, last_time>来记录设备每次心跳的最后时间,当设备发送心跳...

2020-03-31 20:05:10 2567

原创 redis数据类型

前面结算了底层的数据类型。接下来介绍redis的五大基本类型string、hash、list、set、zset,为了便于操作,Redis定义了redisObjec结构体来表示string、hash、list、set、zset五种数据类型。 typedef struct redisObject { //ype表示具体的数据类型,也就是string、hash、list、set、zset ...

2019-03-19 23:51:49 140

原创 redis底层数据结构

Redis 是一个基于键值对(key-value)的分布式存储系统。它常用的类型主要是 String、List、Hash、Set、ZSet 这5种。通过学习其底层数据类型,来探究其存储过程。redis底层数据结构主要有:简单动态字符串(SDS),链表,字典,跳跃表,整数集合,压缩列表。1. 简单动态字符串先看其底层源码/* * 保存字符串对象的结构 */ struct sd...

2019-03-19 23:51:15 390

原创 Spring源码-bean获取

Spring有两个核心接口:BeanFactory和ApplicationContext,其中ApplicationContext是BeanFactory的子接口。他们都可代表Spring容器,Spring容器是生成Bean实例的工厂,并且管理容器中的Bean。但是 ApplicationContext 提供了更多的功能,包含了 BeanFactory 的所有功能。通常情况下,在大多数应用中都使用...

2019-02-15 16:29:15 122

原创 java多线程之四种常用线程池

在我们web项目中经常会碰到请求量非常大的需求。这时我们会开启多个线程来处理请求。但是线程的创建和销毁的开销是非常大的。有的时候甚至比线程实际运行时间还长。除此以外如果我们为每个请求都创建线程。在请求量非常大的情况下。会在jvm创建大量的线程。不仅占用了很大的资源。也会出现内存用完或切换过度的问题。线程池为线程生命周期开销问题和资源不足问题提供了解决方案。通过对多个任务重用线程,线程创建的开销被分...

2019-01-24 22:20:06 308

原创 java集合之CopyOnWriteArrayList

现在项目面临的并发场景越来越多。而像vector,hashTable这一类集合虽然保证的线程的安全行。但是无法兼顾性能。所以出现了如ConcurrentHashMap这一类兼顾性能与线程安全的集合。而对于List和Set同样也有新的线程安全集合——CopyOnWriteArrayList。Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一...

2019-01-23 20:59:10 517

原创 java集合之Set集合

Set集合是我们使用较少的一种集合。它为系统提供了一种无重复值的集合。主要依靠Map的实现类来实现存储。主要的实现类有HashSet,TreeSet和LinkedHashSetHashSetHashSet主要依靠hashMap实现数据的存储。通过查看其源码我们可以很容易的分析其存储过程。先看构造方法 private transient HashMap&amp;lt;E,Object&amp;gt; m...

2019-01-22 22:47:34 290

原创 Java集合之Map集合

Map是我们平时使用非常频繁的一种集合,因为Map 提供了一个更通用的元素存储方法。Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值,其主要的实现类有HashMap,Hashtable,ConcurrentHashMap(JDK1.8)HashMapHashMap 是一个散列表,它存储的内容是键值对(key-value)映射。这里要先了解两个概念:“初始容量” 和...

2019-01-14 12:39:40 202

原创 java集合框架之List集合

list集合是工作中使用最频繁的一种集合。它是一种有序的集合结构。可以用于存储重复的元素。通过索引位置我们可以快速的定位元素进行操作。他的实现类主要有三个ArrayList,LinkedList,Vector。ArrayListArrayLis是使用最频繁的一种集合。它是可以动态增长和缩减的索引序列,它是基于数组实现的List类,为什么说它是基于数组实现的呢我们可以看JDK的源码进行分析。...

2019-01-13 15:01:43 224

原创 mysql简单性能调优(一)

以前都是做小项目,数据库表的数据一般都不超过十万条。最近接手一考试项目,个别表的数据已经超过四百万的数据量。数据库一直没有优化过,所幸表字段不多,并没有照成很大的隐患。借此机会学习一下mysql的性能调优。mysql读取sql语句顺序一条sql语句经过机器解析,会分成若干个读取步骤。机器根据步骤来进行全表扫描匹配查询出我们想要的结果。mysql的顺序步骤为:FROM&gt;ON–JOIN&...

2018-11-01 11:14:54 568

原创 SpringBoot整合Druid连接池

SpringBoot 1.x版本默认使用的的tomcat的jdbc连接池。前期快速开发并没有采用更好的连接池。由于jdbc性能,稳定性,监控能力都不如druid连接池。所以将连接池更改为druid连接池。 一. maven引入依赖包 &lt;!--阿里连接池--&gt; &lt;dependency&gt; &lt;groupId...

2018-06-01 15:42:53 1752 1

原创 SpringBoot整合shiro(二)自定义sessionManager

传统结构项目中,shiro从cookie中读取sessionId以此来维持会话,在前后端分离的项目中(也可在移动APP项目使用),我们选择在ajax的请求头中传递sessionId,因此需要重写shiro获取sessionId的方式。自定义ShiroSessionManager类继承DefaultWebSessionManager类,重写getSessionId方法,import org.ap...

2018-05-28 16:49:37 20800 7

原创 SpringBoot整合shiro(二)跳转异常,缓存

前面发那篇文章忘记贴怎么开启接口的权限了这里进行补充@RestController@RequestMapping("user")public class UserController(){ /** * 测试 * @return */ @RequestMapping("/test") //拥有此权限的才可以访问 @Requir...

2018-05-28 16:38:46 1983

原创 SpringBoot整合shiro(一)基础配置

公司项目采用的spring-boot框架。在做用户权限功能的时候准备采用shiro权限框架。前面也考虑过spring家族的spring security安全框架。但是经过网上查询对比最终选择了shiro。因为shiro含有基本的安全控制功能,并且配置更为简单,使用也更加简洁。 首先引入shiro依赖jar包 &lt;dependency&gt; &lt;...

2018-05-28 16:14:47 14777 8

原创 MyBatis初探——增删改查

MyBatis的sql语句

2017-06-21 11:37:30 213

原创 MyBatis初探——MyBatis配置

MyBatis的简介和配置

2017-06-20 17:29:21 330

原创 web框架学习前复习——JDBC

JDBC编码步骤

2016-08-09 17:58:34 216

原创 web框架学习前复习——mysql命令

1数据库库操作创建一个数据库分库mytestcreate database MYTEST;查看当前数据库有多少分库show databases;查看数据库的创建细节show create database MYTEST;创建一个使用gbk字符集的分库mytest1create database MYTEST1 character set gbk;创建一个使用gbk字符集并带有效验规则

2016-08-09 13:52:01 244

原创 web框架——struts2操作

struts2主要写一些学习的常见操作,跟着别人的视频学的希望大家喜欢。一,环境的搭建1.拷jar包就不用说了,网上下好jar包将里面案例的jar包加载到项目就好2.配置核心过滤器。配置信息写在WEB-INF的web.xml中。高版本是没有自动建立这个xml文档的,如果没有就自己建一个开头的写法网上都有实在不行就拷贝。不写在xml文档中好像也可以,但是我目前不知道怎么好以后知道了再分享。<f

2016-08-08 22:59:05 237

原创 web框架——struts2概述

struts2 学习了几天struts2框架总结一下所学的知识,感谢各位大神在博客的分享以及对各种问题的回答,其中发现一篇对struts2的内核分析文章分享给大家 https://developer.ibm.com/cn_answers/bluemix/struts的流程图在此讲解一些表面的一些流程,内核就不分析了。因为是为了就业所以并没有花太多时间在内核上,希望以后有时间能好好学习。

2016-08-08 21:42:35 305

原创 web框架学习前复习——filter

filter依然是简单介绍。刚开始为了就业只能理解个大概。以后有时间要慢慢研究这一个灵魂功能

2016-08-06 22:39:48 217

原创 web框架学习前复习——动态代理

动态代理动态代理涉及的内核思想比较深,现在暂时无法理解其在java虚拟机中的具体实行过程但是可以做大概的理解。有动态代理就有静态代理,其实动态代理的产生就是为了解决静态代理所产生的大量实例类。在静态代理中代理类和结果类实现了共同的接口,我们通过代理类来访问结果类。用户可以在代理类的方法中进行自定义可以在进行结果类之前和之后增加自己的操作。最形象的例子就是火车站的售票点和街道代售点了。它们的功能是一

2016-08-06 22:18:53 207

原创 web框架学习前复习——ajax

初学ajax的一些简单体验。毕竟初学还没有熟练掌握。写的都是一些简单的介绍

2016-08-04 11:19:02 208

原创 web框架学习前复习——JSP

JSPJava Server Pages简称JSP(实际上就是Servlet)JSP可以理解为HTML+javaHTML:静态页面,不能包含java代码,只能有HTML有关的标记Servlet:写java代码,做页面的输出,不是很方便(开发效率很低)JSP脚本表达式(expression)用于将程序数据输出到客户端语法:<%= 变量或表达式 %>举例:当前时间:<%= new java.

2016-07-30 13:54:48 333

原创 web框架学习前复习——Servlet

ServletServlet是一个运行在服务器端的Java小程序,通过HTTP协议用于接收来自客户端请求,并发出响应. servlet方法: public void service(ServletRequest req,ServletResponse res)throws ServletException,java.io.IOException; ServletRequest

2016-07-30 13:24:43 270

原创 web框架学习前复习——http协议

http协议http协议也叫超文本传输协议。主要由请求部分和响应部分组成。 协议有2个版本 HTTP1.0:每次发出请求都需要建立网络连接 HTTP1.1:(主流)在一次网络连接上发出多次请求和得到多次响应。多了一些头。 http协议请求部分由客户端发出主要包括请求行,请求消息头,请求正文 请求行:GET /app1/1.html HTTP/1.1

2016-07-30 12:09:39 211

原创 web框架学习前复习——xml(2)

xmlSAX解析xml文件<?xml version="1.0" encoding="UTF-8"?><书架> <书> <书名>书名1</书名> <作者>作者1</作者> <售价>2</售价> </书> <书> <书名>书名2</书名> <作者>作者2</作者> <售价>10

2016-07-30 11:35:29 208

原创 web框架学习前复习——xml(1)

xmlxml声明(必须出现在文档的第一行) 示例:<?xml version="1.0" encoding="UTF-8"?> version:属性。取值,1.0.当前使用的XML的版本 encoding:当前xml文件使用的编码。默认是UTF-8 standalone:属性说明文档是否独立,可不写xml标签为自定义标签,由一个根标签嵌套子标签。不可交叉嵌套与ht

2016-07-30 11:00:37 408

原创 web框架学习前复习——jsDom

DomDocument Object Model即文档结构模型。就是把文档看做一个document对象,对象之间靠节点Node连接。 Document:代表整个文档 Element:代表一个标记(元素) Text:标记中的文本 Attribute:代表一个属性。元素才有属性

2016-07-30 10:13:14 301

原创 web框架学习前复习——JS

javascript JavaScript一种直译式浏览器客户端脚本语言,语言交互性好,由于其不可访问硬盘内容所以安全性能高,而且可以在各大浏览器中直接编写所以跨平台性好。主要学习其与html交互。 JavaScript与html的结合方式 1)html的提供了一个标签<script type="text/javascript">javascript的代码</scri

2016-07-30 00:06:37 266

原创 web框架学习前复习——css

css的一些简单了解。不清楚主要的内容。因为博主自学时间有限,所以没有花时间在前端上面。只是做了简单的了解。主要学习重点放在后端。部分内容复制老师讲课笔记

2016-07-29 23:14:41 250

原创 web框架学习前复习——html

主要复习了学习中的一些html基本语言以及格式。还有一些简单标签的使用。html语言较为简单。功能单一但是属性值众多 。灵活运用各种标签的属性能够展现出漂亮的静态页面

2016-07-29 22:51:49 276

空空如也

空空如也

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

TA关注的人

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