Java

Java应用是否支持源码上传?

不支持,必须要上传war包,或将war包解压后存放在一个目录中。

BAE支持rest吗?

支持。

如何在BAE上调用JNI并配置java.library.path?

将编译好的so文件上传到应用根目录后,在自定义配置中将/home/bae/app/加java.library.path中。

为什么Java连接数据库时好时坏?

多数情况是因为使用了长连接(连接池基本用的都是长连接)去连接了公用数据库(MySQL、MongoDB),解决方案如下:

  • 使用私有数据库(目前私有数据库只支持MySQL)。
  • 将长连接改为短连接,即每次查询之后主动断开连接,或将连接池改为简单的jdbc直连。

为何会出现中文乱码问题?如何解决

目前日志系统对中文的支持还不够好,建议使用英文日志,若必须要用中文日志,则务必使用UTF-8编码。

用户可以修改Tomcat的配置吗?

可以,具体参见配置JVM参数

Java应用为何会出现503错误?

多数情况是因为执行单元内存不能满足应用的需求,需加大内存。请在执行单元管理页面查看是否存在异常信息提示加大内存,或查看日志中的supervisor.log加以确认。

为什么会出现java.sql.SQLException:No suitable driver found for sqld.duapp.com:4050/错误?

请检查如下两点:

  • lib目录下是否包含mysql驱动的jar包
  • jar包版本是否是mysql-connector-java-5.1.22.jar或更新的版本

Java-Tomcat类型的部署,执行单元内存是512MB,用了Spring和Hibernate,在资源监控中看到内存使用率一直很高,经常在480M左右,请问正常吗?有什么好的解决办法?

Java环境相较于其他环境更耗内存,使用了Spring和Hibernate两大框架后,512MB的内存可能无法满足需求,建议将内存升级到1GB以上。

为什么app.conf中handlers配置不起作用?

Java应用中的所有请求都会从lighttpd直接转给tomcat或jetty,app.conf中handlers下的所有规则都不起作用,需通过修改web.xml解决。例如,若要设置访问首页index.html,在web.xml中做如下改动:

<welcome-file>index.jsp</welcome-file>

改为:

<welcome-file>index.html</welcome-file>