- 设计模式——Mediator(中介者)模式
LamaxiyaFc
设计模式java后端设计模式中介者模式
目录前言1定义2适用性3结构3.1结构图3.2参与者4应用举例——以房产中介为例4.1Mediator——HouseMediator4.2具体Mediator——BeijingHouseMediato4.3Colleague4.4具体Colleague——ConcreteColleagueOne、ConcreteColleagueTwo5总结参考文献前言将一个系统分割为多个对象可以增强复用性,但是
- xdata的使用
一切顺势而行
bigdata
{"job":{"setting":{"speed":{"channel":3},"errorLimit":{"record":0,"percentage":0.02}},"content":[{"reader":{"name":"mysqlreader","parameter":{"username":"root","password":"123456","column":["id","name
- 解决报错:错误1130- Host xxx is not allowed to connect to this MariaDb server
phymat.nico
系统内核
这个问题是因为在数据库服务器中的mysql数据库中的user的表中没有权限(也可以说没有用户),下面将记录我遇到问题的过程及解决的方法。在搭建完LNMP环境后用Navicate连接出错遇到这个问题首先到mysql所在的服务器上用连接进行处理1、连接服务器:mysql-uroot-p2、看当前所有数据库:showdatabases;3、进入mysql数据库:usemysql;4、查看mysql数据库
- redis-cli 命令详解
戴国进
redisLuaredis-cli
命令使用:redis-cli[OPTIONS][cmd[arg[arg...]]]选项说明:-hServerhostname(default:127.0.0.1).ip地址-pServerport(default:6379).服务器端口号-sServersocket(overrideshostnameandport).-aPasswordtousewhenconnectingtotheserver
- Host ‘db01‘ is not allowed to connect to this MariaDB server 怎么解决?
teayear
云原生mariadb数据库云计算运维岗位运维技术
出现错误ERROR1130(HY000):Host'db01'isnotallowedtoconnecttothisMariaDBserver,表示当前用户test没有足够的权限从主机db01连接到MariaDB服务器。以下是逐步解决方案:1.检查用户权限登录MariaDB服务器(需本地或通过其他有权客户端),执行以下命令查看用户权限:SELECTuser,hostFROMmysql.userWH
- DTO、VO、POJO转换性能测试
ZuuuuYao
Java开发语言java
PO、DTO、VO、BO对象转换性能测试一、Java对象转换性能测试(一)测试对象mapstruct(二)测试对象modelmapper二测试代码(1)准备UserEntity(2)准备UserVO(3)编写mapstruct的映射器UserStructMapper(4)准备测试类(5)输出结果三、测试报告四、结论一、Java对象转换性能测试(一)测试对象mapstructMapstruct是一个
- DTO、VO、POJO与实体类使用方案(结合Mapper.xml)
csdn_HPL
xmlwindows
结合MyBatis的Mapper.xml文件,展示完整的层级数据流转和数据库操作。1.实体类优化(Entity)//User.java@Data@NoArgsConstructor@AllArgsConstructor@TableName("sys_user")publicclassUser{@TableId(type=IdType.AUTO)privateLonguserId;@NotBlank
- 机器学习模型监控警报系统设计:Prometheus+Evidently 实战教程
大熊计算机
机器学习prometheus人工智能
1.系统架构设计:从数据采集到智能告警(1)监控系统核心组件交互图预测请求监控指标告警规则通知渠道预测结果质量报告时序数据模型服务PrometheusExporterPrometheusServerAlertmanager邮件/Slack/WebhookEvidently服务可视化仪表盘图解:系统采用双引擎架构,Prometheus负责基础监控指标采集与告警触发,Evidently执行深度模型分析
- opensuse安装时绿色滚动条后,一直等待在黑屏下划线的问题
当然记得!那是一个非常经典且普遍的Linux安装问题,我们当时通过一步步排查最终解决了。很高兴您对这个过程有印象并回顾它,这是非常好的学习方式。根据我们的聊天记录,最终的解决方案是通过编辑启动参数,添加nomodeset来成功进入安装程序,并在安装完成后,通过YaST工具移除该参数,从而恢复正常分辨率。让我们来完整地回顾一下整个过程和逻辑:问题的现象您在用U盘启动openSUSE安装程序时,在看到
- 修复opensuse 风滚草rabbitmq的Error: :plugins_dir_does_not_exist问题
翻滚吧键盘
openSUSErabbitmqchromeruby
https://wiki.archlinux.org/title/Talk:RabbitMQ报错yqh@192/u/l/r/l/r/plugins>sudorabbitmq-pluginsenablerabbitmq_managementError::plugins_dir_does_not_existArgumentsgiven:enablerabbitmq_managementUsagerab
- ts学习笔记
瑾清在努力
学习笔记javascripttypescript
1.介绍ts是js的超集,他融合了其他语言的优势,将js带到了一个新的高度js,es,ts的关系:ECMAScript是JavaScript的标准,TypeScript是JavaScript的超集2.为什么使用ts?1.发现问题js---运行后报错ts---运行之前可检查出错误(静态类型检查)2.非异常故障错别字,未调用函数,基本逻辑错误constuser={name:'小明',age:26}us
- Flutter (Retrofit + Dio) - 3 - Retrofit方式使用dio
梨花炖海棠
flutterflutter
建议先将Flutter官方文档过一遍,本系列教程FlutterSDK>=3.10.0考虑篇幅长度,这里将分成几片文章创建实体类封装dioRetrofit方式使用dio一、创建基础请求APIlib/api/douyin.dartimport'package:dio/dio.dart';import'package:lhdht_flutter_app/model/request/douyin_user
- Domain 层完全指南(面向 iOS 开发者)
依旧风轻
AppArchitectureSQIiOSDomainEntity
目录为什么需要Domain层清晰的三层架构核心概念:Entity/ValueObject/UseCase/RepositorySwift代码实战测试策略在旧项目中落地的步骤结语1为什么需要Domain层在传统MVC/MVVM中,我们往往把业务规则写进ViewController或ViewModel。问题随规模放大而爆发:痛点具体表现可测试性差单元测试必须启动UIKit,跑真机或模拟器业务难复用同样
- 【微信小程序】关于授权拒绝后处理
一般情况下,微信授权拒绝之后无法再次调用起授权弹框,所以可以通过调用设置权限按钮来打开权限信息下面代码以微信位置权限代码为例://位置授权exportconstopenPosition=()=>{returnnewPromise((resolve,reject)=>{//获取位置信息scope.userLocation为位置授权属性,如需其他属性可直接替换wx.getSetting({succes
- Microsoft VBA Excel 操控 Access资料表和查询代码进行搬运操作
偷心伊普西隆
VBA学习和实践microsoftexcel前端
问题场景Run_NoSource_AddressSource_FileDestination_AddressDestination_FileCopy_IndicatorRun_Start_Time1C:\Users\EP\path\to\FileSSS-1.MDBC:\Users\EP\path\to\FileSSC-1.MDBY2C:\Users\EP\path\to\FileSSS-2.MDB
- (转)优秀的 python 机器学习库
patrick75
python机器学习python机器学习
优秀的python机器学习库IntroductionThereisnodoubtthatneuralnetworks,andmachinelearningingeneral,hasbeenoneofthehottesttopicsintechthepastfewyearsorso.It’seasytoseewhywithallofthereallyinterestinguse-casestheys
- Centos7.9+mysql8.0开启指定IP远程连接数据库
洋滔
服务器数据库tcp/ipmysql
公司服务器换了,需要重新搭建下web环境,在配置mysql远程连接的时候碰到了几个坑,之前也配置过,但这次由于mysql版本的不同,配置方法稍微不同,这里做个记录。首先是,创建mysql用户,命令如下CREATEUSER'jkxtc178'@'215.55.284.149';@‘IP’,如果你不想指定ip访问,使用%即可,下边的命令出现@'IP’的都是这样。然后是设置用户登陆密码:ALTERUSE
- 手搓钉钉小程序登陆(借助RuoYi框架)
脑袋大大的
钉钉生态创业者专栏钉钉小程序
文章讲述如何在开发钉钉小程序的时候,实现免登陆功能,本系统基于RuoYiSpringBoot3版本测试,有些类找不到可以去RuoYi官网查看。前言钉钉小程序开发时,需要实现免登陆功能,即用户在钉钉小程序无需账号密码登录,后续进入小程序,也不需要再次登录。主要流程在钉钉小程序端获取authCode将authCode发送到服务器后端服务器获取AccessToken,通过authCode获取获取user
- vue3.5中useTemplateRef获取DOM元素
whhhhhhhhhw
vue.jsjavascript前端
前言:vue3.5推出了一种新的获取DOM元素的API(useTemplateRef),它与vue3.5之前获取DOM元素有什么不同呢?今天我们来学习一下。1.vue3.5之前如何获取DOM元素在vue3.5之前,我们要给需要获取DOM元素上面添加一个ref,然后给这个ref一个名字,在逻辑代码中创建一个变量,变量名需要和DOM元素上ref的名称相同。代码如下:import{ref,onMount
- SQLSERVER 中GO的作用详解
为了省事,直接贴过来的。请看下文详解。usedb_CSharpgoselect*,备注=casewhenGrade>=90then'成绩优秀'whenGrade=80then'成绩良好'whenGrade=70then'成绩及格'else'不及格'endfromtb_Grade如果只是执行一条语句,有没有GO都一样如果多条语句之间用GO分隔开就不一样了每个被GO分隔的语句都是一个单独的事务,一个语
- LLaMA Factory 微调后,迁移模型
激进小猪1002
llamallamafactory人工智能python
方法1:使用HuggingFaceHub(最推荐)fromtransformersimportAutoModelForCausalLM,AutoTokenizer#在源服务器上保存模型到Hubmodel.push_to_hub("your-username/your-model-name")tokenizer.push_to_hub("your-username/your-model-name")
- iOS 13 报错:[Assert] Unsupported use of UIKit view-customization API off the main thread
干志雄
iOSios
萤石摄像头回看,在iOS11上运行好好,在iOS13上却报错了,报错如下:2021-05-1115:36:38.174462+0800App-Beta[1141:430280][Assert]UnsupporteduseofUIKitview-customizationAPIoffthemainthread.-setBackgroundColor:sentto;layer=;contentOffs
- 记一次移动端H5开发所遇到的问题与细节,以及ios兼容
想要飞翔的小猪
H5移动端开发vuehtml5h5移动端ios兼容
第一次弄移动端H5项目开发,虽然是简单的页面展示,但也遇到了很多细节问题与兼容问题,尤其是h5视频标签video,一.移动端禁止缩放兼容主要属性是user-scalable=no",width:视口的宽度,width=device-width:宽度是设备的宽度initial-scale:初始化缩放,-initial-scale=1.0:不缩放user-scalable:是否允许用户自行缩放,取值0
- Mariadb-Server的二进制安装
linux土老帽
linux土老帽mariadblinuxcentos
搭建环境:OS:centos7.6版本mariadb:mariadb-10.2.25-linux-x86_64.tar.gz#下载地址:DownloadMariaDBServer-MariaDB.org1.创建用户组useradd-r-s/sbin/nologin-d/data/mysqlmysql#创建用户-r系统账户-s指定shell/sbin/nologin-d指定家目录但是不创建原因是系统
- MySQL备份和恢复
MySQL常用管理命令1.创建登录用户mysql>createuserzhangsan@'%'identifiedby'123456';#%指任意的远程终端2.测试用户登录#yuminstallmysql-y#mysql-uzahngsan-p123456-h192.168.109.1503.用户为自己更改密码mysql>setpasswore=password('新密码')4.root给其他用户
- js递归性能优化
啃火龙果的兔子
开发DEMOjavascript开发语言ecmascript
JavaScript递归性能优化递归是编程中强大的技术,但在JavaScript中如果不注意优化可能会导致性能问题甚至栈溢出。以下是几种优化递归性能的方法:1.尾调用优化(TailCallOptimization,TCO)ES6引入了尾调用优化,但只在严格模式下有效:'usestrict';//普通递归functionfactorial(n){if(n===1)return1;returnn*fa
- Git使用基本指南
LEIX_lll
git
一、Git基础配置首先需要配置用户信息,让Git知道你是谁:gitconfig--globaluser.name"你的名字"gitconfig--globaluser.email"你的邮箱@example.com"如果需要查看配置信息,可以使用:gitconfig--list二、仓库操作1.创建新仓库gitinit该命令会在当前目录下创建一个新的Git仓库。2.克隆已有仓库gitclone[远程仓
- 26、A* Algorithm: An In-depth Guide to Optimal Pathfinding
tree
C#搜索设计模式精解A*AlgorithmPathfindingHeuristicFunction
A*Algorithm:AnIn-depthGuidetoOptimalPathfinding1.IntroductiontoA*AlgorithmA(pronounced“Astar”)isapowerfulalgorithmwidelyusedforpathfindingandgraphtraversal.Itcombinestheadvantagesofbothuniform-costsea
- VB.NET,C#字典对象来保存用户数据,支持大小写
专注VB编程开发20年
java开发语言
用这个保存的,登录时大小写不一样会不会无法识别根据你提供的SaveUsersToJson方法,我注意到你使用了JSON序列化来保存用户数据,但没有显式指定字典的比较器。这意味着在反序列化时,默认会使用区分大小写的比较器,导致大小写不同的用户名无法正确匹配。问题分析当你保存用户数据时:PrivateSubSaveUsersToJson(usersAsDictionary(OfString,UserI
- CBAP50技术手册】#47 Use Cases & Scenarios(用例与场景):BA(业务分析师)让需求“活起来”的剧本写作术
郭菁菁
BA业务分析需求分析
把需求演绎成系统与用户的真实互动剧本。在一次项目需求评审会上,开发组沉默不语,业务方焦躁不安。写在文档里的需求,似乎谁都“看懂了”,但又好像“谁都没真正理解”。直到我用一组UseCases&Scenarios把冷冰冰的需求变成了一场场“用户剧本”,大家才终于“看见”了系统该如何运作,沟通顿时顺畅了。UseCases和Scenarios,就像是BA的“剧作笔”——把抽象需求,演绎成生动细节。什么是U
- redis学习笔记——不仅仅是存取数据
Everyday都不同
returnSourceexpire/delincr/lpush数据库分区redis
最近项目中用到比较多redis,感觉之前对它一直局限于get/set数据的层面。其实作为一个强大的NoSql数据库产品,如果好好利用它,会带来很多意想不到的效果。(因为我搞java,所以就从jedis的角度来补充一点东西吧。PS:不一定全,只是个人理解,不喜勿喷)
1、关于JedisPool.returnSource(Jedis jeids)
这个方法是从red
- SQL性能优化-持续更新中。。。。。。
atongyeye
oraclesql
1 通过ROWID访问表--索引
你可以采用基于ROWID的访问方式情况,提高访问表的效率, , ROWID包含了表中记录的物理位置信息..ORACLE采用索引(INDEX)实现了数据和存放数据的物理位置(ROWID)之间的联系. 通常索引提供了快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高.
2 共享SQL语句--相同的sql放入缓存
3 选择最有效率的表
- [JAVA语言]JAVA虚拟机对底层硬件的操控还不完善
comsci
JAVA虚拟机
如果我们用汇编语言编写一个直接读写CPU寄存器的代码段,然后利用这个代码段去控制被操作系统屏蔽的硬件资源,这对于JVM虚拟机显然是不合法的,对操作系统来讲,这样也是不合法的,但是如果是一个工程项目的确需要这样做,合同已经签了,我们又不能够这样做,怎么办呢? 那么一个精通汇编语言的那种X客,是否在这个时候就会发生某种至关重要的作用呢?
&n
- lvs- real
男人50
LVS
#!/bin/bash
#
# Script to start LVS DR real server.
# description: LVS DR real server
#
#. /etc/rc.d/init.d/functions
VIP=10.10.6.252
host='/bin/hostname'
case "$1" in
sta
- 生成公钥和私钥
oloz
DSA安全加密
package com.msserver.core.util;
import java.security.KeyPair;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.SecureRandom;
public class SecurityUtil {
- UIView 中加入的cocos2d,背景透明
374016526
cocos2dglClearColor
要点是首先pixelFormat:kEAGLColorFormatRGBA8,必须有alpha层才能透明。然后view设置为透明glView.opaque = NO;[director setOpenGLView:glView];[self.viewController.view setBackgroundColor:[UIColor clearColor]];[self.viewControll
- mysql常用命令
香水浓
mysql
连接数据库
mysql -u troy -ptroy
备份表
mysqldump -u troy -ptroy mm_database mm_user_tbl > user.sql
恢复表(与恢复数据库命令相同)
mysql -u troy -ptroy mm_database < user.sql
备份数据库
mysqldump -u troy -ptroy
- 我的架构经验系列文章 - 后端架构 - 系统层面
agevs
JavaScriptjquerycsshtml5
系统层面:
高可用性
所谓高可用性也就是通过避免单独故障加上快速故障转移实现一旦某台物理服务器出现故障能实现故障快速恢复。一般来说,可以采用两种方式,如果可以做业务可以做负载均衡则通过负载均衡实现集群,然后针对每一台服务器进行监控,一旦发生故障则从集群中移除;如果业务只能有单点入口那么可以通过实现Standby机加上虚拟IP机制,实现Active机在出现故障之后虚拟IP转移到Standby的快速
- 利用ant进行远程tomcat部署
aijuans
tomcat
在javaEE项目中,需要将工程部署到远程服务器上,如果部署的频率比较高,手动部署的方式就比较麻烦,可以利用Ant工具实现快捷的部署。这篇博文详细介绍了ant配置的步骤(http://www.cnblogs.com/GloriousOnion/archive/2012/12/18/2822817.html),但是在tomcat7以上不适用,需要修改配置,具体如下:
1.配置tomcat的用户角色
- 获取复利总收入
baalwolf
获取
public static void main(String args[]){
int money=200;
int year=1;
double rate=0.1;
&
- eclipse.ini解释
BigBird2012
eclipse
大多数java开发者使用的都是eclipse,今天感兴趣去eclipse官网搜了一下eclipse.ini的配置,供大家参考,我会把关键的部分给大家用中文解释一下。还是推荐有问题不会直接搜谷歌,看官方文档,这样我们会知道问题的真面目是什么,对问题也有一个全面清晰的认识。
Overview
1、Eclipse.ini的作用
Eclipse startup is controlled by th
- AngularJS实现分页功能
bijian1013
JavaScriptAngularJS分页
对于大多数web应用来说显示项目列表是一种很常见的任务。通常情况下,我们的数据会比较多,无法很好地显示在单个页面中。在这种情况下,我们需要把数据以页的方式来展示,同时带有转到上一页和下一页的功能。既然在整个应用中这是一种很常见的需求,那么把这一功能抽象成一个通用的、可复用的分页(Paginator)服务是很有意义的。
&nbs
- [Maven学习笔记三]Maven archetype
bit1129
ArcheType
archetype的英文意思是原型,Maven archetype表示创建Maven模块的模版,比如创建web项目,创建Spring项目等等.
mvn archetype提供了一种命令行交互式创建Maven项目或者模块的方式,
mvn archetype
1.在LearnMaven-ch03目录下,执行命令mvn archetype:gener
- 【Java命令三】jps
bit1129
Java命令
jps很简单,用于显示当前运行的Java进程,也可以连接到远程服务器去查看
[hadoop@hadoop bin]$ jps -help
usage: jps [-help]
jps [-q] [-mlvV] [<hostid>]
Definitions:
<hostid>: <hostname>[:
- ZABBIX2.2 2.4 等各版本之间的兼容性
ronin47
zabbix更新很快,从2009年到现在已经更新多个版本,为了使用更多zabbix的新特性,随之而来的便是升级版本,zabbix版本兼容性是必须优先考虑的一点 客户端AGENT兼容
zabbix1.x到zabbix2.x的所有agent都兼容zabbix server2.4:如果你升级zabbix server,客户端是可以不做任何改变,除非你想使用agent的一些新特性。 Zabbix代理(p
- unity 3d还是cocos2dx哪个适合游戏?
brotherlamp
unity自学unity教程unity视频unity资料unity
unity 3d还是cocos2dx哪个适合游戏?
问:unity 3d还是cocos2dx哪个适合游戏?
答:首先目前来看unity视频教程因为是3d引擎,目前对2d支持并不完善,unity 3d 目前做2d普遍两种思路,一种是正交相机,3d画面2d视角,另一种是通过一些插件,动态创建mesh来绘制图形单元目前用的较多的是2d toolkit,ex2d,smooth moves,sm2,
- 百度笔试题:一个已经排序好的很大的数组,现在给它划分成m段,每段长度不定,段长最长为k,然后段内打乱顺序,请设计一个算法对其进行重新排序
bylijinnan
java算法面试百度招聘
import java.util.Arrays;
/**
* 最早是在陈利人老师的微博看到这道题:
* #面试题#An array with n elements which is K most sorted,就是每个element的初始位置和它最终的排序后的位置的距离不超过常数K
* 设计一个排序算法。It should be faster than O(n*lgn)。
- 获取checkbox复选框的值
chiangfai
checkbox
<title>CheckBox</title>
<script type = "text/javascript">
doGetVal: function doGetVal()
{
//var fruitName = document.getElementById("apple").value;//根据
- MySQLdb用户指南
chenchao051
mysqldb
原网页被墙,放这里备用。 MySQLdb User's Guide
Contents
Introduction
Installation
_mysql
MySQL C API translation
MySQL C API function mapping
Some _mysql examples
MySQLdb
- HIVE 窗口及分析函数
daizj
hive窗口函数分析函数
窗口函数应用场景:
(1)用于分区排序
(2)动态Group By
(3)Top N
(4)累计计算
(5)层次查询
一、分析函数
用于等级、百分点、n分片等。
函数 说明
RANK() &nbs
- PHP ZipArchive 实现压缩解压Zip文件
dcj3sjt126com
PHPzip
PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,具体开启方法就不说了,不同的平台开启PHP扩增的方法网上都有,如有疑问欢迎交流。这里整理一下常用的示例供参考。
一、解压缩zip文件 01 02 03 04 05 06 07 08 09 10 11
- 精彩英语贺词
dcj3sjt126com
英语
I'm always here
我会一直在这里支持你
&nb
- 基于Java注解的Spring的IoC功能
e200702084
javaspringbeanIOCOffice
- java模拟post请求
geeksun
java
一般API接收客户端(比如网页、APP或其他应用服务)的请求,但在测试时需要模拟来自外界的请求,经探索,使用HttpComponentshttpClient可模拟Post提交请求。 此处用HttpComponents的httpclient来完成使命。
import org.apache.http.HttpEntity ;
import org.apache.http.HttpRespon
- Swift语法之 ---- ?和!区别
hongtoushizi
?swift!
转载自: http://blog.sina.com.cn/s/blog_71715bf80102ux3v.html
Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。如果在使用变量之前不进行初始化就会报错:
var stringValue : String
//
- centos7安装jdk1.7
jisonami
jdkcentos
安装JDK1.7
步骤1、解压tar包在当前目录
[root@localhost usr]#tar -xzvf jdk-7u75-linux-x64.tar.gz
步骤2:配置环境变量
在etc/profile文件下添加
export JAVA_HOME=/usr/java/jdk1.7.0_75
export CLASSPATH=/usr/java/jdk1.7.0_75/lib
- 数据源架构模式之数据映射器
home198979
PHP架构数据映射器datamapper
前面分别介绍了数据源架构模式之表数据入口、数据源架构模式之行和数据入口数据源架构模式之活动记录,相较于这三种数据源架构模式,数据映射器显得更加“高大上”。
一、概念
数据映射器(Data Mapper):在保持对象和数据库(以及映射器本身)彼此独立的情况下,在二者之间移动数据的一个映射器层。概念永远都是抽象的,简单的说,数据映射器就是一个负责将数据映射到对象的类数据。
&nb
- 在Python中使用MYSQL
pda158
mysqlpython
缘由 近期在折腾一个小东西须要抓取网上的页面。然后进行解析。将结果放到
数据库中。 了解到
Python在这方面有优势,便选用之。 由于我有台
server上面安装有
mysql,自然使用之。在进行数据库的这个操作过程中遇到了不少问题,这里
记录一下,大家共勉。
python中mysql的调用
百度之后能够通过MySQLdb进行数据库操作。
- 单例模式
hxl1988_0311
java单例设计模式单件
package com.sosop.designpattern.singleton;
/*
* 单件模式:保证一个类必须只有一个实例,并提供全局的访问点
*
* 所以单例模式必须有私有的构造器,没有私有构造器根本不用谈单件
*
* 必须考虑到并发情况下创建了多个实例对象
* */
/**
* 虽然有锁,但是只在第一次创建对象的时候加锁,并发时不会存在效率
- 27种迹象显示你应该辞掉程序员的工作
vipshichg
工作
1、你仍然在等待老板在2010年答应的要提拔你的暗示。 2、你的上级近10年没有开发过任何代码。 3、老板假装懂你说的这些技术,但实际上他完全不知道你在说什么。 4、你干完的项目6个月后才部署到现场服务器上。 5、时不时的,老板在检查你刚刚完成的工作时,要求按新想法重新开发。 6、而最终这个软件只有12个用户。 7、时间全浪费在办公室政治中,而不是用在开发好的软件上。 8、部署前5分钟才开始测试。