0 1 引言 依稀还记得有次面试,有面试官问我int(10)与int(11)有什么区别,当时觉得就是长度的区别吧!面试官最后也没有给反馈,我也就以为自己答对了。...直到有一次有个同学又跟我谈起这个事,才去查了以下,发现事情并没有哪么简单... ......最后查出的结果是:这里的M代表的并不是存储在数据库中的具体的长度,以前总是会误以为int(3)只能存储 3个长度的数字,int(11)就会存储 11 个长度的数字,这是大错特错的。...0 2 知识点 int(M) 中的M指示最大显示宽度,最大有效显示宽度是 255,且显示宽度与存储大小或类型包含的值的范围无关。...0 3 总结 所以,int(2) 与int(11)后的括号中的字符表示显示宽度,整数列的显示宽度与 MySQL 需要用多少个字符来显示该列数值,与该整数需要的存储空间的大小都没有关系,int类型的字段能存储的数据上限依旧是
谷歌搜索 「多出 font 标签」,有很多人中招,问题最终解决。...然后再打开刚才写的 demo,Chrome 就会提示用户是否要翻译当前网页,如下图。 如果用户把「一律翻译英语」进行了勾选,开始的时候不会有什么异常。...根治方案 如果不弹出翻译的选项,用户就没有选择的机会,也就不会出问题了。有两种方式。 改浏览器的设置,也就是文章开头的图片。将「询问是否翻译非您所用语言的网页」取消勾选。...改代码,想一下为什么会弹出这个翻译的选项? <!...这里的讨论,最后也不清楚到底哪个正确,但实践中设置成 zh 是可行的,此时 Chrome 就不会弹出翻译选项了。
按软件工程来讲,这个提法可能不合适,但是,还能什么更好的提法吗? 谢炀(18***743) 9:26:24 业务现状?...譯揮 (252***466) 9:31:11 如:提出如下业务需求 需求原因:为加强公司办公用品管理,控制办公用品费用支出 需求目标:实现公司办公用品的集中管理 需求概述:各部室提交各自办公用品需求清单...潘加宇(3504847) 21:03:44 (“业务需求”的说法不严谨) 如果是涉众提供的,那只能当作【需求的素材】,往往内容散乱,范围飘忽不定。我们根据这些素材来建模。...(上面说的这些,“加强公司办公用品管理”属于废话,“控制办公用品费用支出”是个大目标,比“加强公司办公用品管理”还要高一个级别,也是废话) (“实现公司办公用品的集中管理”--可以提炼“集中”的度量指标...--这个只是解决方案,不是“集中”的度量,合适的应该类似于“在维持其他指标不变的前提下,将发放的经手人缩减到原来的20%”)
二、国内有落地的ITSM工具吗?其实国内的ITSM产品非常多,但真正能够承载ITIL流程管理实践的同时又能与ITOM工具体系融合的产品却并不多。...而咱们嘉为蓝鲸ITSM产品提供了更开放敏捷的流程管理方式,致力于帮助企业打通IT运维的任督二脉,算是国内ITSM领先团队中的一员了。...咱们嘉为的ITSM,是基于ITIL实践提供事件管理/问题管理/变更管理/请求管理能力,并通过与ITOM的集成融合,极大的提升管理过程中的效率和用户体验,助力实现企业IT服务管理体系的升级,满足当前及未来运维管理所需...④ 请求管理:为进一步提升业务用户的体验,通过ITSM可以建立直观清晰的服务目录,对外提供多种获取IT服务的渠道。...再简述下产品的特点和优势:① 开箱即用的最佳实践:基于ITIL理论体系和多个行业的运维流程管理实践经验,提供内置的运维管理流程实践,流程一键安装部署,帮助企业快速从0到1构建规范化的运维管理流程。
在面对计算机的一些问题或者学习计算机的过程之中,很多乱七八糟的安装就已经让不少人摸不着头脑。...因为系统的不同,所以相应的安装往往也是需要根据系统的具体属性去选择相应的安装包,同时去学习相应教程的,不同系统之间的安装步骤会有一定的出入,所以有些人可能连相应教程都找不到,甚至连自己系统是什么也不知道...那么jdk安装教程有具体的吗? 一、jdk安装教程 jdk安装并不难。首先要根据电脑的属性下载jdk的安装包,下载完成之后双击安装即可。...当然,之后还需要根据系统新建变量值,不同系统的变量值不同,可以自行搜索相应变量值。 image.png 二、什么是jdk 对于了解计算机的人来说,对于jdk肯定是不陌生的。...当然,普通人在学习计算机的过程之中也可以下载jdk,从而更好地进行java的学习。 以上就是对于jdk安装的简要介绍,如果还有不了解的也可以上网搜索相应安装视频,根据步骤进行安装即可。
在哪能见到它 在ArrayList,LinkedList,HashMap等等的内部实现增,删,改中我们总能看到modCount的身影 它是啥意思 modCount,字面意思就是修改次数 但为什么要记录modCount...大家发现一个公共特点没有,所有使用modCount属性的全是线程不安全的 那么,我们情不自禁的就会想:这个字段大概是为了保证线程安全之类的吧 阅读源码,发现这玩意只有在本数据结构对应的迭代器中才使用,...modCount,如果在迭代器遍历的过程中,一旦发现这个对象的mcount和迭代器中存储的mcount不一样,那就抛异常,说明有人在我提交之前修改过它了。...这一策略在源码中的实现是通过 modCount 域,modCount 顾名思义就是修改次数,对HashMap 内容的修改都将增加这个值,那么在迭代器初始化过程中会将这个值赋给迭代器的 expectedModCount...在迭代过程中,判断 modCount 跟 expectedModCount 是否相等,如果不相等就表示已经有其他线程修改了 Map:注意到 modCount 声明为 volatile,保证线程之间修改的可见性
随着互联网科技的发展,自建网站不再是大型企业的专属需求,更多中小型企业甚至个人也需要建立自己的网站用于宣传甚至经营。...在建立网站的时候,我们都知道需要同步设立域名和服务器等软硬件设施,这样才能支持网站的正式运营,那么网站的域名怎么查,有什么技巧可言吗?...image.png 确定网站域名前,需查询域名状态 网站的域名怎么查?当我们确定网站的域名之前,首先需要查询域名的状态。...查询网站域名,有什么技巧吗 网站的域名怎么查?有什么技巧呢?当然是有的,其实,在查询网站域名的时候,我们可以直接搜索选择站长工具查询,在上方点击域名IP类,输入网址,点击查询就可以了。...这是一个便捷的查询方式,但这种查询方式也不是万能的。如果您要申请注册的域名比较特殊,可能通过这种常规方式并不能完全查询完毕。 网站的域名怎么查?
Spring中的MergedBeanDefinitionPostProcessor有什么作用 ?...BeanDefintion进行后置处理,那么后置处理具体包含什么逻辑呢?...这里以处理@Autowired和@Value注解的AutowiredAnnotationBeanPostProcessor为例,看看它的postProcessMergedBeanDefinition方法都做了什么事情...这样,在Spring容器后续的处理过程中,如果遇到同一个成员被多次标注的情况,Spring容器会忽略重复的处理,并保持一致性。...: 初始化当前bean的InjectionMetadata缓存 过滤掉已经处理过的依赖注入点 当然,这只是Spring中给出的应用,我们也可以在该接口中玩出更多的花样。
大家好,又见面了,我是你们的朋友全栈君。 1、 prototype对象是实现面向对象的一个重要机制。...每个函数也是一个对象,它们对应的类就是 function,每个函数对象都具有一个子对象prototype。Prototype 表示了该函数的原型, prototype表示了一个类的属性的集合。...当通过new来生成一个类的对象时,prototype对象的属 性就会成为实例化对象的属性。...obj= new HelloSubClass(); obj.subMethods(); 在以上的代码中...随后,又通过prototype给HelloSubClass赋予了额外的属性和方法 所以HelloSubClass是在HelloClass的基础上增加了新的属性和方法,从而实现了类的继承。
1.问题描述 为什么基于振动信号的故障诊断中,采集的信号通常是加速度信号,而不是位移、速度信号呢? 看了一些旋转机械故障诊断的文章,发现采集的信号通常都是加速度信号。...自己也用位移信号和加速度信号比较着试了一下,加速度信号做出来的效果的确要好。但是原因???还请知道的大佬指教。...2.问题解答 这个取决于分析对象设备情况来定的,目前从物理量上来解释,主要有位移,速度,加速度,而不同物理量对应着不同的故障表现,它们的关系简洁概括如下: 1、位移量适用于低频分析,一般对应着跟设备形变...、位移变化相关的故障; 2、速度量适用于中频段分析,一般对应着设备疲劳损伤、点蚀类故障; 3、加速度适用于高频段分析,一般对应着冲击破坏类故障; 3.参考资料 https://www.zhihu.com.../answer/2615231764 http://www.52phm.cn 52phm 与工业互联网人一起成长 一个专注于工业智能预警系统研发,为机器设备健康运行保驾护航的机器医生。
垃圾回收器会扫描堆内存中的对象,确定哪些对象是垃圾,并将它们释放掉,以便给程序其他部分使用。...GC 算法分类在 Java 中,垃圾回收算法可以分为两大类:基于引用计数的垃圾回收算法和基于可达性分析的垃圾回收算法。...基于引用计数的垃圾回收算法:在每个对象上添加一个引用计数器,当有一个指针引用该对象时,计数器就加 1,这样当计数器减为 0 时,说明该对象已经成为垃圾。...但是,这种算法有一个致命问题:无法解决循环引用问题。如果两个对象相互引用了对方,那么它们的引用计数器都不会为 0,垃圾回收器也就无法将它们回收掉。...在实际工作中,我们需要根据具体的业务需求,选择适当的 GC 算法和优化方法,以提高程序的性能和可靠性,满足用户的需求。
admin") .antMatchers("/user/**").hasRole("user") .anyRequest().authenticated() 那么这两种配置有什么区别呢...即数据库中存储的用户角色如果是 admin,这里就是 admin。 也就是说,使用 hasAuthority 更具有一致性,你不用考虑要不要加 ROLE_ 前缀,数据库什么样这里就是什么样!...那么 Spring Security 设计者为什么要搞两个看起来一模一样的东西呢? 2.设计理念 从设计上来说,这是两个不同的东西。...当然,如果开发者有需要,可以自定义类继承自 GrantedAuthority 以扩展其功能。...从作者的回复中我们也可以看出来,hasAuthority 和 hasRole 功能上没什么区别,设计层面上确实是两个不同的东西。
问: 在许多 SO 问题和 bash 教程中,我看到我可以通过两种方式在 bash 脚本中访问命令行参数: $ cat testargs.sh #!...passed me" $@ 结果是: $ bash testargs.sh arg1 arg2 you passed me arg1 arg2 you passed me arg1 arg2 * 和 @ 有什么区别...什么时候应该使用前者,什么时候应该使用后者? 答: 在 Bash 中,* 和 @ 都用于引用传递给脚本或函数的所有参数。 当没有双引号包围时,$* 和 $@ 的行为是相同的。...:请注意,在 "arg" 与数字之间有 2 个空格,但如果我不对 $word 加引号的话: $ for word in "$@"; do echo $word; done arg 1 arg 2 arg...3 在 bash 中,"$@" 是要遍历的“默认”列表: $ for word; do echo "$word"; done arg 1 arg 2 arg 3 那么估计有同学要问了,有没有在需要
在很多启动脚本里开头看到有 set -e 这个的作用是当有命令错误时 , 直接停止执行下面的命令 例如: /ssss命令不存在报错后 , 这样会继续往下执行到 输出2222 加上后就不会执行下面的了
SQL刷题专栏 SQL145题系列 本文系粉丝投稿,欢迎有写技术文章的小伙伴投稿 Vintage分析 Vintage分析用到信贷资产行业,指的是每个月贷款的资产质量情况,要直接跟每个相同时间段内的余额做比较...注意这里比较有个前提,就是比较的事物应该是位于同一层面上的,不能将不同账龄的放款质量进行对比,要按账龄(month of book,MOB)的长短同步对比,从而了解同一产品不同时期放款的资产质量情况。...在此基础上,按照账龄为经营时间减去发卡时间进行表间数据的转换,得到MOB,得到表2: 通过vintage报表,可以看出,不同月份的发卡账户的同一mob下的拖欠率的变化情况。...这里我们的需求是:怎么将表1格式的数据转换成表2格式的数据?...: 如果对LEAD函数使用有疑问的朋友,可以先阅读LEAD函数的具体介绍: SQL Server中的LAG函数与LEAD函数介绍 select date_faka, M3,M4, M5, M6, M7,
并不是说 JS 的类有问题,但是如果你使用该语言已有一段时间,特别是使用过ES5,那么你可能就知道了从原型继承到当前类模型的演变。 原型链会有什么问题? 以我的拙见,这个问题的答案是:没有。...但是社区花了很多年的时间才将类的概念强加到不同的结构和库中,因此ECMA技术委员会决定无论如何都要添加它。 你会问,这有什么问题吗?...如果我们当前的OOP模型是如此之薄,仅是原型继承的抽象层,那么我们到底缺少什么呢? 是什么让JS真正成为OOP? 看这个问题的一个好方法就是看看TypeScript在做什么。...换句话说,重复该名称,但要确保其接收不同的参数。 现在我们有了JS的rest参数,这使我们可以拥有一个任意数字,但是,这也意味着我们必须在方法中添加额外的代码来处理这种动态性。...受保护的属性和方法 我们已经有了公开的可见性,而且我们很快就得到了方法和属性的私有可见性(通过#前缀)。
其实,大都数异常,程序都应该有一定的相应的处理逻辑,例如,ArrayIndexOutOfBoundsException,这类异常在编码过程中应该能够被预见,并需要做出现相应的逻辑控制,有经验的程序员,在编码的过程中就已经考虑到各种异常的情况...Exception 定义 什么时候定义Exception 同样是没有任何指导原则,不同的技术框架中对异常定义的方式和方法都不太一样,毕竟每个应用系统的逻辑结构和复杂度都不太一定,我根据自身的经验整理了两个指导原则...有什么区别,在什么场景下定义,也是一个仁者见仁,智者见智的问题,Java 没有任何指导建议,按我个人的判断,JDK中也有很多的定义也不是特别合理,例如:IndexOutOfBoundsException...经过上面的两个示例也很容易看出Exception 和RuntimeException 有什么区别,JDK 的设计应该从外部程序使用的角度进行异常设计,由于外部程序导致的异常,并且外部程序应当有逻辑处理异常状态...结论 针对Java 异常的解读是我个人的见解,就像古诗词一样,不同人有不同的解读,相信JDK 的设计者也无法给 Java Exception 一个明确的解释和原则,只能靠历史经验的积累和不断的错误中,逐形成相对完整的理论
云原生化实际上是云和应用在网上数据的结合,帮助企业将更多精力放在业务而非基础设施搭建上。 但是在数字化转型过程中,企业需要什么样的基础设施、云原生又需要达到什么样的能力呢?...数字化转型,云原生需要解决什么问题 要回答企业数字化过程中对云的需求是什么,就要先明确当前业内对云的应用情况。 云计算发展至今已有十几年的时间。...与此同时,服务外部用户过程中,产品各方面的能力再次得到加强。 如何为业务带来效益 “用了你的混合多云,除了降本增效,还能在业务上给我带来什么价值?”现在用户越来越多地会提出这样的问题。...渐进式的国产化替代 值得一提的是,在当前的国际背景下,国内企业正在加速从基础设施层、芯片层到软件层,进行全面的国产替代,尤其是国产化企业。...在之前国产化替代主要是从 OA 等管理系统入手,但现在的国产替代已经到了新的阶段,即从管理系统深入到了业务系统,开始影响到企业的日常运营。这种情况下,国产替代必须保持企业业务的延续性。
这就是为什么了解Docker镜像中的内容是确保其安全性的第一步。...幸运的是,任何使用Cloud Native Buildpacks构建的镜像都包含元数据,你不仅可以使用这些元数据来确定镜像包含什么,还可以确定每个层中包含什么以及如何创建镜像。...此信息是Pack用于执行其rebase命令的内容,其中buildpack创建的层用于创建具有更新堆栈的新镜像,而无需运行构建。 镜像上的元数据还包含关于每个层内部的信息。...这些信息来自构建包创建的构建计划(build plan)。因为这些信息存储在镜像的配置层中,可以很容易地读取它们,而不必从注册表中提取整个镜像。...我们还可以看到与此JRE关联的许可证和从中提取的URI。 另一个示例材料清单条目包含的信息包括类路径和已安装的依赖项。
团队开发中,需要一种工具来协调我们的工作。因为代码不是由一个人写的,而是团队成员,每一个人都有自己的工作。于是呢,每天都有代码提交到项目里面,每天开始写的时候,又把前一天的代码拿下来合并。...但是我们要项目新建立一个文件夹,每次下载插件,我们都放在整个文件夹中。最后问题来了,其实我们提交代码的时候,这个插件的代码不需要提交到项目代码里面去的。...因为有用的js,我们已经 复制到项目的js文件了, 于是项目中就要写一个 .gitignore文件,这个文件就是说,里面写几个路径,这个路径下的文件不会上传到代码库中。...在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件)。这个文件每一行保存了一个匹配的规则例如: ?...,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
领取专属 10元无门槛券
手把手带您无忧上云