能力说明:
精通JVM运行机制,包括类生命、内存模型、垃圾回收及JVM常见参数;能够熟练使用Runnable接口创建线程和使用ExecutorService并发执行任务、识别潜在的死锁线程问题;能够使用Synchronized关键字和atomic包控制线程的执行顺序,使用并行Fork/Join框架;能过开发使用原始版本函数式接口的代码。
暂无个人介绍
Spring Boot 使用 Commons Logging 记录所有内部日志,但开放日志的底层实现。其为 Java Util Logging 、Log4J2 和 Logback 提供了默认配置。在每种情况下,日志记录器都预先配置为使用控制台输出,并且还提供可选的文件输出。 默认情况下,如果您使用了 Starter,则使用 Logback 进行日志记录。还包括合适的 Logback 路由,以确保在使用 Java Util Logging、Commons Logging、Log4J 或 SLF4J 的依赖库都能正常工作。
介绍 VuePress V2 是一个以 Markdown 为中心的静态网站生成器。你可以使用 Markdown在新窗口打开 来书写内容(如文档、博客等),然后 VuePress 会帮助你生成一个静态网站来展示它们。
本地分支 和 branch 命令 Git 鼓励开发者频繁使用分支,正是因为有着这些特性作保障。Git 是如何知道你当前在哪个分支上工作的呢?其实答案也很简单,它保存着一个名为 HEAD 的特别指针。(译注:将 HEAD 想象为当前分支的别名。)
Git 安装 Linux 上安装 Git 首先,你可以试着输入 Git,看看系统有没有安装 Git。有很多 Linux 系统会友好地告诉你 Git 没有安装,还会告诉你如何安装 Git。如果你碰巧用 Debian 或 Ubuntu,通过一条 sudo apt-get install git 就可以直接完成 Git 的安装。 如果使用的是 centos 或 reahat, 通过这条命令
.gitignore 介绍 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。 虽然 gitignore 文件对Git有特殊的意义,但是它和版本库中任何其他普通文件都是同样管理的。除非把 gitignore 添加到索引中,否则 Git 仍会把它当成未追踪的文件。
问题分析 : could not lock config file %HOMEDRIVE%%HOMEPATH%/.gitconfig 的问题 在我的电脑上 HOME 的值是 %HOMEDRIVE%%HOMEPATH% 竟然不识别。已知 %homedrive% 指操作系统所在盘默认为C:,%HOMEPATH% 指的是用户所在目录,举例说明\Users\zhangsan。 所以手动改成 C:\Users\hp 即可。
Spring 框架的功能被有组织的分散到约 20 个模块中。这些模块分布在核心容器,数据访问/集成,Web,AOP(面向切面的编程),植入(Instrumentation),消息传输和测试,如下面的图所示。
Spring 配置的三种方案 在XML中进行显式配置。 隐式的 bean 发现机制和自动装配。 在 Java 中进行显式配置。
文字特效 <script type="text/javascript"> var a_idx = 0; jQuery(document).ready(function($) { $("body").click(function(e) { var a = new Array("❤学习","❤奥利给","❤干就完事","❤一giao我里giaogiao"); var $i = $("<span></span>").text(a[a_idx]); a_idx = (a_idx + 1) % a.length; var x =
个性化 settings.xml 配置 Settings.xml中包含类似本地仓储位置、修改远程仓储服务器、认证信息等配置。 settings.xml文件位置 settings.xml文件一般存在于两个位置: 全局配置: ${M2_HOME}/conf/settings.xml 用户配置: 𝑢𝑠𝑒𝑟.ℎ𝑜𝑚𝑒/.𝑚2/𝑠𝑒𝑡𝑡𝑖𝑛𝑔𝑠.𝑥𝑚𝑙𝑛𝑜𝑡𝑒:用户配置优先于全局配置。{user.home} 和和所有其他系统属性只能在3.0+版本上使用。请注意 windows 和 Linux 使用变量的区别。
构建配置文件的类型 全局(Global) 定义在 Maven 全局的设置 xml 文件中 (%MAVEN_HOME%/conf/settings.xml) 用户级 (Per User) 定义在Maven的设置 xml 文件中 项目级(Per Project) 定义在项目的POM文件 pom.xml 中
POM 参考 Maven – POM Reference http://maven.apache.org/pom.html <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</model
依赖管理是 Maven 的一个核心特性。管理单个项目的依赖关系非常简单。管理由数百个模块组成的多模块项目和应用程序的依赖关系是可能的。Maven 使用定义良好的类路径和库版本在定义、创建和维护可重复的构建方面帮助很大。
Maven 构建生命周期定义了一个项目构建跟发布的过程。 Maven defines 3 lifecycles in META-INF/plexus/components.xml。 一个典型的 Maven 构建(build)生命周期是由以下几个阶段的序列组成的: 。
核心 Plugin Clean Plugin The Clean Plugin is used when you want to remove files generated at build-time in a project's directory. 跳过 Clean
自动化构建和发布 项目开发过程中,部署的过程包含需如下步骤: 将所的项目代码提交到 SVN 或者代码库中并打上标签。 从 SVN 上下载完整的源代码。 构建应用。 存储构建输出的 WAR 或者 EAR 文件到一个常用的网络位置下。 从网络上获取文件并且部署文件到生产站点上。 更新文档并且更新应用的版本号。
遇到的问题 Maven 错误:was cached in the local repository, resolution will not be reattempted until the update
Create the directory structure mkdir -p src/main/java/hello on *nix systems └── src └── main └── java └── hello create these two classes: HelloWorld.java and Greeter.java. src/main/java/hello/HelloWorld.java
我们先来看一些基本概念,然后再介绍 Java 的日期和时间 API。关于日期和时间,有一些基本概念,包括时区、时刻、纪元时、年历等。 全球一共有 24 个时区,英国格林尼治是 0 时区,北京是东八区,也就是说格林尼治凌晨 1 点,北京是早上 9 点。0 时区的时间也称为 GMT+0 时间,GMT 是格林尼治标准时间,北京的时间就是 GMT+8:00。 所有计算机系统内部都用一个整数表示时刻,这个整数是距离格林尼治标准时间1970年1月1日0时0分0秒的毫秒数。为什么要用这个时间呢?更多的是历史原因。 格林尼治标准时间 1970年1月1日0时0分0秒也被称为 Epoch Time(纪元时)
DTD 教程 文档类型定义(DTD)可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。
背景 使用哪种 Shell Bash 是唯一允许可执行程序使用的 shell / 脚本语言。 可执行文件必须以 #!/bin/bash 开头和最少数量的标志。 使用 set 设置 shell 选项,以便将脚本调用为 bash 脚本名称不会破坏其功能。
Bitmap 的使用 高效加载大位图 解码大的 bitmap,然后加载一个较小的图片到内存中去,从而避免超出程序的内存限制。
MariaDB Community Server 是一个开源的关系数据库服务器,深受全世界开发者的喜爱。由 MySQL 的原始开发者创建,MariaDB 与 MySQL 兼容,并保证永远保持开源。为一些世界上最受欢迎的网站提供动力,比如维基百科和 WordPress.com。它也是全球很多银行、社交媒体、移动和电子商务网站背后的核心引擎。
包含视图、函数知识、防止 SQL 注入攻击等内容。 SQL 函数 简介 大多数 SQL 实现支持以下类型的函数。 ❑ 用于处理文本字符串(如删除或填充值,转换值为大写或小写)的文本函数。❑ 用于在数值数据上进行算术操作(如返回绝对值,进行代数运算)的数值函数。 ❑ 用于处理日期和时间值并从这些值中提取特定成分(如返回两个日期之差,检查日期有效性)的日期和时间函数。 ❑ 用于生成美观好懂的输出内容的格式化函数(如用语言形式表达出日期,用货币符号和千分位表示金额)。 ❑ 返回 DBMS 正使用的特殊信息(如返回用户登录信息)的系统函数 SQL 函数不区分大小写。随你的喜好,不过注意保持风格一致
Windows 上安装 MySQL MySQL 下载地址为: MySQL 下载 。 这里我们挑选 MySQL Community Server。拿到压缩包后我们将进行解压后配置启动。这里我将解压后的文件夹放在 C:\web\mysql-8.0.11 下。 打开刚刚解压的文件夹 C:\web\mysql-8.0.11 ,在该文件夹下创建 my.ini 配置文件,编辑 my.ini 配置以下基本信息:
DQL:(Data QueryLanguage)数据查询语言(操作数据) select ... from ... where DML:(Data Manipulation Language)数据操纵语言(可以控制事务的提交、操作数据) insert、update、delete DDL:(Data Definition Language)数据库模式定义语言(隐式提交事务、操作数据库、表) create databse、create table、create view、create index、alter table、alter view、drop table、drop view、trunca
TwelveMonkeys ImageIO 通过 javax.imageio.* 包的插件为 Java 平台提供扩展图像文件格式支持。 注意,GIF、 PNG 和 WBMP 格式已经通过 ImageIO API 支持,使用的是 JDK 标准插件。对于 BMP、 JPEG 和 TIFF 格式,TwelveMonkeys 插件提供了扩展格式支持和其他特性。
AUTO_INCREMENT 详解 MySQL 中最简单使用序列的方法就是使用 AUTO_INCREMENT 来定义序列。 CREATE TABLE insect -> ( -> id INT UNSIGNED NOT NULL AUTO_INCREMENT, -> PRIMARY KEY (id), ...
由于项目组规定每次发布版本需要记录文件变动差异,于是乎自学了一些 Windows 批处理内容,写了个批处理脚本方便统计。
前提:在一台已经安装了 docker 的机器上,即可使用 docker + 子命令的方式。 通过运行 hello-world 映像来验证是否正确安装了 Docker Engine-Community 。 sudo docker run hello-world Docker 允许你在容器内运行应用程序, 使用 docker run 命令来在容器内运行一个应用程序。 输出 Hello world
redis 键操作 keys key-pattern:返回匹配的 key 列表,比如:keys foo* 表示查找 foo 开头的 keys。 keys my* 查看所有键 keys* 其中,pattern 可以用 “?” 来代替一位字符,用“*”来匹配零个、一个或多个字符,还可以用正则表达式的方式来匹配(模式匹配)。keys *命令虽然可以返回所有的键,但是在项目里键的数量一般会很多,全部返回没有意义,所以一般不怎么使用。 返回当前数据库的 key 的总数。
客户端设置 通过 redis-cli 命令连接到 Redis 服务器以后,可以通过本节给出的命令来管理该连接对应的客户端,具体包括获取并设置客户端的名字、获取客户端的信息、暂停执行客户端的命令以及关闭该客户端的连接。
约束 约束(constraint)管理如何插入或处理数据库数据的规则。 主键约束 表中任意列只要满足以下条件,都可以用于主键。 ❑ 任意两行的主键值都不相同。 ❑ 每行都具有一个主键值(即列中不允许NULL值)。 ❑ 包含主键值的列从不修改或更新。(大多数 DBMS 不允许这么做,但如果你使用的 DBMS 允许这样做,好吧,千万别!) ❑ 主键值不能重用。如果从表中删除某一行,其主键值不分配给新行。
docker 镜像 查找镜像 search 我们可以从 Docker Hub 网站来搜索镜像,Docker Hub 网址为: https://hub.docker.com/ 我们也可以使用 docker search 命令来搜索镜像。比如我们需要一个 httpd 的镜像来作为我们的 web 服务。我们可以通过 docker search 命令搜索 httpd 来寻找适合我们的镜像。 搜索镜像
在 https://hub.docker.com 免费注册一个 Docker 账号。 $ docker login 退出 docker hub 可以使用以下命令: $ docker logout 拉取镜像 你可以通过 docker search 命令来查找官方仓库中的镜像,并利用 docker pull 命令来将它下载到本地。
使用 ssh 连接 git 仓库 生成 ssh 密钥
发布线上电子书 目前 npm gitbook 项目已不再更新,请使用 GitBook.com / GitHub integration。 As the efforts of the GitBook team are focused on the GitBook.com platform, the CLI is no longer under active development. All content supported by the CLI are mostly supported by our GitBook.com / GitHub integration. Content host
前提知识 命令提示符介绍 命令提示符是在操作系统中,提示进行命令输入的一种工作提示符。在不同的操作系统环境下,命令提示符各不相同。在 windows 环境下,命令行程序为 cmd.exe,微软 Windows 系统基于 Windows 上的命令解释程序,类似于微软的 DOS 操作系统。
为什么需要它 一些可视化工具再给我们带来直观性的同时,也增加了操作的难度,需要精细地调整组件的大小和样式,更多的时候,我们不是为了写一份漂亮的报告而画流程图,只是需要便捷地向他人分享自己的 idea,在这样的需求下,代码生成流程图显然更适合。
先决条件 Windows Subsystem for Android 可用于 Windows 11 上的公共预览版。 你的设备必须满足以下特定要求:设备要求。 目前已知可运行在 Intel(英特尔)、AMD 和 Qualcomm(高通) 平台且符合条件的设备上。 由于 Windows 11 和 与之对应的 Amazon Appstore 目前仅在美国提供。简而言之,要抢先体验安卓子系统,需要在设置里面,选择“时间和语言”-“语言和区域”-“国家或地区”选择美国后重启计算机。
安装 nginx 服务器 访问 nginx Tags | Docker Hub 可查看详情 https://hub.docker.com/_/nginx?tab=tags
前言 本身使用 markdown 已经好几年了,算是比较了解。因此写下自己对 markdown 的一些理解。 本文可能不太适合新手,不过主要是些观点,所以相对来说还算好接受。如果理解本文有难度,建议先去学习基础语法。
WSA 安卓子系统 终于可以愉快的刷抖音了。 教程 - Win 11 安装 wsa 安卓虚拟机 - 简书 https://www.jianshu.com/p/5e07a0e97a27
作为一款开箱即用的产物,尽量不做过多额外配置。
IfileSpace IfileSpace 私人网盘文件管理工具 iFileSpace 是一个在线个人文件管理工具,在线网盘程序,可快速一键搭建私人云盘,支持本地存储和对象存储, 如部署在公网服务器,可替代百度网盘等在线网盘,自主搭建,数据完全自主管理!也可部署在家庭软路由、nas 等个人存储设备中,作为局域网文件管理工具使用。支持多用户、多存储空间、资料库、webdav、离线下载及精细的后台权限管理。 标准版一般够用,设备支持也全。
Jenkins 是什么? Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。 Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。
1. 【强制】不允许任何魔法值(即未经预先定义的常量)直接出现在代码中。 反例:
1.【强制】日期格式化时,传入 pattern 中表示年份统一使用小写的 y。 说明:日期格式化时,yyyy 表示当天所在的年,而大写的 YYYY 代表是 week in which year(JDK7 之后引入的概念), 意思是当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,返回的 YYYY 就是下一年。