我正在eclipse中编写一个java程序来从lotusnotes db中提取表单。每当我得到一个表单时,我需要创建一个.java文件,该文件包含一个与表单同名的类。然后我必须编译这个新的.java类,它给了我.class文件&因此我可以创建该新类的实例。我需要知道这种创建,编译和方法的方法。可以从单个现有的java程序中实例化一个新类。
我的伪代码低于
import java.util.Iterator;
import de.bea.domingo.*;
import java.util.List;
import java.io.*;
public class LotusNotesDBExtraction
{
public static void main(String[] args) throws DNotesException,IOException
{
DNotesFactory factory = DNotesFactory.getInstance();
DSession session = factory.getSession();
DDatabase database = session.getDatabase("", "employee.nsf");
List formlist=database.getForms();
//System.out.println("Number of forms are :"+formlist.size());
for(int i=0;i<formlist.size();i++)
{
DForm formn=(DForm)(formlist.get(i));
DForm formname= database.getForm(formn.getName());
**//Creating a class in a file
FileWriter outputfile = new FileWriter("D:\\Lotusnotesformfiles\\"+formn.getName()+".java",true);
BufferedWriter out = new BufferedWriter(outputfile);
out.write("public class "+formn.getName()+" {");
out.newLine();
out.flush();**
try
{
**//Compile the class here**
Process p1 = Runtime.getRuntime().exec("cmd javac \"D:\\Lotusnotesformfiles\\"+formn.getName()+".java\"");
System.out.println("compiled");
}
catch(IOException x)
{
x.printStackTrace();
}
**//instantiate the new class here**
}
}
但是我无法获得新类的.class文件。我可以在同一个程序中实例化新类吗?我被困在这一点上。可以请任何帮助我