java技术圈 为您找到相关结果 59

ThreadLocal为什么要用WeakReference

先上一张图看一下ThreadLocal的内部结构,每个Thread对象内部都维护了一个ThreadLocal.ThreadLocalMap 我们在上图看到的就是三个Thread对象内部格子的ThreadLocalMap 这里要说的不是ThreadLocal,是ThreadLocal为什么要用WeakReference static class ThreadLocalMap { static class Entry extends WeakReference> { Entry(ThreadLocal k, Object v) { super(k); value = v; } 复制代码 弱引用WeakReference 弱引用只要发生了gc就会被回收,但前提是...阅读全文

博文 2023-05-23 03:39:09 掘金

【Java】使用fastjson进行序列化时出现空指针异常问题研究 - shanml

最近在使用fastjson的JSONObject.toJSONString()方法将bean对象转为字符串的时候报如下错误: com.alibaba.fastjson.JSONException: write javaBean error, fastjson version 1.2.58, class com.sun.proxy.$Proxy395, fieldName : 0 at com.alibaba.fastjson.serializer.JavaBeanSerializer.write(JavaBeanSerializer.java:523) at com.alibaba.fastjson.serializer.JavaBeanSerializer.write(JavaBeanSe...阅读全文

博文 2024-02-05 16:14:20 博客园

npm install XXX 、package.json 中的bin、node_moduels 下.bin目录三者关系_node_modules bin 文件怎么创建

官方链接 npm install xxx会在node_modules下安装对应的依赖,如果安装的依赖下面的package.json目录里面有bin配置, 比如cross-env 那么就会在node_modules目录下的.bin目录生成对应的脚本文件 所以我们可以在package.json中的scripts中使用对应的脚本。 官方翻译 bin 许多软件包都有一个或多个可执行文件,他们希望将它们安装到 PATH 中。npm 使这非常容易(事实上,它使用此功能来安装“npm”可执行文件。) 要使用它,bin请在 package.json 中提供一个字段,该字段是命令名称到本地文件名的映射。安装时,npm 会将该文件符号链接到 prefix/bin全局安装或./node_modules/.bin/...阅读全文

博文 2024-02-12 20:37:02 CSDN博客

MyBatis-Plus 效能提升秘籍:掌握这些注解,事半功倍!

MyBatis-Plus是一个功能强大的MyBatis扩展插件,它提供了许多便捷的注解,让我们在开发过程中能够更加高效地完成数据库操作,本文将带你一一了解这些注解,并通过实例来展示它们的魅力。 ## 一、@Tablename注解 这个注解用于指定实体类对应的数据库表名。如果你的表名和实体类名不一致,就需要用到它: ``` @TableName("user_info") public class UserInfo { // 类的属性和方法 } ``` 在上述代码中,即使实体类名为UserInfo,但通过@TableName注解,我们知道它对应数据库中的"user_info"表。 ## 二、@Tableld注解 每个数据库表都有主键,@TableId注解用于标识实体类中的主键属性。通常与@Tab...阅读全文

博文 2024-02-29 14:43:52 YDYXCODE

Hive解析Json数组超全讲解 - 五分钟学大数据

在Hive中会有很多数据是用Json格式来存储的,如开发人员对APP上的页面进行埋点时,会将多个字段存放在一个json数组中,因此数据平台调用数据时,要对埋点数据进行解析。接下来就聊聊Hive中是如何解析json数据的。 本文首发于公众号【五分钟学大数据】 Hive自带的json解析函数 1. get_json_object 语法:get_json_object(json_string, '$.key') 说明:解析json的字符串json_string,返回path指定的内容。如果输入的json字符串无效,那么返回NULL。这个函数每次只能返回一个数据项。 示例: select get_json_object('{"name":"zhangsan","age":18}','$.name')...阅读全文

博文 2024-04-01 19:14:29 博客园

MySQL错误-this is incompatible with sql_mode=only_full_group_by完美解决方案

项目场景: 有时候,遇到数据库重复数据,需要将数据进行分组,并取出其中一条来展示,这时就需要用到group by语句。 但是,如果mysql是高版本,当执行group by时,select的字段不属于group by的字段的话,sql语句就会报错。报错信息如下: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘数据库名.表名.字段名’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_gro...阅读全文

博文 2024-05-14 21:45:29 CSDN博客

ZOS对象存储跨域资源访问的实现和使用

本文分享自天翼云开发者社区《ZOS对象存储跨域资源访问的实现和使用》,作者:对象存储二三事跨域的定义跨域指的是从一个域名去请求另外一个域名的资源,即跨域名请求。跨域时,浏览器不能执行其他域名网站的脚本,这是由浏览器的同源策略造成的,是浏览器施加的安全限制。同源策略是一种约定,是浏览器最核心也最基本的安全功能,不同源的客户端脚本在没有明确授权的情况下,不能读写对方资源 ,这是一个用于隔离潜在恶意文件的重要安全机制。同源的定义所谓同源是指:请求的url与当前网页的协议、域名、端口三者都相同,只要三者之间有一个不同,就不是同源,发送的请求即跨域请求。基于同源策略,浏览器都会阻止跨域请求,如下图所示:​CORSCORS是一个W3C标准,全称是跨域资源共享(cross-origin resource ...阅读全文

博文 2024-08-02 16:53:47 Tianyiyun

IPv6的优势分析

本文分享自天翼云开发者社区《IPv6的优势分析》,作者:没烦恼IPv6的优势分析1.更大的地址空间IPv6中IP地址的长度为128位,其地址容量则达到了2^128个,远远大于IPv4地址容量,足以满足日益增长的互联网用户以及未来物联网地址的分配需求。2.报文结构更精简IPv4的报文长度不固定,且有一个变化无常的 option 字段来实现一些特定功能,因此整体结构比较复杂。而IPv6的报文长度则是固定的,且将 option 字段、分片的字段的功能转移到IPv6扩展报头中,这就极大精简了 IPv6 的报文结构,更多的功能通过添加不同的扩展报头来实现。3.内容获取速度更快IPv6的地址分配遵循“聚类”原则,可使路由器在路由表中用一条记录来表明一片子网,这样大大减小了路由器中路由表的长度,路由器转发...阅读全文

元空间和运行时常量池 - MaXianZhe

元空间是方法区的实现 方法区是什么呢? 从java虚拟机规范9里摘抄的 It stores per-class structures such as the run-time constant pool, field and method data, and the code for methods and constructors, including the special methods used in class and interface initialization and in instance initialization 包括了如下的几个部分 1 运行时常量池 2 字段和方法数据 3 方法和构造方法的字节码 而关于运行时常量池 A run-time constant poo...阅读全文

博文 2024-08-22 16:54:47 博客园