Questions tagged «java»

Java是一种流行的高级编程语言。如果您在使用或理解语言本身时遇到问题,请使用此标签。这个标签很少单独使用,最常与[spring],[spring-boot],[jakarta-ee],[android],[javafx],[gradle]和[maven]结合使用。

11
如何找到Java内存泄漏
您如何找到Java中的内存泄漏(例如,使用JHat)?我试图将堆转储加载到JHat中,以进行基本了解。但是,我不明白我应该如何找到根引用(ref)或任何被称为根引用的东西。基本上,我可以说哈希表条目有几百兆字节([java.util.HashMap $ Entry或类似的东西),但是地图到处都是……使用某种方法可以搜索大型地图,还是找到大对象树的一般根? [编辑]好的,到目前为止,我已经阅读了答案,但是我们只能说我是个贱人(这意味着我对学习如何使用JHat而不是为JProfiler付费更感兴趣)。另外,由于JHat是JDK的一部分,因此始终可用。除非当然不能使用JHat,否则只能使用蛮力,但是我不敢相信这种情况。 另外,我认为我将无法进行实际修改(添加所有地图尺寸的记录)并运行足够长的时间,以至于我无法注意到泄漏。



21
为什么SSL握手会产生“无法生成DH密钥对”异常?
当我与某些IRC服务器(而非其他IRC服务器)建立SSL连接时(大概是由于服务器的首选加密方法),出现以下异常: Caused by: java.lang.RuntimeException: Could not generate DH keypair at com.sun.net.ssl.internal.ssl.DHCrypt.<init>(DHCrypt.java:106) at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverKeyExchange(ClientHandshaker.java:556) at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:183) at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:593) at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:529) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:893) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1138) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1165) ... 3 more 最终原因: Caused by: java.security.InvalidAlgorithmParameterException: Prime size must be multiple of 64, and can only range from 512 to 1024 (inclusive) at com.sun.crypto.provider.DHKeyPairGenerator.initialize(DashoA13*..) …




16
Spring MVC @PathVariable被截断
我有一个控制器,可提供对信息的RESTful访问: @RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + "/{blahName}") public ModelAndView getBlah(@PathVariable String blahName, HttpServletRequest request, HttpServletResponse response) { 我遇到的问题是,如果我使用带有特殊字符的路径变量访问服务器,则会被截断。例如: http:// localhost:8080 / blah-server / blah / get / blah2010.08.19-02:25:47 参数blahName将为blah2010.08 但是,对request.getRequestURI()的调用包含所有传入的信息。 任何想法如何防止Spring截断@PathVariable?
142 java  spring  rest  spring-mvc  get 

20
Java中带有参数的Singleton
我正在阅读Wikipedia上的Singleton文章,并且遇到了以下示例: public class Singleton { // Private constructor prevents instantiation from other classes private Singleton() {} /** * SingletonHolder is loaded on the first execution of Singleton.getInstance() * or the first access to SingletonHolder.INSTANCE, not before. */ private static class SingletonHolder { private static final Singleton INSTANCE = new Singleton(); …

15
Android模拟器:安装错误:INSTALL_FAILED_VERSION_DOWNGRADE
我目前正在尝试编译和测试一个小型Android应用程序。 我正在使用Eclipse,并且安装了SDK 4.2(Api级别17)。我已经设定 <uses-sdk android:targetSdkVersion="17" android:minSdkVersion="8" /> 尽管我也尝试了不同的值(即17/17)。 我不使用任何GoogleAPI函数,也不使用API​​级别8中不提供的函数。或者至少在这方面我没有得到任何编译错误或警告。 当我编译该项目并在运行Android 2.2.1的真实设备上运行该应用程序时,它运行良好。但是,当我尝试在具有Android 4.2,Api Level 17的仿真器(Android虚拟设备)上运行应用程序时,出现以下错误: [2012-12-10 21:10:29 - SoftKeyboard] Installation error: INSTALL_FAILED_VERSION_DOWNGRADE [2012-12-10 21:10:29 - SoftKeyboard] Please check logcat output for more details. [2012-12-10 21:10:29 - SoftKeyboard] Launch canceled! 但Logcat为空。我真的不知道,这个错误甚至意味着什么...
142 java  android  sdk 

14
将对象添加到ArrayList的指定索引处
我认为这是一个非常简单的问题,但我不知道如何正确执行此操作。 我有一个空的arraylist: ArrayList<object> list = new ArrayList<object>(); 我有一些要添加的对象,每个对象必须位于某个位置。但是,有必要可以按每种可能的顺序添加它们。当我尝试此操作时,它不起作用,并且显示IndexOutOfBoundsException: list.add(1, object1) list.add(3, object3) list.add(2, object2) 我曾尝试是填充ArrayList用null,然后做以上。它有效,但是我认为这是一个可怕的解决方案。还有另一种方法吗?
142 java  android  arraylist 

7
java.net.SocketException:套接字失败:EPERM(不允许操作)
我正在一个Android Studio项目中进行多项活动。我目前正在尝试从localhost上的Java Servlet读取输出,但是由于套接字许可,它似乎崩溃了。 我创建了一个新项目,使用完全相同的代码,并且运行良好。所以我不明白为什么不愿意为我的项目工作。 public class LoginActivity extends AppCompatActivity { String apiUrl = "http://10.0.2.2:8080/ProyectService/Servlet?action=login"; EditText username; EditText password; AlertDialog dialog; Usuario session; @Override public void onCreate(Bundle savedInstanceState) { // Inicializacion de ventana super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); getSupportActionBar().hide(); // Inicializacion de componentes username = findViewById(R.id.username); password = findViewById(R.id.password); // Inicializacion de funcionalidad de …
142 java  android  json  servlets 

8
在Eclipse中删除一行
在Visual Studio中,您将使用Ctrl+ L,而在Eclipse中,我被迫选择一行;如果为空,则在单击Delete / Backspace之前进入该行的开头。 有快速捷径吗?谢谢!
141 java  eclipse 

12
'0000-00-00 00:00:00'不能表示为java.sql.Timestamp错误
我有一个包含日期的数据库表 (`date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'). 我正在使用MySQL。有时从程序中将没有日期的数据传递到数据库。因此,0000-00-00 00:00:00 当使用带错误的日期列调用表数据时,日期值会自动分配给它 ...'0000-00-00 00:00:00' can not be represented as java.sql.Timestamp....... 在插入数据时,我尝试将null值传递给日期,但是将其分配给当前时间。 有什么办法可以在ResultSet不更改表结构的情况下获得?
141 java  mysql  jdbc  timestamp 

7
如何正确设置JVM TimeZone
我正在尝试运行Java程序,但是它采用默认的GMT时区而不是OS定义的时区。我的JDK版本是1.5,操作系统是Windows Server Enterprise(2007) Windows指定了中央时区,但是当我运行以下程序时,它给了我GMT时间。 import java.util.Calendar; public class DateTest { public static void main(String[] args) { Calendar now = Calendar.getInstance(); System.out.println(now.getTimeZone()); System.out.println(now.getTime()); } } 这是输出 sun.util.calendar.ZoneInfo[id="GMT", offset=0, dstSavings=0, useDaylight=false, transitions=0, lastRule=null] Mon Mar 22 13:46:45 GMT 2010 请注意,我不想从应用程序中设置时区。我希望JVM使用的时区应该是操作系统中指定的时区。(对于具有JDK 1.4版和Microsoft Server 2003的其他服务器,我没有发现此问题)。 任何想法将不胜感激。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.