- 如何搭建Composer私有仓库
声嘶喑哑
shellphp
创建Composer包首先要先创建一个Composer包,可参考:创建你的第一个composer包创建好之后,可以托管到任意的VCS仓库里,如:GIT、SVN等,也可以放在本地以Path的方式指定路径,更多可参考:点击这里安装satis$composercreate-projectcomposer/satis--stability=dev--keep-vcs创建配置文件下例中,我们使用两个已经创建
- webman 利用tcp 做服务端 对接物联网
两个人的幸福online
tcp/ipandroid网络协议
用webman建立tcp的服务端安装webman安装composerrequirewebman/gateway-worker文件:config/plugin/webman/gateway-worker/process.php这里定义了两个协议,tcp用来对接物联网,ws用来对接im['handler'=>Gateway::class,'listen'=>'websocket://0.0.0.0:7
- 使用composer提示Composer detected issues in your platform Your Composer dependencies require a PHP
TO_WebNow
phpcomposer开发语言
宝塔终端使用composer提示:Composerdetectedissuesinyourplatform:YourComposerdependenciesrequireaPHPversion“>=8.2.0”.Youarerunning7.3.40.in/www/wwwroot/watch/vendor/composer/platform_check.php处理办法:先下载对应的php版本,然后
- PHP云原生与Serverless架构深度实践
seopthonshentong
云原生phpserverless
在前六篇系列教程的基础上,本文将深入探讨PHP在云原生和Serverless环境下的高级应用,帮助开发者构建可扩展、高可用的现代化PHP应用。1.ServerlessPHP架构Bref与AWSLambda集成bash#安装Brefcomposerrequirebref/brefphpartisanvendor:publish--tag=serverless-configserverless.yml
- thinkphp5.1升级thinkphp6遇到的坑
程序员君常笑
thinkphpphp
想着将就项目从tp5.1升级到tp6,哪知道遇到这么多坑,因为tp6不是写给MVC结构,记录下默认安装thinkphp6有问题如果使用指令composercreate-projecttopthink/thinktp安装,不能完全安装。需要添加--ignore-platform-reqs。//安装composercreate-projecttopthink/thinkrent6--ignore-pl
- 【慧游鲁博】【11】小程序端·游览画卷修改·支持图片url格式·结合图床上传和加载·数据对接
哇哦哇哦~~
创新实训个人记录小程序vuespringboot后端
文章目录需求修改细节前端主要修改点说明:前端传递格式后端ArtifactItem类:ScrollServiceImpl类:修改`InfoPanel`结构重构`ScrollHorizontalRollComposer`修改后的`ScrollHorizontalRollComposer`移除冗余代码修改总结数据流图片格式兼容性问题成果展示需求由于图片和文字交流是相互独立的,故仅保留文字交互信息,然后根
- Composer 使用
QD.Joker
PHPcomposerphp
composer作为PHP开发中依赖管理工具,平时经常会用到,今天总结一下常用命令。以下内容均来自Windows环境下。文章目录一、Composer使用二、基本约束三、镜像源参考文档:菜鸟教程官网(一般不用)中文官网官方文档Packagist中国全量镜像一、Composer使用install命令(初始化项目的时候会用到)要使用Composer,先在项目的目录下创建一个composer.json文件
- docker-componse
冰尘s1
dockereureka容器
docker-componse部署后更新个别服务方法一方法二脚本方法一服务名name构建新镜像docker-composebuildname停掉服务docker-composestopname删除服务的容器docker-composerm-fname创建服务的容器docker-composecreatename启动容器docker-composestartname*[参考链接]:https://b
- 使用swoole作为MQTT客户端并接收实现即时消息推送
少湖说
PHP实战swoolephpmqtt
环境准备首先需要安装swoole可以使用pecl进行安装,如peclinstallswool,注意加上版本号或者使用构建好的docker镜像,这里使用构建好的zacksleo/php:7.1-alpine-fpm-swoole镜像使用compose安装依赖库composerrequirejesusslim/mqttclient编写业务逻辑代码setAuth(getenv('TOKEN_MQTT_U
- 学习路之PHP--webman协程学习
hopetomorrow
webmanphp学习phpandroid
学习路之PHP--webman协程学习一、准备二、配置三、启动四、使用协程是一种比线程更轻量级的用户级并发机制,能够在进程中实现多任务调度。它通过手动控制挂起和恢复来实现协程间的切换,避免了进程上下文切换的开销一、准备PHP>=8.1Workerman>=5.1.0(composerrequireworkerman/workerman~v5.1)webman-framework>=2.1(comp
- php composer 基础使用
Qazink
phpphp
composer使用文章目录composer使用安装使用修改为阿里镜像源基本使用流程安装php-r"copy('https://getcomposer.org/installer','composer-setup.php');"php-r"if(hash_file('sha384','composer-setup.php')==='48e3236262b34d30969dca3c37281b3b4
- php和composer关系_使用Composer管理PHP依赖关系
weixin_39800875
php和composer关系
简介现在软件规模越来越大,PHP项目的开发模式和许多年前已经有了很大变化。记得初学PHP那会儿,boblog是一个很好的例子,几乎可以代表PHP项目的开发模式。当时PHP5.x以上的版本刚开始流行,仍然有大量的生产环境使用PHP4.x。由于历史遗留的问题,OOP思想在PHP项目中还不是那么广泛流行。随着PHP5.3的发布,PHP项目规模的扩大,在其他语言领域大展身手的OOP开发模式也在PHP中崭露
- Composer安装、入门+Autoload机制详解
Runnings Man
PHPphpcomposer
一、安装【comoser.phar】comoser.phar是composer的可执行文件,当前目录安装composer实际是【LINUX/WIN】curl(下载)命令下载了composer.phar文件并且以phpcomposer.phar[command]的形式使用composer。【首选-全局安装】如果需要全局安装composerWIN:下载并使用composer-setup.exe安装程序
- composer 版本号表达式:^ / ~ / *
版本号规则主版本号.次版本号.修订号^表示除主版本号,其他段都可以变"php":"^7.3|^8.0"表示7.3=7.3,<8.0"表示7.3<=版本号<8.0~下一个主要版本段"mockery/mockery":"~1.3"表示1.3<=版本号<2.0"mockery/mockery":"~1.3.2"表示1.3.2<=版本号<1.4.0*表示通配当前版本段"mockery/mockery":"
- 开发环境配置多版本composer的切换和php版本切换脚本
达尔罕
phpcomposer开发语言
背景:当开发环境配置多版本php,根据项目所需切换php版本时我们composer也需要切换到合适的版本才能友好解决php框架所需的依赖、三方库、包等匹配加载。故此在这里向大家推荐了总结的方法,可能方法有点老土了但是切实的能解决上述的问题,希望能给大家带来方便吧,如果大家有好的方案也希望通过评论分享出来,谢谢大家的支持!!!***在这里就不去说php多版本部署了,因为很多集成的工具都能很方便的切换
- PHP生成PDF
兔子不吃胡萝卜、
phppdfandroid
由于本人使用TCPDF将HTML生成的PDF未达到预想的结果,则更改使用Mpdf一、PHP使用TCPDF生成PDF文件首先通过composer安装TCPDF安装命令:composer require tecnickcom/tcpdf使用TCPDFrequire_once引入TCPDF里的tcpdf.php文件在公用文件里封装好pdf方法随时调用,需要传递HTML代码和文件名function pdf
- Docker 制作PHP镜像
暴躁的大熊猫
全栈开发phpdocker阿里云
DockerfileFROMphp:8.2.3-fpmENVCOMPOSER_ALLOW_SUPERUSER1RUNset-eux\&&ln-snf/usr/share/zoneinfo/Asia/Shanghai/etc/localtime&&echo"Asia/Shanghai">/etc/timezone\&&cp/etc/apt/sources.list/etc/apt/sources.l
- 如何部署Laravel项目到WSL2的Ubuntu 24.04环境?
深山技术宅
LaravelPHP经验phpnginxmysql
以下是在WSL2(Ubuntu24.04LTS)上部署Laravel项目的完整步骤,基于已搭建的Nginx+PHP-FPM+MySQL+Redis环境:1.准备工作确保已完成:WSL2+Ubuntu24.04安装Nginx+PHP8.3+MySQL+Redis环境配置2.安装Composer(PHP依赖管理)#下载Composercurl-sShttps://getcomposer.org/ins
- Laravel 项目Clone后运行500|SERVER ERROR
清幽竹客
PHPlaravelphp
Laravel项目克隆当你在Git仓库中上传Laravel项目时,.gitignore文件中不会被上传到Git仓库中。通常是不包含vendor目录的。这是因为vendor目录包含了所有依赖的源代码,而这些源代码可以通过Composer工具根据composer.json文件重新安装。这么做有几个好处:1、节省空间:vendor目录通常很大,包含了所有依赖库的源代码,如果将其包含在版本控制中,会导致仓
- Yii2使用PHPExcel读取excel
pxy_lele
进击的礼包yiiphpexcel
个人使用过程中保存一些使用PHPExcel的经验,以便后来翻阅:与PHP的Yii框架结合,可以轻松使用。而且根本不用网上所说的修改Yii的自动加载文件等方法。具体使用方法:下载phpofficehttp://phpexcel.codeplex.com/releases/view/119187(如果用composer的话,不需要手动下载)下载后首级目录结构是Classes,Documentation
- getID3获取本地或远程视频时长
cmj8043719242
phpphp
音频文件也可使用,使用ffmeg安装太复杂了附ffmpeg方式:centos下安装ffmpeg_yum安装ffmpeg-CSDN博客使用composer先安装composerrequirejames-heinrich/getid3获取本地视频//获取本地视频$video_path=$_SERVER['DOCUMENT_ROOT'].$params['video'];$getid3=newgetID
- MediaWiki 是一个免费开源的维基软件
西里网
开源
参考资料Matomo(原名Piwik)是一个开源的网站分析平台Composer是PHP的依赖管理工具能否用Docker替代虚拟化?Hello-World是一个最简单的Docker镜像PHP是一种开源的服务器端脚本语言MongoDB是一个开源的NoSQL数据库Monica是一款开源的个人关系管理(PRM)工具Hitch是一个高性能的HTTP代理服务器MediaWiki简介MediaWiki是一个免费
- thinkphp5框架一小时搭建一个php后端(1)
小甲鱼同学
php后端开发语言
开发环境使用phpstudy编辑器用sublime数据库navicat需要下载composer先配置好本地域名,然后需要我们将资源引入到项目里面下载地址www.layui.com.layui框架有很多我们后台开发需要的控件,帮助我们高效完成后台搭建。先创建我们的入口文件admins.php,接着我们在application里面建立一个admins的目录。接着我们需要创建登录需要用到的控制器。Acc
- 超好用的AI编程工具cursor后端开发心得技巧(结合idea使用)
靠谱杨
工作总结AI编程cursorAI编程工具AI后端开发intellij-idea
一、关于cursor的必要了解1、cursor有两种模式:chat和composer,比较建议的使用方法是使用chat帮助我们沟通需求,分解问题,问题逐渐清晰之后再用composer生成相应的代码。2、composer模式仅支持收费的高级模型,因为composer需要大模型融合编译器功能,cursor对模型的适配进行了二次开发,所以接入其他模型的API接口是用不了的,只能使用chat模式。3、必要
- 图片上传到腾讯云COS小案例
yy_flipped
Laravel腾讯云云计算
一、安装扩展包composerrequire"overtrue/laravel-filesystem-cos"二、修改配置文件config/filesystems.php把cos相关配置追加到disks中去:env('STORAGE','local'),/*|----------------------------------------------------------------------
- 【多条件控制生成模型综述】
雨休
深度学习机器学习人工智能
多条件控制生成1分类2联合训练2.1Composer2.2Cocktail2.3SVDiff3持续学习3.1CLoRA3.2L2DM3.3STAMINA4权重融合4.1Cones4.2CustomDiffusion/Mix-of-Show4.3ZipLoRA4.4styleLoRAs5基于注意力的集成方法5.1Cones25.2Mix-of-Show6指导组合6.1DecomposeandReal
- PHP实现PDF自动签名
Dy大叔
DMS文件管理系统开发PHP
技术要点:在PDF中找到一个固定锚点,在需要放置图片的地方找到测试出锚点对应的XY位//使用了poppler方法,其他PDF库在获取坐标方面有各种问题,他的安装是在Linux底层,比在PHP项目中用Composer安装的库看上去更稳定,功能更强//pdftohtml方法需要先将PDF缓存成一个XML文件来进行坐标及其他具体数据的获取,所以要新建一个$TempPath做为缓存位置可以方便后期统一清理
- Symfony2浅析
菜鸟、小高
学习Symfony
一.什么是Symfony特性:严谨,复杂,灵动的PHP框架版本区别:1.x05-12(停止维护)2.x至今遵循PSR-0自动载入遵循比较新的web开发最佳实践启用composer第三方包管理工具LTS与非LTSLTS:版本维护周期比普通版长,适用:企业开发,大型项目开发非LTS版本:维护周期短(半年及以上),适用:研究项目,个人学习为什么使用它尽行开发快速开发健壮,可持续升级初期-快速上线中期,需
- Laravel 12 实现文字点击验证码功能
深山技术宅
PHP经验Laravellaravelphp
Laravel12实现文字点击验证码功能文字点击验证码是一种用户友好且安全性较高的验证方式,用户需要点击图片中指定的文字来完成验证。以下是实现方法:方法一:使用扩展包(推荐)1.安装inhere/captcha扩展包composerrequireinhere/captcha2.创建验证码控制器namespaceApp\Http\Controllers;useInhere\Captcha\Click
- 在 Laravel 12 中实现拖动验证码(滑块验证码)功能
深山技术宅
LaravelPHP经验laravelphp
Laravel12实现拖动验证码功能在Laravel12中实现拖动验证码(滑块验证码)功能,可以使用第三方服务或自行开发。以下是几种实现方式:方法一:使用第三方服务(推荐)1.使用极验(GeeTest)composerrequiregee-team/gt3-php-sdk在.env中添加:GEETEST_ID=your_idGEETEST_KEY=your_key控制器代码:useGeeTeam\
- 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