小编Sha*_*zad的帖子

Liquibase的原因和时间?

我试图在堆栈溢出上搜索这个问题但是找不到任何问题.我是liquibase的新手,想知道为什么liquibase?什么时候应该在项目中使用liquibase?

我知道这是为了将所有数据库更改保存在一个地方,但可以通过在某个存储库系统中创建一个简单的sql文件并随时更新它来完成类似的操作.

database liquibase

88
推荐指数
4
解决办法
3万
查看次数

Java +运算符

我无法理解添加运算符或short数据类型的想法.

据说;

short a = 1;
short b = 2;
short c = a + b;
Run Code Online (Sandbox Code Playgroud)

这将不能编译,因为除了运营商总是投short,chart,byte数据类型,以int我理解这一点.但是这个;

short c = 1 + 2;
Run Code Online (Sandbox Code Playgroud)

工作得很好.因此,如果添加运算符自动转换shortint然后应用结果(其中结果将是一个int),为什么这样可以正常工作?

编辑:这个问题与原始类型'short'不重复- 在Java中进行转换,因为我理解转换过程.此外,该问题讨论了数据类型的转换,其中我的问题与int文字有关.

java addition

10
推荐指数
1
解决办法
178
查看次数

URL如何写一次?

我正在浏览java.net包并阅读:

URL是"一次写入"对象.创建URL对象后,您无法更改其任何属性(协议,主机名,文件名或端口号).

但是,如果我们查看java.net.URL,我们会发现:

protected void set(String protocol, String host,
                       int port, String file, String ref)
Run Code Online (Sandbox Code Playgroud)

protected void set(String protocol, String host, int port,
                       String authority, String userInfo, String path,
                       String query, String ref)
Run Code Online (Sandbox Code Playgroud)

所以,我知道这些是受保护的方法,但可以通过这些方法访问

public static void setURLStreamHandlerFactory(URLStreamHandlerFactory fac)
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是,如果我在上面引用的那个陈述是模糊的,或者我只是误解了它?

java url

5
推荐指数
1
解决办法
134
查看次数

我每次将项目导入eclipse作为gradle时都会下载Gradle?

我试图在我的本地机器上配置几个gradle项目.这就是我做的:

命令行:

将目录更改为我要构建的项目.

./gradlew build
Run Code Online (Sandbox Code Playgroud)

它开始下载第一次非常正常.现在,每当我尝试构建此项目或使用相同版本的任何其他项目时,它首先下载gradle.

日食

我尝试导入Gradle项目,然后BuildModel它开始下载gradle,现在每次我尝试其他项目甚至尝试再次导入同一个项目时,它开始下载.

题?

这是正常的还是环境破裂了?如果以后是这种情况,我该如何解决?

eclipse command-line gradle gradlew

5
推荐指数
0
解决办法
767
查看次数

这是Android Studio的错误还是我做错了?

我在我的Ubuntu机器上安装了android studio,现在每当我尝试启动模拟器时,它会抛出异常,例如:

无法在模拟器中启动AVD.

输出:

PANIC:无法在$ ANDROID_AVD_HOME $中找到Nexus_S_API_21.ini文件,也无法在$ HOME中找到./ android/avd

所以当我这样做时:

echo $ANDROID_AVD_HOME
Run Code Online (Sandbox Code Playgroud)

它显示为空,表示此路径未设置,何时$HOME为my/home/user

所以当我进去时/home/user/.android/avd,确实没有.ini文件.所以,我很困惑,当我创建一个虚拟设备时,它会去哪里?如何找到创建虚拟设备的路径,如果可能,如何更改创建虚拟设备的路径?

android android-emulator android-studio

5
推荐指数
1
解决办法
5387
查看次数

会话复制不能与tomcat7一起使用

在我的nginx中,我设置了上游和设置粘性会话:

upstream tomcat {
      ip_hash;
      server localhost:XXXX;
      server localhost:XXXY;
      server localhost:XXYY;
}
Run Code Online (Sandbox Code Playgroud)

<distributable/>在我的web.xml中添加了标签(在所有的tomcats中)

在我的tomcat/conf/server.xml文件中添加了这个:

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
                 channelSendOptions="6">
          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
            <Membership className="org.apache.catalina.tribes.membership.McastService"
                        address="228.0.0.4"
                        port="45564"
                        frequency="500"
                        dropTime="3000"/>
            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                      address="auto"
                      port="5000"
                      selectorTimeout="100"
                      maxThreads="6"/>

            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
            </Sender>
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
          </Channel>

          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
                 filter=".*\.gif|.*\.js|.*\.jpeg|.*\.jpg|.*\.png|.*\.htm|.*\.html|.*\.css|.*\.txt"/>

          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
                    tempDir="/tmp/war-temp/"
                    deployDir="/tmp/war-deploy/"
                    watchDir="/tmp/war-listen/"
                    watchEnabled="false"/>

          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
        </Cluster>
Run Code Online (Sandbox Code Playgroud)

在我的tomcat/conf/context.xml中添加了这个:

<Manager className="org.apache.catalina.ha.session.BackupManager"
                   expireSessionsOnShutdown="false"
                   notifyListenersOnReplication="true"
                   mapSendOptions="6"/>
Run Code Online (Sandbox Code Playgroud)

但现在我可以登录我的应用程序了.如果所有3个或任何2个实例都启动并且我登录,我会看到JSESSIONID e..g xyz234.tomcat1

现在,如果我关闭tomcat1,它将带我回到登录页面,因为tomcat1已关闭.我再次登录,它创建了与tomcat2相关的会话,同时,我再次启动tomcat1,我的应用程序将带我回到登录页面.所以,我面临两个问题:

  1. 我想保持登录,即使我的tomcat(召开会话)中的任何一个都下降了.
  2. 如果那个tomcat再次出现,我仍然应该保持警惕.

注意:我使用的是JSF2应用程序,因此不确定它是否与它有任何关系.

tomcat session-replication load-balancing nginx cluster-computing

5
推荐指数
0
解决办法
837
查看次数

EditText提示文本和图标

我正在尝试使用提示作为图标和文本一起创建EditText.但提示文本转到中心,但我希望提示文本保持对齐,以便在提示图标和提示文本之间只应有一个制表符空间(间隙).

这是我尝试过的:

<EditText
        android:id="@+id/emailAddressInput"
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:ems="10"
        android:layout_marginTop ="20dp"
        android:layout_marginLeft ="20dp"
        android:layout_marginRight ="20dp"
        android:background="@drawable/rounded_edge"
        android:drawableLeft="@drawable/email_box"
        android:hint="e-mail address"
        android:gravity="left|center_vertical"
        android:maxLength="100"
        android:inputType="textEmailAddress" />
Run Code Online (Sandbox Code Playgroud)

任何想法我怎样才能达到预期的效果?

android android-edittext

3
推荐指数
1
解决办法
6693
查看次数

Log4j2 MonitorInterval性能

在log4j2中,monitorInterval属性可用于Configuration元素。我试图阅读有关此属性对性能的影响,但在任何地方都找不到任何来源。因此,我对monitorInterval属性有多个疑问。

  1. 我想知道,通过在元素中指定一个较小的值5(5秒)和一个较大的值3000(例如5分钟)会对性能产生什么影响Configuration

  2. 到底发生了什么?这是否意味着,每经过指定的时间间隔,它将自动检测一次?

  3. 有没有什么办法强迫log4j2重新加载配置马上通过配置文件(XML,JSON,YAML,性能),而不是程序重新配置?

java performance logging log4j2

3
推荐指数
1
解决办法
1539
查看次数