我有一个启动Tomcat的脚本,它看起来像这样:
rem set JRE_HOME=C:\Program Files\Java\jdk1.7.0_03
set JRE_HOME=C:\Program Files\Java\jre7\
set CATALINA_HOME=D:\test\Server\apache-tomcat-6.0.18
"%CATALINA_HOME%\bin\catalina.bat" jpda start
Run Code Online (Sandbox Code Playgroud)
我可以将JRE_HOME设置为我的jre文件夹或我的JDK文件夹,并且Tomcat可以工作,但是如果我删除JRE_HOME并使用JAVA_HOME,Tomcat只有在我给它JDK文件夹的路径时才能工作.
那么JRE和JAVA之间的区别是什么,为什么Tomcat会以这种方式表现呢?
字符串是否GetStringUTFChars()以空终止字符从末尾返回?或者我需要确定使用的长度GetStringUTFLength并自己终止它吗?
在处理xml文件时是否可以跳过节点?例如:说我有以下xml代码:
<mycase desc="">
<caseid> id_1234 </caseid>
<serid ref=""/>
......
......
......
</mycase>
Run Code Online (Sandbox Code Playgroud)
我想让它看起来像这样:
<mycase desc="" caseid="id_1234">
.....
.....
</mycase>
Run Code Online (Sandbox Code Playgroud)
目前我这样做:
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="2.0" exclude-result-prefixes="xs xdt err fn"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:fn="http://www.w3.org/2005/xpath-functions"
xmlns:xdt="http://www.w3.org/2005/xpath-datatypes"
xmlns:err="http://www.w3.org/2005/xqt-errors">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="mycase">
<xsl:element name="mycase">
<xsl:attribute name="desc"/>
<xsl:attribute name="caseid">
<xsl:value-of select="caseid"/>
</xsl:attribute>
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
......
......
Run Code Online (Sandbox Code Playgroud)
这确实创造了我想要的东西,但因为<xsl:apply-templates/>它处理所有节点.虽然我希望它一起跳过处理caseid和serid.这也适用于其他节点,这些节点在新的XML结构中不可用.那么如何跳过我不想使用xslt处理的节点.
我有一个显示图像的用户控件,当将鼠标悬停在该控件上时,图像的名称将显示在图像下方的标签中。我已将此用户控件放入TableLayoutPanel单元格中,这将创建一个图像表。
当鼠标移到每个控件上,甚至移到表单本身上时,我试图更改光标。
我试过把
Cursor.Current = Cursors.Hand
Run Code Online (Sandbox Code Playgroud)
在MouseEnter控制器的情况下尝试过这个,TableLayoutPanel甚至在父窗体中也没有任何运气。什么都没发生。为什么?
我还注意到这在用户控件中很常见,并且在进入用户控件时很难更改鼠标光标。
有谁知道如何更改用户控件中的光标?
简单的代码没问题
long x = Integer.MAX_VALUE;
System.out.println(x * 2 + "...." + Long.MAX_VALUE);
= 4294967294....9223372036854775807
Run Code Online (Sandbox Code Playgroud)
但这里发生了什么?为什么-2
System.out.println(2 * Integer.MAX_VALUE + "...." + Long.MAX_VALUE);
= -2....9223372036854775807
Run Code Online (Sandbox Code Playgroud)
为什么元素是149998,编译器不会将这些转换为long?
long elements = 2 * Integer.MAX_VALUE + 150000;
System.out.println(elements + "...." + Long.MAX_VALUE);
149998....9223372036854775807
Run Code Online (Sandbox Code Playgroud)
-谢谢