我有一个要求,我需要从类和@Autowire 中删除相同的 JNDI 查找代码。
当前班级:
public class BankProcessor {
public Collection getAccountInformation(String customerId){
Context context = new InitialContext();
ArrayList accountBeanList = new ArrayList();
CustomerHomeLocal customerHome = (CustomerHomeLocal)context.lookup(CustomerHomeLocal.JNDI_NAME);
CustomerLocal customer = customerHome.findByPrimaryKey(customerId);
Iterator accountIterator = customer.getAccounts().iterator();
}
}
预期班级
public class BankProcessor {
@Autowired
private CustomerHomeLocal customerHome;
public Collection getAccountInformation(String customerId){
ArrayList accountBeanList = new ArrayList();
CustomerLocal customer = customerHome.findByPrimaryKey(customerId);
Iterator accountIterator = customer.getAccounts().iterator();
}
}
我尝试从创建 codeSnippetclassfactory.Code().createCodeSnippetStatement("CustomerHomeLocal customerHome;")
但无法将其添加到CtType
.
另外,我不能使用createField()
方法,因为我想自动连接用户定义的类并添加用户定义的 jar,在我的代码中导入类将是一项繁琐的工作。
对此的任何指针都会受到重视。谢谢!