暂无个人介绍
凭借拥有庞大优秀影视资源,乐视超级电视在国内智能电视市场中取得相当不错的成绩。经过一年的静默,在 4月 14 日新品发布会上,乐视宣布进军智能手机行业,一口气推出了乐 1 、乐 1 Pro 、乐 1 Max 三款超级手机,其中乐 1 最低配机型定价 1499 元,在市场上多款 1500 元价位的智能手机产品中,乐 1 的硬件配置相当大气,采用联发科 MTK helio X10 八核处理器,5.5 寸 1080p 全高清屏幕,内置 3GB LPDDR3 运行内存和 16G 存储空间,从 Android 手机经常采用堆积硬件提高性能的角度看,乐 1 是一款性价比极高的大屏智能手机。
虽然去年网络电视盒子受到某些限制,但科技的发展和用户的需求并不因受限而停顿。在天猫、京东上随便可以搜索到非常多的网络电视盒子,每款盒子的性能、应用各不相同,如何选择一台网络盒子成了不少消费者最为头痛的问题。几个月前,雷科技曾比较和体验了百度影棒 3 、小米盒子增强版和七 V 盒子三款 4K 网络盒子,下文将继续通过性能、平台资源、应用、价格等方面比较一些近期热门的智能网络盒子。
一提到智能安防,大多数的人想到的都是智能摄像头,然而越来越多的厂商扎堆,让这个看似商机无限的智能安防行业,已经杀得招招见红,而就在此时,云丁网络推出了全新的智能安防产品——丁盯智能门磁。
无需任何操作,只要你悄悄地靠近它的身边,它会立刻感知你的存在,通过超大LED屏幕告诉你实时的天气情况和空气污染指数,自动读取周围智能健康产品的数据,为你呈现各种与健康密切相关的信息。这不是科幻小说里的场景,这是麦开here智能健康感知仪实现的功能。
在5月的11号下午,雷锋网与柴火创客空间举办了首场围绕硬件进行交流的“雷火沙龙”。在这次的交流会上,有三位创客向在场的创客展示了自己的产品,它们分别是蒋程宇的公益项目“一公斤电子”、王强独自一人花费四年时间打造的运用中文编程的开源硬件LinkBoy,还有曹思明的“FPS GUN”。
这两天看到了一个与Arduino UNO兼容的控制器模块,名叫Microduino。比起Arduino UNO,Microduino采取了核心和USB芯片分离方案,使得开发者可以在制作产品的过程中只使用核心板Microduino-Core(Microduino-Core+),方便将来对控制芯片的升级或降级,降低开发成本。
Arduino做为一款微控制器,最大的优点就是拥有丰富的接口、简便的编程环境并且提供了极高的自由度和可拓展性。
现在,国内硬件设备进入了一个热身的阶段,各个圈子之间也没有太多深入的交流。当我们真正面对到国内硬件开源的环境时,经常会发现不同的人会选择不同的切入点进入。
只对死锁代码感兴趣的可以直接跳到第三小节 必然死锁示例,如果对死锁还不太了解的,我们可以一起来讨论以下几个议题 什么是死锁? 死锁有什么危害和特点? 代码实现一个必然死锁的示例 分析死锁的过程
本文讨论了四种主要的 API 架构风格,比较它们的优缺点,并重点介绍每种情况下最适合的 API 架构风格。 两个单独的应用程序需要中介程序才能相互通信。因此,开发人员经常需要搭建桥梁——也就是应用程序编程接口(API),来允许一个系统访问另一个系统的信息或功能。
当我们映射 DTO 的时候,如果某些参数的值 MapStruct 的映射配置不能满足要求,可以使用自定义方法。 新增两个 DTO 类: UserCustomDTO 类里面包含了 UserExtDTO 对象。
1. 准备工作 因为本篇博客中涉及到用户切换,所以我需要提前准备好几个测试用户,方便后续切换。 Linux 中新建用户的命令是 useradd ,一般系统中这个命令对应的路径都在 PATH 环境变量里,如果直接输入 useradd 不管用的话,就用绝对路径名的方式:/usr/sbin/useradd 。
Spring Cloud 从H版本之后命名方式改为2020.x.x,话说为毛最新版本不是2021命名,来自强迫症的难受 使用组件列表: 注册中心:nacos,替代方案eureka、consul、zookeeper 配置中心: nacos ,替代方案sc config、consul config 调用:feign,替代方案:resttempate 熔断:sentinel、,替代方案:Resilience4j 熔断监控:sentinel dashboard 负载均衡:sc loadbalancer 网关:spring cloud gateway 链路:spring cloud sleuth+zi
SpringBoot全局异常准备 说明:如果想直接获取工程那么可以直接跳到底部,通过链接下载工程代码。 开发准备 环境要求: JDK:1.8 SpringBoot:1.5.17.RELEASE 首先还是Maven的相关依赖:
因为业务关系,要和许多不同第三方公司进行对接。这些服务商都提供基于http的api。但是每家公司提供api具体细节差别很大。有的基于RESTFUL规范,有的基于传统的http规范;有的需要在header里放置签名,有的需要SSL的双向认证,有的只需要SSL的单向认证;有的以JSON 方式进行序列化,有的以XML方式进行序列化。类似于这样细节的差别太多了。
1.使用LinkedHashSet删除arraylist中的重复数据 LinkedHashSet是在一个ArrayList删除重复数据的最佳方法。LinkedHashSet在内部完成两件事: 删除重复数据 保持添加到其中的数据的顺序
你只会用 StringBuilder/ StringBuffer 拼接字符串? 那你就 OUT 了!! 如果需要拼接分隔符的字符串,建议使用 Java 8 中的这款拼接神器:StringJoiner,你值得拥有。 StringJoiner 基本使用 字面上理解就是用来拼接字符串的,一般需要分隔符进行拼接,如:
Spring Boot 如何快速集成 Redis?没错,栈长本文教你,让大家少走弯路! 添加依赖 使用像 Redis 这类的 NoSQL 数据库就必须要依赖 spring-data-redis 这样的能力包,开箱即用,Spring Boot 中都封装好了: 引入spring-boot-starter-data-redis:
反射是java语言的一个特性,它允程序在运行时(注意不是编译的时候)来进行自我检查并且对内部的成员进行操作。例如它允许一个java的类获取他所有的成员变量和方法并且显示出来。Java 的这一能力在实际应用中也许用得不是很多,但是在其它的程序设计语言中根本就不存在这一特性。例如,Pascal、C 或者 C++ 中就没有办法在程序中获得函数定义相关的信息。(来自Sun)
Java中对象的创建 clone 顾名思义就是 复制 , 在Java语言中, clone方法被对象调用,所以会复制对象。所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象。
Spring Boot 2.x 已经发布了很久,现在 Spring Cloud 也发布了 基于 Spring Boot 2.x 的 Finchley 版本,现在一起为项目做一次整体框架升级。 升级前 => 升级后 Spring Boot 1.5.x => Spring Boot 2.0.2 Spring Cloud Edgware SR4 => Spring Cloud Finchley.RELEASE Eureka Server Eureka Server 依赖更新
引言 先来看一些APP的获取数据,诸如此类,一个页面获取N多个,多达10个左右的一个用户行为数据,比如:点赞数,发布文章数,点赞数,消息数,关注数,收藏数,粉丝数,卡券数,红包数……….. 真的是多~ 我们看些图:
多了个 Remote Development 远程开发菜单,目前还是 Beta 版本,Code With Me 这个早在 IDEA 2021.1 中就已经实现了,现在还可以直接通过 SSH 的方式远程开发。
其次,for (;;) 在Java中的来源。个人看法是喜欢用这种写法的人,追根溯源是受到C语言里的写法的影响。这些人不一定是自己以前写C习惯了这样写,而可能是间接受以前写C的老师、前辈的影响而习惯这样写的。 在C语言里,如果不include某些头文件或者自己声明的话,是没有内建的Bool / bool类型,也没有TRUE / FALSE / true / false这些Bool / bool类型值的字面量的。所以,假定没有include那些头文件或者自己define出上述字面量,一个不把循环条件写在while (...)括号里的while语句,最常见的是这样:
Spring Cloud 2021.0.0 号外,号外,Spring Cloud 2021.0.0 发布了! 距离上一版的《Spring Cloud 2020.0.4》也有一些日子了,栈长掐指一算,差不多 2 个多月吧。 现在在 Maven 仓库中已经可用了:
面对越来越多的高并发场景,限流显示的尤为重要。 当然,限流有许多种实现的方式,Redis具有很强大的功能,我用Redis实践了三种的实现方式,可以较为简单的实现其方式。Redis不仅仅是可以做限流,还可以做数据统计,附近的人等功能,这些可能会后续写到。 第一种:基于Redis的setnx的操作
前言 本章分为两个议题 如何正确关闭线程池 shutdown 和 shutdownNow 的区别 1.线程池示例
栈长刚看了下,才隔了一周左右的时间吧,Spring Boot 2.6.1 又来了: 这次我能说我真的跟不上了吗?我只想送它三个字:版本王! 这次不过是个修复版本,修复了 11 个 bug,以及文档优化,这没什么好说的了,通知到大家这个更新,有需要的可以享受免费升级。 下面给大家奉上这个版本的 Maven 依赖:
IDEA 提示 Field injection is not recommended 在使用IDEA 进行Spring 开发的时候,当你在字段上面使用@Autowired注解的时候,你会发现IDEA 会有警告提示:
AOP中有@Before,@After,@Around,@AfterRunning注解等等。 首先上下自己的代码,定义了切点的定义
什么是索引? 索引是辅助存储引擎高效获取数据的一种数据结构。
因为项目需要选择数据持久化框架,看了一下主要几个流行的和不流行的框架,对于复杂业务系统,最终的结论是,JOOQ是总体上最好的,可惜不是完全免费,最终选择JDBC Template。 Hibernate和Mybatis是使用最多的两个主流框架,而JOOQ、Ebean等小众框架则知道的人不多,但也有很多独特的优点;而JPA则是一组Java持久层Api的规范,Spring Data JPA是JPA Repository的实现,本来和Hibernate、Mybatis、JOOQ之类的框架不在同一个层次上,但引入Spring Data JPA之类框架之后,我们会直接使用JPA的API查询更新数据库,就
ShardingSphere-Jdbc定位为轻量级Java框架,在Java的Jdbc层提供的额外服务。它使用客户端直连数据库,以jar包形式提供服务,可理解为增强版的Jdbc驱动,完全兼容Jdbc和各种ORM框架
今天推荐三个插件,它们都是代码质量检测的神器。可以扫描检测出你项目中不符合规范的代码,他们分别是 SonarLint、SonarQube、Alibaba代码规约插件。
Docker 还活着。尽管它近两三年的境况并不理想,但它还在苦苦挣扎,试图找到自己的商业价值。就在上周,Docker 宣布更改 Docker 软件的许可条款。在不久的将来,为大企业工作的 Docker Desktop 专业用户需要付费订阅才能继续使用。 与此同时,Docker 还推出了一项专门针对企业的新订阅计划,即 Docker Business。新条款于 8 月 31 日生效,但 Docker 给出了截至 2022 年 1 月 31 日的宽限期,以便开发人员遵守新服务协议并在有需要的时候购买付费订阅。
数据库是应用及计算机的核心元素,负责存储运行软件应用所需的一切重要数据。为了保障应用正常运行,总有一个甚至多个数据库在默默运作。我们可以把数据库视为信息仓库,以结构化的方式存储了大量的相关信息,并合理分类,方便搜索及使用。 因此,数据库设计成为软件开发中的重要一环,对于开发者来说,设计一个高效的数据库至关重要。那么,为什么数据库设计很重要,“好”的标准又是什么?本文将做以介绍。
近日,国际电气与电子工程学会(Institute of Electrical and Electronics Engineers,简称 IEEE)宣布,授予 IEEE 终身 Fellow Jacob Ziv 2021 年度 IEEE 荣誉勋章。
你已经或者正在实现API; 你正在考虑选择一个合适的方法保证API的安全性; JWT和OAuth2比较?
前言 曾经遇到的面试题,觉得挺有意思,来说下我的答案及思考过程。 首先,我们要知道的是,图片一般有两种传输方式:base64 和 file对象。
请求顺序依赖 在这种场景中,首先还是业务的复杂度决定了代码的复杂度。首先我们来看一个在前端和node都有可能出现的一个简单的例子: 我们有 A, B, C, D 四个请求获取数据的函数(函数自己实现), C 依赖 B 的结果,D 依赖 ABC 的结果,最终输出 D 的结果。
JdbcRowSetImpl
现在几乎大部分的 App 都支持使用多个第三方账号进行登录,如:微信、QQ、微博等,我们把此称为多账号统一登陆。而这些账号的表设计,流程设计至关重要,不然后续扩展性贼差。 本文不提供任何代码实操,但是梳理一下博主根据我司账号模块的设计,提供思路,仅供参考。
肯定有不少人会想:这怎么可能呢? 就算用几乎零配置的 SpringBoot,写一个最简单的接口也得有 3 行代码啊!
1、选择最合适的字段属性 Mysql是一种关系型数据库,可以很好地支持大数据量的存储,但是一般来说,数据库中的表越小,在它上面执行的查询也就越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度舍得尽可能小。 例如:在定义邮政编码这个字段时,如果将其设置为char(255),显然给数据库增加了不必要的空间,甚至使用varchar这种类型也是多余的,因为char(6)就可以很好地完成了任务。同样的如果可以的话,我们应该是用MEDIUMINT而不是BIGINT来定义整形字段。
今早,看到CSDN里推荐的Python获取女朋友发来加班拍照定位地址是酒店的段子,本来准备验证下,顺便练练手的,最后,安装执行pip install json报没有指定版本号。 一怒之下搞我大JAVA,验证可行与场景体遐想。废话不多说,先上硬货。
是的,如果你想搜索 List 集合,在 Java 8 之前可以使用自身的 contains/ indexOf 方法来查找元素,但仅限是完整元素,而不能模糊搜索或者自定义搜索,这时候确实只能遍历。
要想深入掌握和了解 DDD 领域驱动设计的核心,那无论如何也绕不开两大较为抽象的概念——“贫血模型”、“充血模型”: 贫血模型即事务脚本模式。 充血模型即领域模型模式。
分布式事务以及分布式锁是分布式中难点,分布式事务一篇文章可能写不完,我的习惯时从基本概念出发,一步一步开始介绍,前面会先梳理事务中一些基本概念,对基本概念十分清楚的话可以直接看"一致性讨论"以及后面的部分。予己方便总结回顾、与他交流分享。 什么是分布式事务
Java内存模型 Java内存模型由Java虚拟机规范定义,用来屏蔽各个平台的硬件差异。简单来说: 所有变量储存在主内存。 每条线程拥有自己的工作内存,其中保存了主内存中线程使用到的变量的副本。 线程不能直接读写主内存中的变量,所有操作均在工作内存中完成。 线程,主内存,工作内存的交互关系如图。
Spring 中的一些注解 1. @Component 和 @Bean 的区别是什么? 作用对象不同:@Component 注解作用于类,而 @Bean 注解作用于方法、 @Component 通常是通过路径扫描来自动侦测以及自动装配到 Spring 容器中(我们可以使用 @ComponentScan 注解定义要扫描的路径从中找出标识了需要装配的类自动装配到 Spring 的 bean 容器中)。@Bean 注解通常是我们在标有该注解的方法中定义产生这个 bean,@Bean 告诉了 Spring 这是某个类的实例,当我们需要用它的时候还给我。