深入理解java虚拟机(一) 一、Java 内存区域与内存溢出异常1.1 运行时数据区域java虚拟机在执行java程序的过程中会把它管理的内存划分为若干个不同的数据区域。这些区域各有各自的用途,以及创建时间和销毁时间,有的区域随着虚拟机的进程的启动而一直存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范》的规定,java虚拟机的内存将会包括几个运行时数据区域: 1.1.1 程序计数器程序计数 2022-05-13 java #java #jvm #笔记
系统的捡一下Mysql 使用mysql很久了,但没有系统的学习过mysql,看看漏掉了那些基础但又有用东西。 一、Mysql基础使用1.1 Mysql命令1. 命令结束符号一个命令要想执行必须使用;、\g、\G这几个符号之一作为结尾。 符号\g等同于;,是我们常用的命令结束语句。\G可以将数据表格转换为横向,即第一列为字段名,然后数据依次在后面的列,对字段很多的时候的查询展示很有帮助。 2. 可以一次提交多个命令例如 2022-05-11 #mysql
软件公司可重用库的建设 很早之前看到的很有感悟的一片文章,备份一下,防丢。原文地址 这个想法由来已久,也是因为自己在现在效力的公司中能看到一些不良的现象,但自己却不是管理层,没有任何的执行力去改变它。 软件公司管理职位越往上,越不熟悉技术方面,加上此举和重构一样,很可能是吃力不讨好的做法,要得到执行则是想当困难的。客户没有这些要求,我们为什么要去做呢?如果员工有这个念头,我基本上可以看出他对自己的公司是没有想 2022-04-07 架构 #架构 #转载
swift常见的属性修饰器 @Environment简介使用@EnvironmentObject可以监听到自定义的model;但是如果是系统的一些内置的类呢,则可以使用@Environment监听; 示例1@Environment(\.editMode) var editMode @Binding简介双向绑定,用于父子视图的双向传递。修改子视图的Binding值,会触发父视图的State改变重新渲染body。修改父视图的S 2022-04-07 swift #swift #属性修饰器
gradle小记 环境变量要想通过 System.getProperties()或者环境变量在 gradle 中获取相关的值,需要在指定环境变量的时候在环境变量的key前加上前缀。 通过 System.getProperties() 获取需要添加前缀 org.gradle.project.;通过环境变量获取要添加前缀 ORG_GRADLE_PROJECT_。 2022-03-31 #gradle
Mysql四种隔离级别 一、事务的基本要素(ACID) 原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体,就像化学中学过的原子,是物质构成的基本单位。 一致性(Consistency):事务开始前和结束后,数据库的完整性约束没有被破坏 。比如A向B转账,不可能A扣了 2022-03-31 #mysql
kotlin高阶函数 高阶函数 run, with, apply, also, let, takeIf, takeUnless, repeat 高阶函数 T.() -> R 和 (T) -> R在泛型中经常会出现T.() -> R和(T) -> R类型的回调函数, 他们的区别在于: T.() -> R 可以在回调函数中使用this来指代回调函数的传参T, 而(T) -> R使用的 2022-03-31 #kotlin
wordpress+docker+nginx安装wordpress 之前使用nginx + wordpress搭建过wordpress博客,但是整个过程过于复杂和繁琐,最近开发项目中使用到了docker和docker-compose感觉到项目自动部署和配置的便捷,这次我们选用 docker 和 wordpress 来进行 wordpress 的部署。nginx 作为外围网关,当然你也可以将 nginx 放入 docker 中。 1. docker 和 docker 2022-03-31
java范型运行时类型获取 反射是我喜欢喜欢 java 的一个重要原因,它在保证静态语言特性的同时,为你提供了一些动态的特性,你可以通过反射做一些很令人惊奇的事情。本文将通过反射和继承来让你获取泛型的运行时类型。 java 泛型使用的是 type erasure。它的泛型代码只有一份,泛型实现需要在编译和运行时都进行一定的操作。它的反射机制也为我们获取运行时泛型类型提供了一些接口:java.lang.reflect.Type 2022-03-29 java #java #反射
修改mac启动台程序图标大小 mac启动台图标大小没法直接调整,我们可以通过修改每行图标的个数来调整图标大小。 1、调整每一列显示图标数量1defaults write com.apple.dock springboard-rows -int 10 2、调整多少行显示图标数量1defaults write com.apple.dock springboard-rows -int 8 3、重置Launchpad1defau 2022-03-29 macOS #macOS