能力说明:
精通JVM运行机制,包括类生命、内存模型、垃圾回收及JVM常见参数;能够熟练使用Runnable接口创建线程和使用ExecutorService并发执行任务、识别潜在的死锁线程问题;能够使用Synchronized关键字和atomic包控制线程的执行顺序,使用并行Fork/Join框架;能过开发使用原始版本函数式接口的代码。
能力说明:
掌握计算机基础知识,初步了解Linux系统特性、安装步骤以及基本命令和操作;具备计算机基础网络知识与数据通信基础知识。
一个九年资深的程序员,擅长数据库、Java、C#、系统运维、电脑技巧等方面知识,阿里云专家博主、C站站优质博主、公众号运营超五年,热爱分享IT技术相关技术文章,给大家提供帮助!
在日常的项目开发当中,经常会遇到获取同一属性相同的记录,如何获取记录时间最新的那一条,比如获取某个淘宝用户最新一次的购物记录,美团外卖获取用户最后一次的点外卖记录等等场景,下面通过简单的示例给大家提供三种比较常见的SQL写法,希望能给大家带来一些思路。
数据库安全是数据库运维非常重要的环节,今天给大家分享SQLServer如何创建非sa用户,并且设置数据库对应的访问权限,希望对大家能有所帮助!
with as 也叫做子查询部分(subquery factoring),可以定义一个SQL段落,该SQL段落可以被整个SQL语句所用到类似于临时表的作用。with as 可以提高你的SQL语句的可读性,也有可以用在在UNION ALL的不同部分,作为提供临时数据的部分。
SQLServer没创建一个查询,都相当于创建一个查询会话,在不同的查询分析器里面进行的查询操作,可能会影响别的查询会话。比较典型的一个例子,如果你正在使用事务执行某一张表的插入或者操作而没有正确关闭事务的情况下,会造成别的会话针对该数据表的查
sqlcmd是一个 Microsoft Win32 命令提示实用工具,可以通过该命令工具实现SQL语句、脚本的执行,并且可以实现脚本任务的自动化。
随着互联网的高速发展,目前数据的存储越来越多,传统的数据库逐渐不能满足人们对海量数据、高效查询的需求,国产的数据库如雨后春笋一样,一个个冒了出来来解决我们高速科技发展的数据库瓶颈,今天就给大家聊一聊目前最火的五款国产数据库,大家一起来交流一下。
AOP全称为Aspect Oriented Programming,中文含义为:面向切面编程。 通过预编译方式和运行期动态代理实现程序功能的统一维护的技术。AOP技术是Spring框架中的一个重要内容。使用AOP技术可以对业务逻辑的各个部分进行隔离,可以使业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时也提高了开发的效率。
在Spring容器中如果存在同一类型的多个组件,可以使用@Profile注解标识实际要获取的是哪一个bean,这在不同的环境使用不同的变量的场景下非常有用。 最典型的例子:开发环境、测试环境、生产环境会配置不同的数据源,在尽量不修改代码的情况下,可以使用这个注解来动态指定要连接的数据源。
今天给大家分享Spring属性注入的注解@Autowired 和@Resource介,希望对大家能有所帮助!
@Value注解的作用主要可以给属性直接赋值、也可以读取配置文件中的值给属性赋值
BeanPostProcessor接口通常被称为Bean的后置处理器,它是Spring中定义的接口,可以在Spring容器的创建过程中(主要在Bean初始化前后进行工作)回调BeanPostProcessor中定义的两个方法。
FactoryBean是实现了FactoryBean<T>接口的Bean,可以该Bean的ID从BeanFactory中获取的实际上是FactoryBean中getObject()方法返回的实例对象,而并不是直接FactoryBean本身,想要获取FactoryBean对象本身,可以在id前面加一个&符号来获取
@Conditional是Spring4版本新提供的一种注解,它的作用是按照设定的条件进行判断,把满足判断条件的bean注册到Spring容器。
@Lazy 懒加载注解的概念 SpringIoC容器会在启动的时候实例化所有单实例 bean 。如果我们想要实现 Spring 在启动的时候延迟加载 bean,即在首次调用bean的时候再去执行初始化,就可以使用 @Lazy 注解来解决这个问题
@Scope注解主要作用是调节Ioc容器中的作用域,在Spring IoC容器中主要有以下五种作用域:基本作用域:singleton(单例)、prototype(多例);Web 作用域(reqeust、session、globalsession),自定义作用域。
@ComponentScan注解一般和@Configuration注解一起使用,主要的作用就是定义包扫描的规则,然后根据定义的规则找出哪些需类需要自动装配到spring的bean容器中,然后交由spring进行统一管理
今天给大家介绍一下Spring中Bean注解的用法,后续的文章给大家介绍Sping其他注解用法,希望对大家日常工作能有所帮助!
利用java的反射特性让一个对象的创建可以不用new进行实例化,可以自动的生产,这其实就是利用java的反射特性,反射其实就是在运行时动态的去创建、调用对象,Spring就是在运行时,跟xml Spring的配置文
JVM垃圾回收算法主要有标记清除、复制算法、标记整理、分代收集四种,下面来逐一介绍。
从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC,也叫Young GC。因为Java对象大多具备朝生夕死的特征,所以MinorGC非常频繁,一般回收速度也比较快。一般采用复制算法。
虚拟机栈也称为Java栈,Java每个main方法被执行的时候,JVM都会同步创建一个栈帧(Stack Frame),通过存储局部变量表、操作数栈、动态链接、方法出口等信息来支撑和完成方法的执行。栈帧就是虚拟机栈中的子单位。栈其实只有入栈和出栈两种操作。
虚拟机栈也称为Java栈,Java每个main方法被执行的时候,JVM都会同步创建一个栈帧(Stack Frame),通过存储局部变量表、操作数栈、动态链接、方法出口等信息来支撑和完成方法的执行。栈帧就是虚拟机栈中的子单位。栈其实只有入栈和出栈两种操作。
JVM中的程序计数寄存器(Program Counter Register)中Register的命名来源于CPU的寄存器,寄存器用来存储指令相关的现场信息。
native关键字修饰的Java方法是一个原生态方法,方法对应的实现Java作用范围达不到,而是在用其他编程语言(如C和C++)文件中实现。Java语言本身不能直接对操作系统底层进行访问和操作,但可以通过JNI接口调用其他编程语言来实现对操作系统底层的访问。
Java安全模型的核心就是Java沙箱(sandbox)。 沙箱机制就是将Java代码限定只能在虚JVM虚拟机中特定的运行范围,并且严格限制代码对本地系统资源访问,通过这样的方式来保证对Java代码的有效隔离,防止对本地操作系统造成破坏。
Java类的加载过程是动态的,它不会一次性把程序所有的类全部加载后再运行,而是先保障程序运行的基础类加载到JVM虚拟机当中,其他的类,一般是再需要的时候才会去加载,这样的运行机制也达到了节约内存的目的。
JVM虚拟机运行的文件是class文件,它是由我们的Java程序编译后产生的文件。 类的加载:JVM虚拟机将指定的class文件读取到内存里,并解释运行该class文件里的Java程序的过程。 类的卸载:将某个class文件的运行时数据从JVM虚拟机中移除的过程。
JVM即Java虚拟机,可以理解为一种抽象计算机,它拥有一个指令集,在运行时操作各种内存区域。JVM对Java语言一无所知,它只知道一种特定的二进制格式,即类文件格式,我们写好的Java程序最终交给JVM执行的时候会被编译成二进制格式的类文件,JVM只能读取二进制格式的类文件,所以任何编程语言只要编译后的格式符合要求,本质上都可以在JVM上运行。
今天给大家分享微软官方Hyper-v虚拟机管理软件安装UOS操作系统图文教程,感兴趣的朋友也可以下载试一试,当然有啥问题也可以互相沟通交流!
今天给大家分享Git常见的项目托管平台,大家一起来看看吧!
平常我们在用电脑的时候,随着时间越来越久电脑系统盘就爆红了,这时候想快速找到大文件,然后快速清理掉,从而给电脑系统盘瘦身,不知道从何处下手,今天小编就给大家分享一款免费的电脑磁盘空间利用率分析工具——WizTree,可以很方便的解决磁盘文件清理的问题
今天给大家推荐推荐一款非常好用的SSH客户端WindTerm
今天给大家分享小编基于ItextSharp制作的一款标签生成小工具,可供大家学习或者二次开发满足实际的需求使用。 使用技术:C\#+ItextSharp+Winfrom+Net4.0
今天给大家分享Winform实现DataGridView 自定义分页的案例,感兴趣的朋友可以一起来学习一下。 采用技术:C\#+Winform+Dapper+SQLite。
今天给大家分享Centos8系统下安装mysql8.0.27,具体参考下面的步骤就可以使用Docker正确安装mysql
今天给大家分享一个自己写的java实战的小案例,主要功能是实现指定一个文件夹,然后分组压缩里面的文件。其实这个案例还是有一定用途的,比如日志文件夹里面有几千个文件,如果我需要给每个压缩包指定10M,把整个文件夹里面的日志文件都进行压缩,这个案例就能够用得上了。
今天继续给大家分享Docker实战,Centos8环境下安装nginx并配置SSL。
短链技术目前对网站推广非常的有用,有了它就可以把非常长的网址缩短。这样分享推广起来非常方便。今天小编给大家推荐几款不错的在线短链生成网站,感兴趣的朋友可以下载试一试!
匿名挂载就是指定容器内路径,dockers run 每挂载一个目录就会宿主主机自动创建一个随机字符串的目录。目录/var/lib/docker/volumes/随机字符串。
大家在平常使用docker的时候,可能会遇到这样或者那样的问题,这个时候想排查问题的时候通常需要查看异常日志,这样才可以快速定位问题,从而解决实际的问题。今天就给大家聊聊Docker查看日志的用法,一起来看看吧!
Power BI是微软官方推出的数据分析和可视化工具。
相信大家都知道目前市面上主要的操作系统有Windows、Linux、MacOS。 Linux主要用户群体主要集中于IT方面的人员、作为服务器、政务办公等方面。 MacOS属于苹果操作系统,主要针对那些能买得起Mac电脑的土豪。 Windows操作系统应该是大家个人日常办公、娱乐使用最多的操作系统。
今天给大家分享docker安装Tomcat安装说明,服务器版本为Centos8,安装的tomcat版本为tomcat:8.5.38。
Win10安全模式是微软操作系统中的一种特殊模式,平常大家一般不会进入电脑安全模式,针对操作系统出现一些难以解决问题的时候,借助安全模式可以比较方便的解决。
当我们的服务器成功安装docker并启动进程后,就会产生一个docker0的虚拟网桥,本质为Linux网桥(默认为桥接模式),使用的通信技术是Veth-pair技术. 当我们每启动一个容器,docker就给对应容器分配一个eth0,并能够桥接到docker0网卡。这个时候可以把docker0看作为路由器,每个容器可以看作为连接路由器的网络设备,docker0用来管理每个容器的和docker0通信的映射关系。
dockers 下载的redis 默认是没有 redis.conf 文件的,需要从官网下载,也可以使用我下载好的redis.conf 文件。对应的版本是7.0.2 。下载后将文件上传到 /home/redis/conf 里面去。
今天给大家分享Docker安装mongodb笔记,服务器基于Centos8,希望大家可以互相沟通交流! 今天给大家安装的mongodb版本为4.2,大家按照步骤执行命令就可以。
PowerToys是一款来自微软官方出品的效率工具集合,就像是一个神奇的系统外挂,该软件功能主要包括:屏幕取色器、桌面窗口分布、快速预览插件、批量图片缩放器、键盘映射器、批量重命名工具、软件快速启动器(类似于MacOS Spotlight或Listary)。
当你桌面找不到图标时,直接杀掉explorer.exe进程 当桌面程序卡死无响应时,打开任务管理器找到explorer.exe,右键结束进程。
Docker安装启动后会在宿主主机上创建一个名为 docker0 的虚拟网桥,处于七层网络模型的数据链路层,后续每当我们创建一个新的docker容器,在不指定容器网络模式的情况下,docker会通过 docker0 与主机的网络连接,docker0 相当于网桥。