Questions tagged «java»

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

9
gson的多态性
我在使用Gson反序列化json字符串时遇到问题。我收到一系列命令。该命令可以是start,stop或其他类型的命令。我自然具有多态性,并且start / stop命令从command继承。 如何使用gson将其序列化回正确的命令对象? 似乎我只获得基本类型,即声明的类型,而从未获得运行时类型。

4
从REST Web服务向客户端发送文件的正确方法是什么?
我刚刚开始开发REST服务,但是遇到了一个困难的情况:将文件从REST服务发送到客户端。到目前为止,我已经掌握了如何发送简单数据类型(字符串,整数等)的窍门,但是发送文件却是另一回事,因为存在太多的文件格式,我什至不知道从哪里开始。我的REST服务是在Java上完成的,并且我正在使用Jersey,我正在使用JSON格式发送所有数据。 我已经读过有关base64编码的信息,有人说这是一种好技术,而其他人则说这不是因为文件大小问题。正确的方法是什么?这是我项目中一个简单的资源类的样子: import java.sql.SQLException; import java.util.List; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.Context; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Request; import javax.ws.rs.core.UriInfo; import com.mx.ipn.escom.testerRest.dao.TemaDao; import com.mx.ipn.escom.testerRest.modelo.Tema; @Path("/temas") public class TemaResource { @GET @Produces({MediaType.APPLICATION_JSON}) public List<Tema> getTemas() throws SQLException{ TemaDao temaDao = new TemaDao(); List<Tema> temas=temaDao.getTemas(); temaDao.terminarSesion(); return temas; } } 我猜发送文件的代码是这样的: import …
103 java  json  web-services  rest  jersey 

15
为什么不使用Java初始化局部变量?
Java的设计者是否有任何理由认为不应为局部变量提供默认值?认真地讲,如果实例变量可以被赋予默认值,那为什么我们不能对局部变量做同样的事情呢? 并且还会导致出现问题,如博客文章的此评论所述: 那么,当试图在finally块中关闭资源时,此规则最令人沮丧。如果我在try中实例化资源,但最后尝试关闭它,则会收到此错误。如果我将实例化移动到try之外,则会收到另一个错误,指出它必须在try内。 非常沮丧。



1
JetBrains使用哪些GUI库?
背景 我对Java还是有些陌生,并且喜欢使用JetBrains团队开发的IntelliJ IDE。 我已经下载了Community Edition的源代码,并且正在尝试弄清他们正在使用哪些GUI库来获得外观。 题 他们使用什么库(如果有)来获取非本机选项卡,工具栏和面包屑组件? 他们使用的面板也很有趣,但是我觉得它们是为该项目开发的,而不是图书馆。这是真的? 有人可以提供在GUI项目中产生相似外观所需的细目吗? 有人为此提供教程吗?到目前为止,我所能解决的就是他们正在使用Swing和jGoodies。 我到目前为止的想法 他们正在使用Swing和jGoodies。该MyDoggy项目正试图制造类似的对接框架,但我不认为这是使用的IntelliJ。


5
如何通过Gradle和-D将系统属性赋予我的测试
我有一个读取系统属性的Java程序 System.getProperty("cassandra.ip"); 我有一个Gradle构建文件 gradle test -Pcassandra.ip=192.168.33.13 要么 gradle test -Dcassandra.ip=192.168.33.13 但是System.getProperty将始终返回null。 我发现的唯一方法是通过以下方式将其添加到我的Gradle构建文件中 test { systemProperty "cassandra.ip", "192.168.33.13" } 我如何通过-D做到这一点
103 java  testing  gradle 


9
静态与 Java中的动态绑定
我目前正在为我的一个类进行分配,在其中,我必须使用Java语法给出静态和动态绑定的示例。 我了解基本概念,即静态绑定在编译时发生,而动态绑定在运行时发生,但是我无法弄清楚它们是如何实际工作的。 我找到了一个在线静态绑定的示例,给出了以下示例: public static void callEat(Animal animal) { System.out.println("Animal is eating"); } public static void callEat(Dog dog) { System.out.println("Dog is eating"); } public static void main(String args[]) { Animal a = new Dog(); callEat(a); } 而且这将显示“ animal is eating”,因为对的调用callEat使用了静态绑定,但是我不确定为什么将其视为静态绑定。 到目前为止,我所见过的任何资料都没有设法以我可以遵循的方式来解释这一点。



7
如果目录不存在,请创建一个目录,然后在该目录中也创建文件
条件是目录是否存在,它必须在该特定目录中创建文件而无需创建新目录。 下面的代码仅创建具有新目录的文件,而不为现有目录创建文件。例如,目录名称将类似于“ GETDIRECTION” String PATH = "/remote/dir/server/"; String fileName = PATH.append(id).concat(getTimeStamp()).append(".txt"); String directoryName = PATH.append(this.getClassName()); File file = new File(String.valueOf(fileName)); File directory = new File(String.valueOf(directoryName)); if(!directory.exists()){ directory.mkdir(); if(!file.exists() && !checkEnoughDiskSpace()){ file.getParentFile().mkdir(); file.createNewFile(); } } FileWriter fw = new FileWriter(file.getAbsoluteFile()); BufferedWriter bw = new BufferedWriter(fw); bw.write(value); bw.close();
103 java  java-io 


10
SOAP消息和WSDL之间的区别?
我对SOAP消息和WSDL如何组合在一起感到困惑?我已经开始研究SOAP消息,例如: POST /InStock HTTP/1.1 Host: www.example.org Content-Type: application/soap+xml; charset=utf-8 Content-Length: nnn <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:m="http://www.example.org/stock"> <m:GetStockPrice> <m:StockName>IBM</m:StockName> </m:GetStockPrice> </soap:Body> </soap:Envelope> 是否所有SOAP消息都是WSDL?SOAP是接受其自己的“ SOAP消息”或“ WSDL”的协议吗?如果它们不同,那么什么时候应该使用SOAP消息,什么时候应该使用WSDL? 关于此的一些说明将是很棒的。
102 java  web-services  soap  wsdl 

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.