Java 代码模型是否支持 GenericEntity
Does Java codemodel support GenericEntity
Java 代码模型是否支持 GenericEntity?
我正在尝试使用 jcodemodel 生成如下代码:
Object obj = new GenericEntity<List<java.lang.String>>(listStr){}
但我做不到。我使用了以下代码:
JType jObjType = ((JClass) jcodemodel._ref(GenericEntity.class)).narrow(jcodemodel.ref(List.class).narrow(
jcodemodel.ref(String.class)));
JVar jvobj = jMethodResource.body().decl(jcm.ref(Object.class), "obj", JExpr._new(jObjType).arg(.....listStr reference...));
使用它得到的代码如下:
对象 obj = new GenericEntity>(listStr)
但是缺少“{}”。
有人可以帮我吗?怎么弄个代码让我得到 with {} :
Object obj = new GenericEntity<List<java.lang.String>>(listStr){}
使用此方法 (https://codemodel.java.net/nonav/apidocs/com/sun/codemodel/JCodeModel.html#anonymousClass(com.sun.codemodel.JClass))。类似的东西:
JClass listOfEmplType = jcodemodel.ref(List.class).narrow(jcodemodel.ref(
Emplyee.class.getName()));
JVar listOfEmpl = jMethodResource.body().decl(listOfEmplType, "listStr", JExpr._null());
JClass jObjType = ((JClass) jcodemodel._ref(GenericEntity.class)).narrow(listOfEmplType);
JVar jvobj = jMethodResource.body().decl(jcodemodel.ref(Object.class), "obj",
JExpr._new(jcodemodel.anonymousClass(jObjType)).arg(listOfEmpl));
Java 代码模型是否支持 GenericEntity?
我正在尝试使用 jcodemodel 生成如下代码:
Object obj = new GenericEntity<List<java.lang.String>>(listStr){}
但我做不到。我使用了以下代码:
JType jObjType = ((JClass) jcodemodel._ref(GenericEntity.class)).narrow(jcodemodel.ref(List.class).narrow(
jcodemodel.ref(String.class)));
JVar jvobj = jMethodResource.body().decl(jcm.ref(Object.class), "obj", JExpr._new(jObjType).arg(.....listStr reference...));
使用它得到的代码如下: 对象 obj = new GenericEntity>(listStr)
但是缺少“{}”。
有人可以帮我吗?怎么弄个代码让我得到 with {} :
Object obj = new GenericEntity<List<java.lang.String>>(listStr){}
使用此方法 (https://codemodel.java.net/nonav/apidocs/com/sun/codemodel/JCodeModel.html#anonymousClass(com.sun.codemodel.JClass))。类似的东西:
JClass listOfEmplType = jcodemodel.ref(List.class).narrow(jcodemodel.ref(
Emplyee.class.getName()));
JVar listOfEmpl = jMethodResource.body().decl(listOfEmplType, "listStr", JExpr._null());
JClass jObjType = ((JClass) jcodemodel._ref(GenericEntity.class)).narrow(listOfEmplType);
JVar jvobj = jMethodResource.body().decl(jcodemodel.ref(Object.class), "obj",
JExpr._new(jcodemodel.anonymousClass(jObjType)).arg(listOfEmpl));