• 没有人是一座孤岛 万物互联才是未来

    6月2日20点,在外界瞩目之下,HarmonyOS 2及华为全场景新品发布会如期而至,HarmonyOS 2正式版面向全球正式发布。“万物互联时代,没有人会是一座孤岛。”这是华为消费者业务CEO余承东在主题演讲中说的一句话。这句话意味深长,我们处在一个万物互联、万物智能的时代,互联网、社交网络高度发达。每一个人都通过互联网、智能终端、社交网络连接起来。在经济全球化的背景下,华为...

    Android 2021年06月03日 46 0
  • 基于netty的构建一个群聊系统

    要求1.群聊系统可以实现服务器端和客户端之间的数据简单通讯(非阻塞)2.通过系统可以实现多人群聊3.服务器端:可以监控用户上线,离线,并实现消息转发功能4.客户端:通过channel可以无阻塞发送消息给其它所有用户,同时可以接受到其它用户发送的消息(由服务端转发得到)代码实现(服务端) import java.io.IOException; import java.net.I...

    Java 2021年05月25日 94 0
  • Android Studio 4.2 现已发布

    作者 / Android 产品经理 Jamal Eason我们高兴地宣布,Android Studio 4.2 现已发布,并可以从稳定版发布渠道中下载。此版本的重心在于推出经过升级的 IntelliJ 平台以及一些新功能,这些新功能旨在提高 Android 应用开发者的工作效率。我们知道,有时将应用项目升级到最新版本并非易事。为了解决这一问题,我们在 Android Studi...

    Android 2021年05月19日 229 0
  • 聊聊OkHttp实现WebSocket细节,包括鉴权和长连接保活及其原理!

    一、序OkHttp 应该算是 Android 中使用中使用最广泛的网络库了,我们通常会利用它来实现 HTTP 请求,但是实际上它还可以支持 WebSocket,并且使用起来还非常的便捷。那本文就来聊聊,利用 OkHttp 实现 WebSocket 的一些细节,包括对 WebSocket 的介绍,以及在传输前如何做到鉴权、长连接保活及其原理。二、WebSocket 简介2.1 为...

    Android 2021年04月26日 125 0
  • 迈向 64 位时代,Visual Studio 2022 要来啦 C#

    迈向 64 位时代,Visual Studio 2022 要来啦

    Visual Studio 2022 首个公开预览版即将于今年夏季同开发者见面。Visual Studio 的这套主要版本将带来更快的运行速度、更低的访问门槛以及更轻的体量设计,专为学习者以及构建工业规模解决方案的用户们打造而成。此外,新的 Visual Studio 也将第一次迈入 64 位时代,为您带来更整洁、更智能、更具操作友好性的使用体验。时至今日,开发团队成员们的地理...

    C# 2021年04月23日 166 0
  • Spring Boot 极简集成 Shiro

    1. 前言Apache Shiro是一个功能强大且易于使用的Java安全框架,提供了认证,授权,加密,和会话管理。Shiro有三大核心组件:Subject:即当前用户,在权限管理的应用程序里往往需要知道谁能够操作什么,谁拥有操作该程序的权利,shiro中则需要通过Subject来提供基础的当前用户信息,Subject 不仅仅代表某个用户,与当前应用交互的任何东西都是Subjec...

    Java 2021年04月21日 181 0
  • MiniDao1.7.1 版本发布,轻量级Java持久化框架

    项目介绍MiniDao 是一款轻量级JAVA持久层框架,基于 SpringJdbc + Freemarker 实现,具备Mybatis一样的SQL分离和逻辑标签能力。Minidao产生的初衷是为了解决Hibernate项目,在复杂SQL具备Mybatis一样的灵活能力,同时支持事务同步。当前版本:v1.7.1 | 2021-03-29源码下载https://github.com...

    Java 2021年03月30日 218 0
  • Julia 1.6发布,亮点功能介绍

    日前,Julia语言官方发布了新的版本1.6。据悉该版本有可能是下一个Julia的长期支持(LTS)版本。那么该版本带来了哪些亮点呢?下面一起学习一下。概述作为一个集万种风华于一体的明星语言,一直是语言界一个特别生,特别吸引眼球。他将C语言的速度、Ruby的灵活、Python的易用性全整合在一起,支持并行处理,易于学习和使用,尤其适合科学和工程计算该版本。此次推出的1.6版本更...

    Python 2021年03月29日 293 0
  • ConcurrentSkipListMap原理

    跳表为了引出 ConcurrentSkipListMap,先带着大家简单理解一下跳表。对于一个单链表,即使链表是有序的,如果我们想要在其中查找某个数据,也只能从头到尾遍历链表,这样效率自然就会很低。跳表就不一样了。跳表是一种可以用来快速查找的数据结构,有点类似于平衡树。它们都可以对元素进行快速的查找。但一个重要的区别是:对平衡树的插入和删除往往很可能导致平衡树进行一次全局的调整...

    Java 2021年03月18日 357 0
  • ruoyi前后端分离框架增加只通过用户名认证获取token

    背景:最近选型使用ruoyi的前后端分离框架进行研发,除了管理系统部分还有小程序部分功能,需要提供api给小程序部分,而小程序使用openid关联用户名,这样希望提供只根据用户名能够获取token进行后续后台服务接口的访问需求,具体改造如下:增加5个关键类和一个测试类 修改一个config类,具体如下:拦截特殊验证的拦截器类package com.ruoyi.framework...

    Java 2021年03月18日 484 0
  • 深入理解Java文件读写的底层实现

    继 《Java文件的简单读写、随机读写、NIO读写与使用MappedByteBuffer读写》,本篇通过调用Linux OS文件操作系统函数实现copy命令以加深我们对Java文件读写底层实现的理解。本篇内容包括:文件操作系统函数实战:实现文件拷贝命令实战:使用mmap实现文件拷贝命令文件操作系统函数本篇将介绍的函数有:open、close、write、lseek、read、m...

    Java 2021年03月10日 324 0
  • HBase常用Api操作

    一、 环境准备新建项目后在pom.xml中添加依赖:<dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-server</artifactId> <version>1.3.1</version></depend...

    Java 2021年03月09日 336 0
  • QtScrcpy - 开源的投屏控制软件

    QtScrcpy 是一款 开源 的可以通过 USB 或 WiFi 连接 Android 设备的 投屏控制 软件,不需要 root 权限可最多支持 16 个安卓设备 同时连接。跨平台 支持在 Windows、macOS、Linux 操作系统上 安装使用,不需要在 手机 上 安装应用 即可 进行投屏。先访问 分享网盘 下载 程序压缩包,将其解压至 D:\Program Files ...

    Android 2021年03月08日 886 0
  • 集群分布式下日志架构的搭建

    问题1.生产环境中项目节点过多,如何集中管理日志?2.多节点项目中,出现问题如何定位到某个具体节点出现问题?进而迅速获取该节点日志?3.EFK是如何收集管理日志的?演示。4.搭建过程日志基础架构解决效果非容器日志查看效果容器日志查看效果思路首先确定那种日志,容器或者非容器针对于非容器日志,直接采用filebeat采集固定目录日志即可,只不过在采集参数上可以有所调整,可以直接将业...

    Java 2021年03月08日 280 0
  • java为我们已经提供了各种锁,为什么还需要分布式锁?

    目前的项目单体结构的基本上已经没有了,大多是分布式集群或者是微服务这些。既然是多台服务器。就免不了资源的共享问题。既然是资源共享就免不了并发的问题。针对这些问题,redis也给出了一个很好的解决方案,那就是分布式锁。这篇文章主要是针对为什么需要使用分布式锁这个话题来展开讨论的。不喜勿喷。前一段时间在群里有个兄弟问,既然分布式锁能解决大部分生产问题,那么java为我们提供的那些锁...

    Java 2021年03月08日 332 0
  • 分布式锁设计方案

    分布式锁设计方案一.需求背景1.背景系统背景解决方案单机系统单体单机部署的系统,需要对某一个共享变量进行多线程同步访问的时候,所有的请求都会分配到当前服务器的jvm内部,然后映射为操作系统的线程进行处理。而这个共享变量只是在这个jvm内部的一块内存空间。使用java并发处理的相关API进行互斥控制(如ReentrantLock或Synchronized)分布式系统由于分布式系统...

    Java 2021年03月08日 250 0
  • DocFetcher - 开源的文件内容搜索工具

    DocFetcher 是一款 开源 的 文件内容 搜索工具,它除了允许你 搜索电脑 上的 文件名称 查找文件以外,还支持通过 文件内容 进行查找 所需文件。除了 .txt 格式以外,还支持 .xlsx 等 常见格式,该软件支持在 Windows、macOS、Linux 操作系统上 运行使用,建议有 使用需求 的用户 安装使用。DocFetcher 依赖 JRE 环境,安装软件 ...

    Java 2021年03月07日 369 0
  • Java实现PDF首页转缩略图

    一、maven安装<dependency> <groupId>org.icepdf.os</groupId> <artifactId>icepdf-core</artifactId> <version>6.2.2</version> </dependency>...

    Java 2021年03月05日 268 0
  • dubbo filter实现参数透传

    在项目中转递参数通常是在接口中传递,然后在每个方法中接受这些参数处理。dubbo提供了rpc上下文可以实现设置和接受这些参数,实现我们的参数透传。(本文于2019年11在个人博客简书发表)1.RpcContext利用RpcContext实现consumer和provicer参数传递例如:消费端: RpcContext.getContext().setAttachment("bi...

    Java 2021年03月05日 527 0
  • PHP调优入门 PHP

    PHP调优入门

    PHP应用的性能并不是单纯的技术问题,它对商业层面的影响也很大。如果你认为几微秒不值得你花时间去提升,那说明你还没有到达高级程序员的水平。本公众号专注于PHP语言的学习教程,欢迎关注我们。性能的价值性能对PHP应用(软件)的意义,主要是三个方面。其一是用户体验,更快的速度无疑会让用户体验更好;其二是更快的速度能够提升转化率;其三,高性能的应用具有更好的可伸缩性(scalabil...

    PHP 2021年03月03日 251 0
  • 自己动手写SQL执行引擎

    自己动手写SQL执行引擎前言在阅读了大量关于数据库的资料后,笔者情不自禁产生了一个造数据库轮子的想法。来验证一下自己对于数据库底层原理的掌握是否牢靠。在笔者的github中给这个database起名为Freedom。整体结构既然造轮子,那当然得从前端的网络协议交互到后端的文件存储全部给撸一遍。下面是Freedom实现的整体结构,里面包含了实现的大致模块:最终存储结构当然是使用经...

    Java 2021年03月02日 228 0
  • 各类数据库驱动包

    我们在编译或使用一些数据同步软件时候,比如Datax、FlinkX、Kettle等,由于此类ETL软件连接的数据库较多,软件本身不提供各类数据库的驱动包,maven也无法找到相应的包,互联网上各类下载不是需要积分就是收费,很是不爽,因此通过在本人使用ETL软件过程中,整理的驱动包提供有需要的同胞使用,避免去互联网上花费较多的时间搜索。 Sybase驱动: jconn3-6.0...

    Java 2021年03月02日 460 0
  • JVM内存参数设置

    关于JVM内存参数设置有一点想法,在这里记录一下:JVM内存参数设置没有固定的设置,一般都是对系统的业务以及单个业务对象的数据大小有一个初步的预估后,结合实际的业务场景以及并发量,对JVM内存参数进行一个初步的设置,并根据系统的实际运行情况来不断地调整,最后达到最佳的参数配置。下面我就根据之前做做的一个活动协同配置中心的业务,给出一个我认为合理的JVM配置信息针对营销活动推送中...

    Java 2021年03月02日 303 0
  • JS 反爬:一分钟了解如何用 debugger 劝退爬虫

    背景爬虫之前,需要先对网站请求进行梳理,F12 打开浏览器的开发者模式是第一步,所以反爬虫的第一招就是,在开发者模式下让对手的浏览器进入 无限循环 debugger 。今天继续百度 “带有JS混淆加密的网站怎么破解”,看到一篇文章正打算参考测试时,浏览器就陷入了无限循环,两步之后,网站得意地宣布 “ 俺们是为人类服务的,你这机器就知难而退吧!”。好吧,知难而退之前,也得知道是怎...

    Python 2021年02月26日 393 0
  • Spring Boot部署JAR文件瘦身优化经验分享

    本文截取代码片段来自于对应的完整示例源码工程:https://gitee.com/xautlx/package-optimize-demohttps://github.com/xautlx/package-optimize-demo相关代码和配置均实际执行测试过,如在验证过程发现有任何问题可Issue反馈以便及时更正,感谢支持!概要说明随着Spring Boot的流行,大家体验...

    Java 2021年02月26日 209 0
  • Java基本数据类型及其包装类

    1、基本数据类型:Java基本数据类型共8种,整数型:byte,short,int,long;浮点型:float,double;字符型:char和布尔型:boolean。数据类型 /占用空间/ 取值范围/ 默认值byte / 1字节 / -128(-2^7)~+127(-2^7-1)0short / 2字节 / -32768(-2^15)~+32767(2^15-1)0int ...

    Java 2021年02月20日 244 0
  • 微信小程序web-view内嵌H5使用PHP完成支付功能 PHP

    微信小程序web-view内嵌H5使用PHP完成支付功能

    在开发过程中,遇到使用微信小程序web-view内嵌H5完成支付的业务,我们该怎么去实现? 一、设计思路1、使用PHP请求接口获取wx_data_package支付包数据 2、使用jweixin.js把wx_data_package数据传到小程序 3、小程序获取数据,调起支付界面完成支付,并返回支付是否成功 4、后台根据返回的数据判断支付是否成功,然后进行相关业务处理 二、前...

    PHP 2021年02月17日 453 0
  • PHP高级编程-回归原生态-谨防阻塞式调用 PHP

    PHP高级编程-回归原生态-谨防阻塞式调用

    4.4 谨防阻塞式调用PHP每次请求都会有单独的php-fpm进程响应和处理。php-fpm的进程模式又可以分为static静态执行、dynamic动态执行和ondemand模式。不管是何种执行方式,都是启动了一定数量的php-fpm进程来响应排山倒海般流量的请求。假设,这些进程全部都被占满时,系统就会出现异常、崩溃和无法响应新请求和新访问。识别哪些会产生阻塞式调用的操作,是预...

    PHP 2021年02月17日 276 0
  • PHP高级编程-回归原生态-空与非空

    第 4 章 回归原生态 就当前而言,PHP仍然是网站建设的主流编程语言之一。一方面,是得益于它自身的简单性,容易学习且快速上手;另一方面,得益于开源社区贡献的各种优秀框架、类库和项目。这些源代码下载到服务器后,简单配置一下,甚至都不需要二次开发就能直接使用,非常方便。但需要注意的是,别人提供、贡献的开源项目是可以减少我们重复开发的成本,并不意味着我们对原生态的PHP就可以置之...

    PHP 2021年02月17日 265 0
  • PHP高级编程-回归原生态-数组排序 PHP

    PHP高级编程-回归原生态-数组排序

    4.2 数组排序PHP里的数组实际上是一个有序映射。不管是队列、数组、栈还是字典,在使用PHP编程时,你都可以统一使用PHP的数组类型。这一节,我们只探讨关于PHP数组的排序,因为数组的排序是很多项目都会使用到的。虽然数据库也可以很方便进行排序,但在复杂、动态的业务规则下,更多需要在PHP代码层进行处理。因此加深对PHP数组的理解,对项目开发将大有禆益。4.2.1 一道面试题引...

    PHP 2021年02月15日 296 0