我有两个程序:Agent.java
& Simulator.java
(不要担心姓名,你可以分别称他们为A& B)。现在,我想使用XML格式将job
对象从Agent
发送到Simulator
。 job
类看起来像:
public class job {
int JobID;
job(int JobID){
this.JobID=JobID;
}
public int getJobID(){
//get JobID variable value from here
}
public void setJobID(int temp_JobID){
//change variable JobID here
}
}
现在我将其存储为XML格式并发送到Simulator。我知道我可以使用其他方式发送对象job
,但这种XML文件格式是我的项目中要遵循的标准格式。
另一方面,我收到job
个对象,从中获取数据并在程序中使用它们。
所以我的问题是:如何使用XML发送数据?我看到很多与此相关的Q.但它们引用硬盘上的XML文件,转换为String,发送它然后在其他程序中接收。我认为这不适用于我的情况,因为我有很多工作要继续进行,我会实时收到它们。所以,将它们存储在我的计算机上是个坏主意。是不是有任何XML文件发送方和接收方?
答案 0 :(得分:2)
也许看看JAXB。您可以从指定的格式创建xsd文件,从中生成带注释的作业类,也可以使用生成的对象工厂。然后你将你的工作留在内存中,你可以创建它们的队列。
答案 1 :(得分:0)
在其中一个项目中,我使用JDOM在xml中的文件之间交换数据。 A类从对象的字段构造xml文档,并将该文档发送到B类.B类可以从接收到的文档中创建对象。
答案 2 :(得分:0)
无需任何文件来发布职位。您可以使用内存中的对象。
尝试使用JIBX对您的作业对象进行Marshall / Unmarshall并将其放在内存而不是文件中。将Job对象编组为字符串格式的XML后,将其发送到Simulator。在模拟器端,再次将XML转换为Job对象。
如果您使用任何JMS服务将作业发布到Simulator,请将该XML字符串作为部分消息。