1

我有一个要求,我需要从类和@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,在我的代码中导入类将是一项繁琐的工作。

对此的任何指针都会受到重视。谢谢!

4

0 回答 0