- 【Kubernets】Kubernetes 的基础知识,Pod是什么? 和容器的关系?多个容器如何在同一个 Pod 里协作?
{⌐■_■}
Kuberneteskubernetes容器云原生
1.Kubernetes的核心概念(1)Node(节点)定义:Node是Kubernetes集群中的工作机器,可以是物理机或虚拟机。类型:MasterNode:运行控制平面组件(如APIServer、Scheduler)。WorkerNode:运行应用负载(如Pod)。关键组件:Kubelet:负责与MasterNode通信,管理Pod和容器。KubeProxy:负责网络代理和负载均衡。容器运行时
- 【DevOps】Jenkins+Kubernetes:K8S集群外部署的Jenkins,设置动态Jenkins-slave工作节点到K8S集群中
运维归一
DevOpsjenkinsdockerkubernetes
视频教程视频教程:https://edu.csdn.net/learn/38191/604447?spm=1003.2001.3001.4143Jenkins部署,设置动态agent到K8S集群中centosdockerjenkinskubernets7.920.102.28919.10通常情况下jenkins单节点自己可以工作,但是一旦发布任务量巨大,server端自己肯定是靠不住的。为了解决这
- java高级工程师面试问题大全及答案大全,后台开发JAVA岗
sddvfdfv323
程序员java后端面试
前言随着k8s作为容器编排解决方案变得越来越流行,有些人开始拿Docker和k8s进行对比,不禁问道:Docker不香吗?k8s是kubernets的缩写,’8‘代表中间的八个字符。其实Docker和k8s并非直接的竞争对手,它俩相互依存。Docker是一个容器化平台,而k8s是Docker等容器平台的协调器。SpringSecurity观后感——手绘思维脑(供参考)SpringSecurity手
- 图解kubernetes调度器SchedulerExtender扩展
8小时
go源码编程并发
在kubernetes的scheduler调度器的设计中为用户预留了两种扩展机制SchdulerExtender与Framework,本文主要浅谈一下SchdulerExtender的实现,因为还有一篇Framework,所以本文的k8s代码切到1.18版本1.设计思路1.1实现机制SchdulerExtender是kubernets外部扩展方式,用户可以根据需求独立构建调度服务,实现对应的远程调
- 使用GitLab CI/CD部署应用到Kubernetes集群的方案
拿我格子衫来
GitLabCI/CD教程ci/cdkubernetesdevops
最近业余时间调研了一下在GitLabCI/CD中部署应用到Kubernetes的方案。这是一个老生常谈的话题,很多粉丝和读者问我如何部署应用到K8s中。其实思路是很清晰的,只是其中又很多点大家可能无法串起来。那么本篇文章就带领大家实践一下如何做CD的方案。本方案的好处就是,读者不需要了解太多关K8s相关知识也可以实现该方案。Kubernets的命令行工具是kubectl。就像我们使用docker命
- K8s核心概念介绍
一见不如故
kubernetskubernets
ClusterCluster是计算,存储和网络资源的集合,k8s利用这些资源运行各种基于容器的应用MasterMaster是Cluster的大脑,负责跳读,NodeNode的职责是运行容器应用,Node由Master管理,Node负责监控并汇报容器的状态,同时根据Master的要求管理容器的生命周期PodPod是Kubernets的最小工作单元,每个Pod包含一个或者多个容器,Pod中的容器会作为
- Kubernetes实战:通过ClusterIP方式访问springboot服务
道法自然 实事求是
Kuberneteskubernetesspringboot容器
目录一、准备工作1.1、yaml文件编写二、创建k8sService参考资料一、准备工作1.1、yaml文件编写创建kubernets-discovery-service_service.yaml文件,yaml文件内容如下apiVersion:v1kind:Servicemetadata:name:kubernets-discovery-servicenamespace:appspec:selec
- k8s搭建容器云平台
勇敢许牛牛在线大闯关
云计算kubernetes容器云原生云计算
平台部署–部署容器云平台部署kubernets1.22.1集群curl-Ohttp://...../chinaskills_cloud_paas_v2.0.2.isomountchinaskills_cloud_paas_v2.0.2.iso/mntcp-rvf/mnt/*/optcp/opt/kubeeasy/usr/binkubeeasy--help#[installdependenciesp
- openEuler-22.03-LTS-SP3 Kubernets集群部署实战
wanchengpeng
kubernetes容器linux
一、环境介绍1、Windows11专业版,VMwareWorkstation17,XShell、XFtp、openEuler-22.03-LTS-SP32、Kubernets集群节点规划节点名称节点IP地址集群角色处理器数量内存大小磁盘空间k8s-master1192.168.139.136master68G100Gk8s-node1192.168.139.137worker68G100Gk8s-
- CentOS7搭建k8s-v1.28.6集群详情
@TangXin
Kuberneteskubernetes容器
文章目录1.灌装集群节点操作系统1.1设置hosts1.2设置nameserver1.3关闭防火墙1.4关闭Selinux1.5关闭Swap分区1.6时间同步1.7调整内核参数1.8系统内核升级2.安装Docker2.1卸载旧Docker2.2配置Docker软件源2.3安装Docker3.部署Kubernets集群3.1设置K8s软件源3.2安装kubeadm,kubelet和kubectl3.
- k8s部署tomcat及web应用_kubernetes学习一:安装及部署第一个Web应用
weixin_39761558
准备工作首先准备Kubernets的环境,使用的是centos7.5关闭防火墙:#systemctldisablefirewalld#systemctlstopfirewalld安装etcd和kubernetes(会自动安装Docker软件)由于centosmini版本没有ifconfig和netstat的命令。所以安装了net-tools的工具#yum-yinstallnet-tools#yum
- 解析Kubernets pod DNS域名
深耕云原生
kuberneteskubernetes
k8sdns理解这个博主讲的很详细我的这篇文章主要是演示测试k8s的dnsnslookup怎么解析到k8spod域名创建一个busybox的pod,测试一下pod内是否可以解析1、流程验证cat>dns-Deployment.yaml..pod.格式的DNS域名kubectlapply-fdns-Deployment.yamlkubectlgetpods|grepbusyboxkubectlexe
- 【kubernets】由Evicted状态的Pod探讨k8s中pod的驱逐策略
margu_168
Kuberneteskubernetesdocker容器
背景某天突然发现自己的测试环境中有Evicted状态的pod,于是需要排查原因。先来看看大致情况:[root@k8s-m1~]#kubectlgetpod-A-owide|grepk8s-m1kube-systemcalico-kube-controllers-bcc6f659f-575mr1/1Running3177d10.244.42.148k8s-m1kube-systemcalico-no
- 【kubernets】kubelet证书单独更新
margu_168
Kuberneteskubernetes
前言说明接上一篇文章https://blog.csdn.net/margu_168/article/details/132584109关于kubernets中的证书管理。本篇文章将单独说明一下kubelet的证书更新。在1.19.16版本中,默认情况下使用kubeadmalphacertsrenewall不能更新kubelet的证书,其他版本请自行测试。但是某些情况下,我们需要立即对kubelet
- kubernets_实战篇(minikube)
Aring88
Linux运维dockerkubernetes后端linux运维开发
minikube一、前提准备1,安装工具二、启动集群1,启动集群2,暴露Pod(1)kubernetesService类型三、集群操作1,Pod操作2,启用插件3,清理集群资源一、前提准备本文环境是基于,在线k8s环境,linux,x86_641,安装工具安装minikube##下载curl-LOhttps://storage.googleapis.com/minikube/releases/la
- Kind 安装 kubernets集群
yuluo_YX
云原生javastudycloudnativekind云原生
Kind安装kubernets介绍kindisatoolforrunninglocalKubernetesclustersusingDockercontainer“nodes”.Kind是一个通过使用docker容器模拟节点来创建本地k8s集群的工具。repo:https://github.com/kubernetes-sigs/kindwebsite:https://kind.sigs.k8s.
- Kubernetes各组件工作原理 & Pod 生命周期
爱哭的毛毛虫*
kubernetes容器云原生
一、kubernets组件工作原理-概述:在集群管理方面,kubernetes将集群中的机器分为Master(主)节点和一些node(工作)节点。在Master节点上运行这一些集群管理相关的进程组件:kube-apiserver、kube-controller-manager和kube-scheduler,这些组件进程实现了整个集群的资源管理、pod调度、弹性伸缩、安全控制、系统监控和纠错等管理功
- Kubernets(K8S)启动和运行01 快速入门
Python私教
k8skubernetes容器云原生
简介Kubernetesisanopensourceorchestratorfordeployingcontainerizedapplications.ItwasoriginallydevelopedbyGoogle,inspiredbyadecadeofexperiencedeployingscalable,reliablesystemsincontainersviaapplication-or
- kubeadm实际搭建多节点的Kubernetes集群
海哥python
云原生kubernetes容器云原生
kubeadm是什么?kubadm官网:https://kubernetes.io/zh-cn/docs/reference/setup-tools/kubeadm/Kubernetes的独立部署工具:kubeadm让用户两条命令完成一个Kubernets集群的部署:#创建一个Master节点$kubeadminit#将一个Node节点加入到当前集群中$kubeadmjoin实验环境Kuberne
- Kubernets(K8S)启动和运行 01-02 Kubernetes的速度非常快
Python私教
kubernetes容器云原生
Kubernetes的速度非常快简介(Intoduction)Velocityisthekeycomponentinnearlyallsoftwaredevelopmenttoday.ThesoftwareindustryhasevolvedfromshippingproductsasboxedCDsorDVDstosoftwarethatisdeliveredoverthenetworkviaw
- 了解Ceph 分布式存储
小老虎追玉兔
ceph分布式网络
内容概括1、存储发展史随着OpenStack的快速发展,给Caph的发展注入了强心剂,越来越多的人使用Ceph作为OpenStack的底层共享存储,Ceph在中国的社区也蓬勃发展起来。近两年OpenStack火爆度不及当年,借助于云原生尤其是Kubernetes技术的发展,作为底层存储的基石,Ceph再次发力,为Kubernets有状态化业务提供了存储机制的实现。企业中使用存储按照其功能,使用场景
- Kubernets(K8S)启动和运行 01-01 Kubernetes简介
Python私教
kubernetes容器云原生
Kubernets(K8S)启动和运行01-01Kubernetes简介Kubernetesisanopensourceorchestratorfordeployingcontainerizedapplications.ItwasoriginallydevelopedbyGoogle,inspiredbyadecadeofexperiencedeployingscalable,reliablesy
- k8s-pod-基本概念
查士丁尼·绵
k8skubernetesdocker容器
什么是Pod?Pod是一组紧密关联的容器集合,也叫它容器组。它们共享PID、IPC、Network和UTSnamspace,是kubernets调度的基础单元。Pod的设计理念是支持多个容器在一个Pod中共享网络和文件系统,可以通过进程间通信和文件共享这种简单高效的方式组合完成服务。一个pod运行多个容器,又叫边车模式(SideCar)容器是一种资源隔离单位,比如隔离CPU、内存等,应用程序住在容
- k8s---kubernets
Lad1129
k8s
目录一、Kurbernetes1.2、K8S的特性:1.3、docker和K8S:1.4、K8S的作用:1.5、K8S的特性:二、K8S集群架构与组件:三、K8S的核心组件:一、master组件:1、kube-apiserver:2、kube-controller-manager:3、kube-scheduler:4、ETCD组件:二、node组件:1、kubelet:2、kube-proxy:3
- k8s:kubernets
91888888
kubernetes容器云原生
自动部署、自动扩展和管理的容器化部署的应用程序的一个开源系统k8s负责自动化运维管理多个容器化程序的集群,是一个功能强大的容器编排工具可以以分布式和集群化的方式进行容器管理1.18版本,目前最多的是1.20版本,最新的是1.29版本(没人用)k8s是google的borg系统作为原型,后期经过go语言编写的开源软件KubernetesGitHub-kubernetes/kubernetes:Pro
- k8s 组件
weixin_51694382
kubernetes容器云原生
k8s:kubernets:8个字母省略,就是k8s.自动部署,自动扩展和管理容器化的应用程序的一个开源系统。k8s是负责自动化运维管理多个容器化程序的集群,是一个功能强大的容器编排工具。以分布式和集群化的方式进行容器管理。1.20面试版本k8s是google的borg系统作为原型,后期经由go语言编写的开源软件。Kubernetes官网https://github.com/kubernetes/
- 漫话Kubernetes的网络架构,该用NodePort还是Ingress还是load balancer?
Tom098
DevOpsk8s网络kubernetes网络架构NodePortIngress
目录一、基本概念1.Kubernetespod2.Kubernetesservice3.KubernetesNodePort4.KubernetsIngress5.Kubernetesloadbalancer二、从实际需求谈Kubernetes引入的各种网络概念问题No1:NodePort和Ingress好像实现原理差不多,有了NodePort为啥还整出个Ingress,既生瑜何生亮么?问题No2
- repository does not exist or may require ‘docker login‘: denied: requested access to the resource is
zhangyifang_009
错误记录kubernetesdockerjava
问题描述:最近在学习kubernetes的使用,在部署SpringBoot项目的时候,总是拉取不到本地的docker镜像,提示就是:repositorydoesnotexistormayrequire'dockerlogin':denied:requestedaccesstotheresourceisdenied,pod描述如下图所示而我当前的docker镜像明明是有的并且我的kubernets部
- kubernets 安装介绍 (修正版)
fananchong2
dockerkubernetskubeadm
准备工作机器可以科学上网docker设置http代理参考官方文档:https://docs.docker.com/config/daemon/systemd/#httphttps-proxy步骤如下:mkdir-p/etc/systemd/system/docker.service.dtouch/etc/systemd/system/docker.service.d/http-proxy.conf
- 【云原生kubernets】存储管理与应用
一只CV程序猿
云原生
一、存储卷介绍1.1.为什么需要存储卷:容器中的文件在磁盘上是临时存放的,这给容器中运行的特殊应用程序带来一些问题。首先,当容器崩溃时,kubelet将重新启动容器,容器中的文件将会丢失,因为容器会以干净的状态重建。其次,当在一个Pod中同时运行多个容器时,常常需要在这些容器之间共享文件。1.2.存储卷的生命周期Kubernetes卷具有明确的生命周期,与包裹它的Pod相同。因此,卷比Pod中运行
- java类加载顺序
3213213333332132
java
package com.demo;
/**
* @Description 类加载顺序
* @author FuJianyong
* 2015-2-6上午11:21:37
*/
public class ClassLoaderSequence {
String s1 = "成员属性";
static String s2 = "
- Hibernate与mybitas的比较
BlueSkator
sqlHibernate框架ibatisorm
第一章 Hibernate与MyBatis
Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。 Mybatis 是另外一种优秀的O/R mapping框架。目前属于apache的一个子项目。
MyBatis 参考资料官网:http:
- php多维数组排序以及实际工作中的应用
dcj3sjt126com
PHPusortuasort
自定义排序函数返回false或负数意味着第一个参数应该排在第二个参数的前面, 正数或true反之, 0相等usort不保存键名uasort 键名会保存下来uksort 排序是对键名进行的
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8&q
- DOM改变字体大小
周华华
前端
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
- c3p0的配置
g21121
c3p0
c3p0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。c3p0的下载地址是:http://sourceforge.net/projects/c3p0/这里可以下载到c3p0最新版本。
以在spring中配置dataSource为例:
<!-- spring加载资源文件 -->
<bean name="prope
- Java获取工程路径的几种方法
510888780
java
第一种:
File f = new File(this.getClass().getResource("/").getPath());
System.out.println(f);
结果:
C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin
获取当前类的所在工程路径;
如果不加“
- 在类Unix系统下实现SSH免密码登录服务器
Harry642
免密ssh
1.客户机
(1)执行ssh-keygen -t rsa -C "
[email protected]"生成公钥,xxx为自定义大email地址
(2)执行scp ~/.ssh/id_rsa.pub root@xxxxxxxxx:/tmp将公钥拷贝到服务器上,xxx为服务器地址
(3)执行cat
- Java新手入门的30个基本概念一
aijuans
javajava 入门新手
在我们学习Java的过程中,掌握其中的基本概念对我们的学习无论是J2SE,J2EE,J2ME都是很重要的,J2SE是Java的基础,所以有必要对其中的基本概念做以归纳,以便大家在以后的学习过程中更好的理解java的精髓,在此我总结了30条基本的概念。 Java概述: 目前Java主要应用于中间件的开发(middleware)---处理客户机于服务器之间的通信技术,早期的实践证明,Java不适合
- Memcached for windows 简单介绍
antlove
javaWebwindowscachememcached
1. 安装memcached server
a. 下载memcached-1.2.6-win32-bin.zip
b. 解压缩,dos 窗口切换到 memcached.exe所在目录,运行memcached.exe -d install
c.启动memcached Server,直接在dos窗口键入 net start "memcached Server&quo
- 数据库对象的视图和索引
百合不是茶
索引oeacle数据库视图
视图
视图是从一个表或视图导出的表,也可以是从多个表或视图导出的表。视图是一个虚表,数据库不对视图所对应的数据进行实际存储,只存储视图的定义,对视图的数据进行操作时,只能将字段定义为视图,不能将具体的数据定义为视图
为什么oracle需要视图;
&
- Mockito(一) --入门篇
bijian1013
持续集成mockito单元测试
Mockito是一个针对Java的mocking框架,它与EasyMock和jMock很相似,但是通过在执行后校验什么已经被调用,它消除了对期望 行为(expectations)的需要。其它的mocking库需要你在执行前记录期望行为(expectations),而这导致了丑陋的初始化代码。
&nb
- 精通Oracle10编程SQL(5)SQL函数
bijian1013
oracle数据库plsql
/*
* SQL函数
*/
--数字函数
--ABS(n):返回数字n的绝对值
declare
v_abs number(6,2);
begin
v_abs:=abs(&no);
dbms_output.put_line('绝对值:'||v_abs);
end;
--ACOS(n):返回数字n的反余弦值,输入值的范围是-1~1,输出值的单位为弧度
- 【Log4j一】Log4j总体介绍
bit1129
log4j
Log4j组件:Logger、Appender、Layout
Log4j核心包含三个组件:logger、appender和layout。这三个组件协作提供日志功能:
日志的输出目标
日志的输出格式
日志的输出级别(是否抑制日志的输出)
logger继承特性
A logger is said to be an ancestor of anothe
- Java IO笔记
白糖_
java
public static void main(String[] args) throws IOException {
//输入流
InputStream in = Test.class.getResourceAsStream("/test");
InputStreamReader isr = new InputStreamReader(in);
Bu
- Docker 监控
ronin47
docker监控
目前项目内部署了docker,于是涉及到关于监控的事情,参考一些经典实例以及一些自己的想法,总结一下思路。 1、关于监控的内容 监控宿主机本身
监控宿主机本身还是比较简单的,同其他服务器监控类似,对cpu、network、io、disk等做通用的检查,这里不再细说。
额外的,因为是docker的
- java-顺时针打印图形
bylijinnan
java
一个画图程序 要求打印出:
1.int i=5;
2.1 2 3 4 5
3.16 17 18 19 6
4.15 24 25 20 7
5.14 23 22 21 8
6.13 12 11 10 9
7.
8.int i=6
9.1 2 3 4 5 6
10.20 21 22 23 24 7
11.19
- 关于iReport汉化版强制使用英文的配置方法
Kai_Ge
iReport汉化英文版
对于那些具有强迫症的工程师来说,软件汉化固然好用,但是汉化不完整却极为头疼,本方法针对iReport汉化不完整的情况,强制使用英文版,方法如下:
在 iReport 安装路径下的 etc/ireport.conf 里增加红色部分启动参数,即可变为英文版。
# ${HOME} will be replaced by user home directory accordin
- [并行计算]论宇宙的可计算性
comsci
并行计算
现在我们知道,一个涡旋系统具有并行计算能力.按照自然运动理论,这个系统也同时具有存储能力,同时具备计算和存储能力的系统,在某种条件下一般都会产生意识......
那么,这种概念让我们推论出一个结论
&nb
- 用OpenGL实现无限循环的coverflow
dai_lm
androidcoverflow
网上找了很久,都是用Gallery实现的,效果不是很满意,结果发现这个用OpenGL实现的,稍微修改了一下源码,实现了无限循环功能
源码地址:
https://github.com/jackfengji/glcoverflow
public class CoverFlowOpenGL extends GLSurfaceView implements
GLSurfaceV
- JAVA数据计算的几个解决方案1
datamachine
javaHibernate计算
老大丢过来的软件跑了10天,摸到点门道,正好跟以前攒的私房有关联,整理存档。
-----------------------------华丽的分割线-------------------------------------
数据计算层是指介于数据存储和应用程序之间,负责计算数据存储层的数据,并将计算结果返回应用程序的层次。J
&nbs
- 简单的用户授权系统,利用给user表添加一个字段标识管理员的方式
dcj3sjt126com
yii
怎么创建一个简单的(非 RBAC)用户授权系统
通过查看论坛,我发现这是一个常见的问题,所以我决定写这篇文章。
本文只包括授权系统.假设你已经知道怎么创建身份验证系统(登录)。 数据库
首先在 user 表创建一个新的字段(integer 类型),字段名 'accessLevel',它定义了用户的访问权限 扩展 CWebUser 类
在配置文件(一般为 protecte
- 未选之路
dcj3sjt126com
诗
作者:罗伯特*费罗斯特
黄色的树林里分出两条路,
可惜我不能同时去涉足,
我在那路口久久伫立,
我向着一条路极目望去,
直到它消失在丛林深处.
但我却选了另外一条路,
它荒草萋萋,十分幽寂;
显得更诱人,更美丽,
虽然在这两条小路上,
都很少留下旅人的足迹.
那天清晨落叶满地,
两条路都未见脚印痕迹.
呵,留下一条路等改日再
- Java处理15位身份证变18位
蕃薯耀
18位身份证变15位15位身份证变18位身份证转换
15位身份证变18位,18位身份证变15位
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 201
- SpringMVC4零配置--应用上下文配置【AppConfig】
hanqunfeng
springmvc4
从spring3.0开始,Spring将JavaConfig整合到核心模块,普通的POJO只需要标注@Configuration注解,就可以成为spring配置类,并通过在方法上标注@Bean注解的方式注入bean。
Xml配置和Java类配置对比如下:
applicationContext-AppConfig.xml
<!-- 激活自动代理功能 参看:
- Android中webview跟JAVASCRIPT中的交互
jackyrong
JavaScripthtmlandroid脚本
在android的应用程序中,可以直接调用webview中的javascript代码,而webview中的javascript代码,也可以去调用ANDROID应用程序(也就是JAVA部分的代码).下面举例说明之:
1 JAVASCRIPT脚本调用android程序
要在webview中,调用addJavascriptInterface(OBJ,int
- 8个最佳Web开发资源推荐
lampcy
编程Web程序员
Web开发对程序员来说是一项较为复杂的工作,程序员需要快速地满足用户需求。如今很多的在线资源可以给程序员提供帮助,比如指导手册、在线课程和一些参考资料,而且这些资源基本都是免费和适合初学者的。无论你是需要选择一门新的编程语言,或是了解最新的标准,还是需要从其他地方找到一些灵感,我们这里为你整理了一些很好的Web开发资源,帮助你更成功地进行Web开发。
这里列出10个最佳Web开发资源,它们都是受
- 架构师之面试------jdk的hashMap实现
nannan408
HashMap
1.前言。
如题。
2.详述。
(1)hashMap算法就是数组链表。数组存放的元素是键值对。jdk通过移位算法(其实也就是简单的加乘算法),如下代码来生成数组下标(生成后indexFor一下就成下标了)。
static int hash(int h)
{
h ^= (h >>> 20) ^ (h >>>
- html禁止清除input文本输入缓存
Rainbow702
html缓存input输入框change
多数浏览器默认会缓存input的值,只有使用ctl+F5强制刷新的才可以清除缓存记录。
如果不想让浏览器缓存input的值,有2种方法:
方法一: 在不想使用缓存的input中添加 autocomplete="off";
<input type="text" autocomplete="off" n
- POJO和JavaBean的区别和联系
tjmljw
POJOjava beans
POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规
- java中单例的五种写法
liuxiaoling
java单例
/**
* 单例模式的五种写法:
* 1、懒汉
* 2、恶汉
* 3、静态内部类
* 4、枚举
* 5、双重校验锁
*/
/**
* 五、 双重校验锁,在当前的内存模型中无效
*/
class LockSingleton
{
private volatile static LockSingleton singleton;
pri