JDK命令之java -- 用来执行字节码文件,即用来执行Java程序

文章目录

  • 一、命令介绍
  • 二、用法格式
  • 三、常用选项
  • 四、常用选项详解
    • -client,-server
    • -hotspot
    • -classpath,-cp
    • -classpath
    • -D=value
    • -verbose[:class|gc|jni]
    • -verbose:gc
    • -verbose:jni
    • -version
    • -showversion
    • -ea[:...|:] 和 -enableassertions[:...|:]
    • -da[:...|:] 和 -disableassertions[:...|:]
    • -esa | -enablesystemassertions
    • -dsa | -disablesystemassertions
    • -agentlib:[=]
    • -agentpath:[=]
    • -javaagent:[=]
  • 五、非标准选项/扩展选项
  • 六、扩展选项详解
    • -Xmixed
    • -Xint
    • -Xbootclasspath:path 和 -Xbootclasspath/a:path 和 -Xbootclasspath/p:path
    • -Xnoclassgc
    • -Xincgc
    • -Xloggc:
    • -Xbatch
    • -Xms
    • -Xmx
    • -Xss
    • -Xprof
    • -Xfuture
    • -Xrs
  • 七、使用示例
    • 运行 class 文件
    • 运行 jar 文件中的 class 文件
    • 显示系统当前使用的 jdk 版本信息
    • 增加虚拟机可以使用的最大内存
    • 用java -X 命令查看JVM的配置说明

一、命令介绍

该命令是 Java 程序的解释器,也就是字节码文件(.class)的解释器,或者叫执行器。Java 源代码编译成字节码文件之后,需要通过解释器 java 来执行 Java 程序指定的动作。所以命令 java 就是用来执行字节码文件的程序,也就是用来执行 Java 程序的程序。

二、用法格式

# 执行类
java [-options] class [args...]# 执行 jar 文件
java [-options] -jar jarfile [args...]

三、常用选项

选项说明
-d32使用 32 位数据模型 (如果可用)
-d64使用 64 位数据模型 (如果可用)
-client选择 “client” VM(ginger547:应该是指 Virtual Machine)
-server选择 “server” VM
-hotspot是 “server” VM 的同义词 [已过时],默认 VM 是 server
-cp 或者 -classpath指定一个用于查找类文件的列表,它由目录、 JAR 归档文件和 ZIP 归档文件组成。就是指定类搜索路径,类路径项用分号;分隔(这里有问题,Mac 终端使用分号分隔会报错!而使用冒号 : 则没有问题!)。指定 -classpath 或 -cp 将覆盖 CLASSPATH 环境变量的所有设置。如果不使用 -classpath 和 -cp,且没有设定 CLASSPATH ,当前目录就是用户类路径
-D=设置系统属性
-verbose:class显示所加载的每个类的信息
-verbose:gc报告每个垃圾收集事件
-verbose:jni报告有关本地方法的使用和其它 Java 平台相关代码接口活动的信息
-version输出产品版本并退出
-version:只运行指定的版本
-showversion输出产品版本并继续
-jre-restrict-search在版本搜索中包括用户专用 JRE
-no-jre-restrict-search在版本搜索中排除用户专用 JRE
-help 或者 -?查看命令帮助信息
-X输出非标准选项的帮助

四、常用选项详解

-client,-server

这两个参数用于设置虚拟机使用何种运行模式,client模式启动比较快,但运行时性能和内存管理效率不如server模式,通常用于客户端应用程序。相反,server模式启动比client慢,但可获得更高的运行性能。

在 windows 上,缺省的虚拟机类型为 client 模式,如果要使用 server 模式,就需要在启动虚拟机时加 -server 参数,以获得更高性能,对服务器端应用,推荐采用 server 模式,尤其是多个CPU的系统。在 Linux,Solaris 系统缺省采用 server 模式。

-hotspot

含义与client相同,jdk1.4以前使用的参数,jdk1.4开始不再使用,代之以 client。

-classpath,-cp

虚拟机在运行一个类时,需要将其装入内存,虚拟机搜索类的方式和顺序如下:
Bootstrap classes,Extension classes,User classes。

Bootstrap 中的路径是虚拟机自带的 jar 或 zip 文件,虚拟机首先搜索这些包文件,用 System.getProperty("sun.boot.class.path") 可得到虚拟机搜索的包名。

