泛型的小例子(通用方法)
本人是菜鸟,第一次写文章,有点方。
有写的不对的地方,请多指教。如有侵权,请联系删除!
是这样,前些日子写代码,遇到了些小问题:
在serviceImpl的一个方法,写成通用类
WxsEntity(吴先生实体类)
private String wxsSave;
//省略get set
XmmEntity(肖妹妹实体类)
private String xmmSave;
//省略get set
service.java中写通用方法
/**
* @param list 通用实体类参数(例:List<实体类>)
* @param clazz 接收实体类(例:实体类.calss)
*/
//方法(list可以传输任意类型的实体类)
<T> String setInfo (List<Object> list,Class<T> clazz);
serviceImpl.java写逻辑
public <T> String setInfo(List<Object> list, Class<T> clazz) {
if(clazz.getSimpleName.equals("吴先生")){
for(WxsEntity wxsEntity:(List<WxsEntity>)(List)list){
//循环数据
}
return "吴先生";
}else if(clazz.getSimpleName.equals("肖妹妹")){
for(XmmEntity xmmEntity:(List<XmmEntity>)(List)list){
//循环数据
}
return "肖妹妹";
}
}
controller.java
//获取前端传过来的值
String name=request.getParameter("name");
List<Object> wxsList=new ArrayList<>();
List<Object> xmmList=new ArrayList<>();
switch(name){
case "吴先生":
return service.setInfo(wxsList,WxsEntity.class);
case "肖妹妹":
return service.setInfo(xmmList,XmmEntity.class);