Extension 是位于 jre/lib/ext 目录下的 jar 文件,虚拟机在搜索完 Bootstrap 后就搜索该目录下的jar文件。用 System. getProperty("java.ext.dirs”) 可得到虚拟机使用 Extension 搜索路径。

User classes 搜索顺序为当前目录、环境变量 CLASSPATH、-classpath。

-classpath

告知虚拟机搜索目录名、jar文档名、zip文档名,多个路径项之间 windows 下用分号 ; 分隔,类unix系统使用冒号 : 分隔。

例如当你自己开发了公共类并包装成一个common.jar包,在使用 common.jar中的类时,就需要用-classpath common.jar 告诉虚拟机从common.jar中查找该类,否则虚拟机就会抛出java.lang.NoClassDefFoundError异常,表明未找到类定义。

在运行时可用 System.getProperty(“java.class.path”) 得到虚拟机查找类的路径。

使用 -classpath 后虚拟机将不再使用 CLASSPATH 中的类搜索路径,如果 -classpathCLASSPATH 都没有设置,则虚拟机使用当前路径 . 作为类搜索路径。

推荐使用 -classpath 来定义虚拟机要搜索的类路径,而不要使用环境变量 CLASSPATH 的搜索路径,以减少多个项目同时使用CLASSPATH 时存在的潜在冲突。例如,应用1 要使用a1.0.jar中的类G应用2 要使用 a2.0.jar 中的 类G,a2.0.jara1.0.jar 的升级包,当 a1.0.jara2.0.jar 都在 CLASSPATH 中,虚拟机搜索到第一个包中的 类G 时就停止搜索,如果 应用1应用2 的虚拟机都从CLASSPATH 中搜索,就会有一个应用得不到正确版本的 类G

-D=value

在虚拟机的系统属性中设置属性名/值对,运行在此虚拟机之上的应用程序可用System.getProperty(“propertyName”)得到value的值。
如果value中有空格,则需要用双引号将该值括起来,如-Dname=”space string”
该参数通常用于设置系统级全局变量值,如配置文件路径,因为该属性在程序中任何地方都可访问。

-verbose[:class|gc|jni]

在输出设备上显示虚拟机运行信息。
verbose 和 verbose:class 含义相同,输出虚拟机装入的类的信息,显示的信息格式如下:
[Loaded java.io.FilePermission$1 from shared objects file]
当虚拟机报告类找不到或类冲突时可用此参数来诊断来查看虚拟机从装入类的情况。

-verbose:gc

在虚拟机发生内存回收时在输出设备显示信息,格式如下:
[Full GC 268K->168K(1984K), 0.0187390 secs]
该参数用来监视虚拟机内存回收的情况。

-verbose:jni

在虚拟机调用native方法时输出设备显示信息,格式如下:
[Dynamic-linking native method HelloNative.sum … JNI]
该参数用来监视虚拟机调用本地方法的情况,在发生jni错误时可为诊断提供便利。

-version

显示可运行的虚拟机版本信息然后退出。一台机器上装有不同版本的JDK时

-showversion

显示版本信息以及帮助信息。

-ea[:…|:] 和 -enableassertions[:…|:]

从JDK1.4开始,java可支持断言机制,用于诊断运行时问题。通常在测试阶段使断言有效,在正式运行时不需要运行断言。断言后的表达式的值是一个逻辑值,为true时断言不运行,为false时断言运行,抛出java.lang.AssertionError错误。

上述参数就用来设置虚拟机是否启动断言机制,缺省时虚拟机关闭断言机制,用-ea 可打开断言机制,不加和classname时运行所有包和类中的断言,如果希望只运行某些包或类中的断言,可将包名或类名加到-ea之后。例如要启动包com.foo.util中的断言,可用命令 –ea:com.foo.util 。

-da[:…|:] 和 -disableassertions[:…|:]

用来设置虚拟机关闭断言处理,packagename和classname的使用方法和-ea相同。

-esa | -enablesystemassertions

设置虚拟机显示系统类的断言。

-dsa | -disablesystemassertions

设置虚拟机关闭系统类的断言。 dedecms.com

-agentlib:[=]

该参数是JDK5新引入的,用于虚拟机装载本地代理库。
Libname 为本地代理库文件名,虚拟机的搜索路径为环境变量PATH中的路径,options为传给本地库启动时的参数,多个参数之间用逗号分隔。在Windows 平台上虚拟机搜索本地库名为libname.dll的文件,在Unix上虚拟机搜索本地库名为libname.so的文件,搜索路径环境变量在不同系统上有所不同,Linux、SunOS、IRIX上为LD_LIBRARY_PATH,AIX上为LIBPATH,HP-UX上为SHLIB_PATH。
例如可使用-agentlib:hprof来获取虚拟机的运行情况,包括CPU、内存、线程等的运行数据,并可输出到指定文件中,可用-agentlib:hprof=help来得到使用帮助列表。在jre"bin目录下可发现hprof.dll文件。

-agentpath:[=]

设置虚拟机按全路径装载本地库,不再搜索PATH中的路径。其他功能和agentlib相同。

-javaagent:[=]

虚拟机启动时装入java语言设备代理。Jarpath文件中的mainfest 文件必须有Agent-Class属性。代理类要实现public static void premain(String agentArgs, Instrumentation inst)方法。当虚拟机初始化时,将按代理类的说明顺序调用premain方法。 copyright dedecms

参见:java.lang.instrument

五、非标准选项/扩展选项

选项说明
-Xmixed混合模式执行 (默认)
-Xint仅解释模式执行
-Xbootclasspath:<用 : 分隔的目录和 zip/jar 文件>设置搜索路径以引导类和资源,即自举类路径,指定以冒号分隔的目录、 JAR 归档文件和 ZIP 归档文件列表,用以查找自举类文件。这些自举类文件用来取代 JDK 1.2 软件中所包括的自举类文件
-Xbootclasspath/a:<用 : 分隔的目录和 zip/jar 文件>附加在引导类路径末尾
-Xbootclasspath/p:<用 : 分隔的目录和 zip/jar 文件>置于引导类路径之前
-Xdiag显示附加诊断消息
-Xnoclassgc禁用类垃圾收集
-Xincgc启用增量垃圾收集
-Xloggc:将 GC 状态记录在文件中 (带时间戳)
-Xbatch禁用后台编译
-Xms设置初始 Java 堆大小
-Xmx设置最大 Java 堆大小
-Xss设置 Java 线程堆栈大小
-Xprof输出 cpu 配置文件数据
-Xfuture启用最严格的检查, 预期将来的默认值
-Xrs减少 Java/VM 对操作系统信号的使用 (请参阅文档)
-Xcheck:jni对 JNI 函数执行其他检查
-Xshare:off不尝试使用共享类数据
-Xshare:auto在可能的情况下使用共享类数据 (默认)
-Xshare:on要求使用共享类数据, 否则将失败。
-XshowSettings显示所有设置并继续
-XshowSettings:all显示所有设置并继续
-XshowSettings:vm显示所有与 vm 相关的设置并继续
-XshowSettings:properties显示所有属性设置并继续
-XshowSettings:locale显示所有与区域设置相关的设置并继续

六、扩展选项详解

-Xmixed

设置-client模式虚拟机对使用频率高的方式进行Just-In-Time编译和执行,对其他方法使用解释方式执行。该方式是虚拟机缺省模式。

-Xint

设置-client模式下运行的虚拟机以解释方式执行类的字节码,不将字节码编译为本机码。

-Xbootclasspath:path 和 -Xbootclasspath/a:path 和 -Xbootclasspath/p:path

改变虚拟机装载缺省系统运行包rt.jar而从-Xbootclasspath中设定的搜索路径中装载系统运行类。除非你自己能写一个运行时,否则不会用到该参数。
/a:将在缺省搜索路径后加上path 中的搜索路径。
/p:在缺省搜索路径前先搜索path中的搜索路径。

-Xnoclassgc

关闭虚拟机对class的垃圾回收功能。

-Xincgc

启动增量垃圾收集器,缺省是关闭的。增量垃圾收集器能减少偶然发生的长时间的垃圾回收造成的暂停时间。但增量垃圾收集器和应用程序并发执行,因此会占用部分CPU在应用程序上的功能。

-Xloggc:

将虚拟机每次垃圾回收的信息写到日志文件中,文件名由file指定,文件格式是平文件,内容和-verbose:gc输出内容相同。

-Xbatch

虚拟机的缺省运行方式是在后台编译类代码,然后在前台执行代码,使用-Xbatch参数将关闭虚拟机后台编译,在前台编译完成后再执行。

-Xms

设置虚拟机可用内存堆的初始大小,缺省单位为字节,该大小为1024的整数倍并且要大于1MB,可用k(K)或m(M)为单位来设置较大的内存数。初始堆大小为2MB。
例如:-Xms6400K,-Xms256M

-Xmx

设置虚拟机内存堆的最大可用大小,缺省单位为字节。该值必须为1024整数倍,并且要大于2MB。可用k(K)或m(M)为单位来设置较大的内存数。缺省堆最大值为64MB。
例如:-Xmx81920K,-Xmx80M
当应用程序申请了大内存运行时虚拟机抛出java.lang.OutOfMemoryError: Java heap space错误,就需要使用-Xmx 设置虚拟机内存堆的最大可用大小

-Xss

设置线程栈的大小,缺省单位为字节。与-Xmx类似,也可用K或M来设置较大的值。通常操作系统分配给线程栈的缺省大小为1MB。
另外也可在java中创建线程对象时设置栈的大小,构造函数原型为Thread(ThreadGroup group, Runnable target, String name, long stackSize)。

-Xprof

输出CPU运行时的诊断信息。

-Xfuture

对类文件进行严格格式检查,以保证类代码符合类代码规范。为保持向后兼容,虚拟机缺省不进行严格的格式检查。

-Xrs

减少虚拟机中操作系统的信号(singals)的使用。该参数通常用在虚拟机以后台服务方式运行时使用(如Servlet)。

七、使用示例

运行 class 文件

执行带 main 方法的 class 文件,命令格式为:java <class文件名>

例如,执行文件 Test.class,命令如下:

java Test

注意:

  1. class 文件名不要带文件后缀 .class
  2. 上述例子中,没有指定 class 文件的所在路径,那么 class 文件就必须在当前目录下或者把文件路径配置在环境变量 CLASSPATH

如果把 class 文件的位置配置在环境变量 CLASSPATH 中,也可以直接执行:

# 给环境变量 CLASSPATH 重新赋值,即把 class 文件的所在路径 /home/workspace/qpw/bin 追加到环境变量 CLASSPATH 中
set CLASSPATH=/home/workspace/qpw/bin:$CLASSPATH
java Test

上述命令会在当前目录中和 CLASSPATH 中的路径中查找 class 文件。

如果执行的 class 文件是带包的,即在类文件中使用了:package <包名>,那应该在包的基路径下执行,命令行为:java <包名>.CLASS文件名

例如:
PackageTest.java 中,其包名为:com.ee2ee.test,对应的语句为:package com.ee2ee.test;

PackageTest.java 及编译后的 class 文件 PackageTest.class 的存放目录如下:

classes|__com|__ee2ee|__test|__PackageTest.java|__PackageTest.class

要运行 PackageTest.class,应在 classes 目录下执行:

cd classes
java com.ee2ee.test.PackageTest

注:

运行 jar 文件中的 class 文件

原理和运行 class 文件一样,只需加上参数 -cp <jar文件名> 即可。
例如:执行 test.jar 中的类 com.ee2ee.test.PackageTest,命令行如下:

java -cp test.jar com.ee2ee.test.PackageTest 

上述命令会在指定的 jar 包中查找 class 文件。

当然你也可以把 jar 文件的路径放在环境变量 CLASSPATH 中,这样就可以直接执行 class 文件了。

例如:带包名的 class 文件,必须写全路径类名,即必须写完整的包名。

set CLASSPATH=/home/workspace/qpw/lib/test.jar:$CLASSPATH
java com.ee2ee.test.PackageTest 

显示系统当前使用的 jdk 版本信息

当一台机器上有多个jdk版本时,需要知道当前使用的是那个版本的jdk,使用参数-version即可知道其版本,命令如下:

[root@htlwk0001host ~]# java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

增加虚拟机可以使用的最大内存

java虚拟机可使用的最大内存是有限制的,缺省值通常为64MB或128MB。
如果一个应用程序为了提高性能而把数据加载内存中而占用较大的内存,比如超过了默认的最大值128MB,需要加大java虚拟机可使用的最大内存,否则会出现Out of Memory(系统内存不足)的异常。启动java时,需要使用如下两个参数:
-Xms:java虚拟机初始化时使用的内存大小;
-Xmx:java虚拟机可以使用的最大内存。
以上两个参数中设置的 size,可以带单位,例如:256m 表示 256MB。
举例说明:

java -Xms128m -Xmx256m ...

表示java虚拟机初始化时使用的内存为128MB,可使用的最大内存为256MB。
对于tomcat,可以修改其脚本catalina.sh(unix平台)或catalina.bat(windows平台),设置变量JAVA_OPTS即可,例如:

JAVA_OPTS='-Xms128m -Xmx256m' 

在控制台输出信息中,有个-X(注意是大写)的命令,这个正是查看JVM配置参数的命令。

用java -X 命令查看JVM的配置说明

运行后如下结果,这些就是配置JVM参数的秘密武器,这些信息都是英文的,为了方便阅读,我根据自己的理解翻译成中文了(不准确的地方还请各位纠正)

JVM的配置说明(英文版)

D:\j2sdk15\bin>java -X-Xmixed           mixed mode execution (default)-Xint             interpreted mode execution only-Xbootclasspath:<directories and zip/jar files separated by ;>set search path for bootstrap classes and resources-Xbootclasspath/a:<directories and zip/jar files separated by ;>append to end of bootstrap class path-Xbootclasspath/p:<directories and zip/jar files separated by ;>prepend in front of bootstrap class path-Xnoclassgc       disable class garbage collection-Xincgc           enable incremental garbage collection-Xloggc:<file>    log GC status to a file with time stamps-Xbatch           disable background compilation-Xms<size>        set initial Java heap size-Xmx<size>        set maximum Java heap size-Xss<size>        set java thread stack size-Xprof            output cpu profiling data-Xfuture          enable strictest checks, anticipating future default-Xrs              reduce use of OS signals by Java/VM (see documentation)-Xcheck:jni       perform. additional checks for JNI functions-Xshare:off       do not attempt to use shared class data-Xshare:auto      use shared class data if possible (default)-Xshare:on        require using shared class data, otherwise fail.The -X options are non-standard and subject to change without notice.

JVM的配置说明(中文版)

1、-Xmixed           mixed mode execution (default)混合模式执行2、-Xint             interpreted mode execution only解释模式执行3、-Xbootclasspath:<directories and zip/jar files separated by ;>set search path for bootstrap classes and resources设置zip/jar资源或者类(.class文件)存放目录路径3、-Xbootclasspath/a:<directories and zip/jar files separated by ;>append to end of bootstrap class path追加zip/jar资源或者类(.class文件)存放目录路径4、-Xbootclasspath/p:<directories and zip/jar files separated by ;>prepend in front of bootstrap class path预先加载zip/jar资源或者类(.class文件)存放目录路径5、-Xnoclassgc       disable class garbage collection关闭类垃圾回收功能6、-Xincgc           enable incremental garbage collection开启类的垃圾回收功能7、-Xloggc:<file>    log GC status to a file with time stamps记录垃圾回日志到一个文件。8、-Xbatch           disable background compilation关闭后台编译9、-Xms<size>        set initial Java heap size设置JVM初始化堆内存大小10、-Xmx<size>        set maximum Java heap size设置JVM最大的堆内存大小11、-Xss<size>        set java thread stack size设置JVM栈内存大小12、-Xprof            output cpu profiling data输入CPU概要表数据13、-Xfuture          enable strictest checks, anticipating future default执行严格的代码检查,预测可能出现的情况14、-Xrs              reduce use of OS signals by Java/VM (see documentation)通过JVM还原操作系统信号15、-Xcheck:jni       perform. additional checks for JNI functions对JNI函数执行检查16、-Xshare:off       do not attempt to use shared class data尽可能不去使用共享类的数据17、-Xshare:auto      use shared class data if possible (default)尽可能的使用共享类的数据18、-Xshare:on       require using shared class data, otherwise fail.尽可能的使用共享类的数据,否则运行失败The -X options are non-standard and subject to change without notice.

怎么用这这些参数呢?其实所有的命令行都是这么一用,下面我就给出一个最简单的HelloWorl的例子来演示这个参数的用法,非常的简单。

HelloWorld.java

public class  HelloWorld{public static void main(String[] args){System.out.println("Hello World!");}}

编译并运行:

D:\j2sdk15\bin>javac HelloWorld.javaD:\j2sdk15\bin>java -Xms256M -Xmx512M HelloWorldHello World!

实践:在大型系统或者应用中配置JVM参数

比如你配置IDE工具的参数,常见的有IDEA、Eclipse,这个是在一个配置文件中指定即可。

如果你要在J2EE环境中配置这些参数,那么你需要在J2EE应用服务器或者Servlet容器相关启动参数设置处指定,其启动文件中来配置,Tomcat是在catalina.bat中配置,weblogic和websphere是在其他地方

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/333465.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php中双引号的区别,PHP中单引号和双引号的区别

好久没有写博客了&#xff0c;都忘了积累知识啦……现在开始全新的生活&#xff0c;重拾记录的习惯。今天要写的就是PHP中单引号和双引号的区别。在PHP中&#xff0c;我们可以使用单引号或者双引号来表示字符串。不过我们作为开发者&#xff0c;应该了解其中的区别。一、字符串…

sbe 详解_内部简单二进制编码(SBE)

sbe 详解SBE是用于金融行业的非常快速的序列化库&#xff0c;在本博客中&#xff0c;我将介绍一些使其快速发展的设计选择。 序列化的全部目的是对消息进行编码和解码&#xff0c;并且有很多可用的选项&#xff0c;例如XML&#xff0c;JSON&#xff0c;Protobufer&#xff0c;…

php调用swf文件上传,swfupload-jquery-plugin AJAX+PHP 文件上传

var listitem>file.name (Math.round(file.size/1024) KB)>>>Pending;$(#log).append(listitem);$(this).swfupload(startUpload);})//绑定开始上传文件事件.bind(uploadStart, function(event, file){$(#log li#file.id).find(p.status).text(Uploading...);$(#lo…

aws lambda使用_使用AWS Lambdas扩展技术堆栈

aws lambda使用面对现实吧。 调试性能问题很困难&#xff0c;但是更难解决。 假设您发现了有害的代码&#xff0c;这些代码正在拖慢您的应用的运行速度。 最终会有一段时间&#xff0c;您发现此代码减速是同步的或线性执行的。 解决这些有问题的代码段的最有效方法之一就是将最…

Java声明定义抽象类/接口/继承/实现

文章目录声明定义抽象类声明定义接口派生类、抽象类、接口的继承要点声明定义抽象类 public abstract class CRMSystem {public abstract Client add(Client newGuy); //添加用户方法public abstract Event add(Event e, Client guy); //重载添加事件、用户方法public abstrac…

cuba开发_使用CUBA进行开发–与Spring相比有很大的转变?

cuba开发阅读另一个供内部公司使用的Web项目的要求时&#xff0c;您&#xff08;至少是我自己&#xff09;通常会看到一个很普通的集合&#xff1a;定义明确的数据存储结构&#xff08;或有时是现有的旧数据库&#xff09;&#xff0c;大量的数据输入形式&#xff0c;非常复杂的…

imagettftext php7,mac php7 imagettftext

Mac OS X 自带PHP环境gd库安装扩展freetype问题&#xff1a; “Call to undefined function imagettftext()”解决方法&#xff1a;curl -s [http://php-osx.liip.ch/install.sh](https://link.jianshu.com/?thttp://php-osx.liip.ch/install.sh) | bash -s 7.3sudo vim ~/.ba…

图片授权模式

RM、RF、PE是3种不同的图片授权模式&#xff0c;由图片卖家设定&#xff0c;图片买家根据自己的需要来进行选择。这三种模式是图片行业在发展过程中&#xff0c;经过对图片用户需求的不断总结而确定的。摄影师可以根据自己的销售意愿&#xff0c;在编辑图片的时候&#xff0c;对…

java线程池延期执行一次_Java使用者的延期执行

java线程池延期执行一次在前面的博客文章&#xff08;“ 延迟执行Java的供应商 “&#xff09;&#xff0c;我引用礁HORSTMANN的陈述书中‘ 的Java SE8为真的很急关于lambda表达式’&#xff0c;‘所有的lambda表达式的点被推迟执行 。’ Horstmann在最后一年为Dobb博士的杂志写…

python时间序列数据分析,Python数据分析之时间序列

Python数据分析之时间序列发布时间&#xff1a;2020-07-10 06:56:27来源&#xff1a;51CTO阅读&#xff1a;808作者&#xff1a;up4ever1. 时间序列类型时间戳(timestramp)即特定的时刻固定时期(period)如2018年1月或2018年1月1日时间间隔(interval)由起始和结束时间戳表示2. P…

java jdk 序列化_JDK 11:Java序列化的终结开始了吗?

java jdk 序列化在博客文章“ 将Google的协议缓冲区与Java结合使用 ”中&#xff0c;我引用了乔什布洛赫&#xff08;Josh Bloch&#xff09;的第三版的有效Java &#xff0c;他写道&#xff1a;“没有理由在您编写的任何新系统中使用Java序列化。” Bloch建议使用“跨平台结构…

php+ksort+返回true,PHP preg_replace函数

mixed preg_replace( mixed pattern, mixed replacement, mixed subject [, int limit] )在PHP中用来执行正则表达式的匹配以及替换的函数。可以返回一个正则表达式转换后的值。在subject中搜索pattern模式的匹配项&#xff0c;并用replacement模式进行替换。如果指定了 limit&…

下拉选择框

</select> 标签有一个属性 multiple&#xff0c;将其设置成 multiple"multiple" 按住 Ctrl 键即可实现多选。 请看例子&#xff1a; <html><head><meta http-equiv"Content-Type" content"text/html; charsetgb2312" />…

rest端点_REST:使用Controller端点?

rest端点在一般的REST架构中&#xff0c;基本概念是资源。 在资源之后&#xff0c;下一步是为这些资源开发一个统一接口&#xff0c;这在HTTP领域通常意味着&#xff1a; 创建为POST 阅读就是GET 更新为PUT&#xff08;或部分更新为PATCH&#xff09; 删除已删除 在现实世…

Java 字符串与整数之间的互相转换

1、如何将字符串String转化为整数int int i Integer.parseInt(str); int i Integer.valueOf(my_str).intValue(); 注: 字串转成Double, Float, Long的方法大同小异。 2、如何将字符串String转化为Integer Integer integerInteger.valueOf(i)3、如何将整数 int 转换成字串 Str…

hello world_建立无服务器的“ Hello World”功能

hello world无服务器 &#xff0c;功能即服务&#xff08;FaaS&#xff09;或仅具有云功能&#xff0c;就可以编写将在云中运行的代码。 您可以使用多种不同的语言&#xff08;例如JavaScript&#xff08;Node.js&#xff09;&#xff0c;Swift&#xff0c;Python&#xff0c;J…

xshell调出oracle安装界面,XShell+Xmanager实现在XShell中显示远程服务器的图形界面

你可以使用Xmanager软件&#xff0c;远程安装Oracle软件&#xff0c;Linux操作系统使用字符安装并不影响这种方式的使用。这个方案也可以大大优化你的Linux系统的性能&#xff0c;进而提高你的数据库性能。启动你的的Xmanager&#xff0c;我现在使用的是3.0版本&#xff0c;接收…

Oracle 数据库错误信息:动态执行表不可访问,本会话的自动统计被禁止

使用 PL/SQL 时, 每次第一次打开表的时候会提示以下信息&#xff1a; 动态执行表不可访问&#xff0c;本会话的自动统计被禁止&#xff0c;原因&#xff1a;V$SESSION,V$SESSTAT,V$STATNAME 没有被授权&#xff0c;没有权限访问这几张表&#xff0c;所以没有本法进行统计!那就…

jdk类加载器执行步骤_[JDK 11] jcmd中的类加载器层次结构详细信息

jdk类加载器执行步骤自从在JavaOne 2012上听说 jcmd以来&#xff0c;我就一直是命令行诊断工具jcmd的 粉丝 。 从那时起&#xff0c;我已经广泛使用了此工具&#xff0c;并多次在此博客中发布过此工具&#xff1a; jcmd&#xff1a;一个可以全部统治的JDK命令行工具 确定活动…