在一个Iservic中有两个group方法,如下:
1)boolean isExistedByContactgroupName(String groupName, int siteId);
2)boolean isExistedByContactgroupName(String groupName, Integer own_to_user,int siteId);
现.在Action中调用第二个方法,传入的参数个数,类型。都是相匹配的,但还是报错,提示参数类型错误,只能使用第一个的参数类型。报错信息如下,
impl层重写了service的方法,如果你直接重载,在controller层调用肯定会报错的,你的controller层是用的service层的引用,但是重载的方法是impl层的方法,
所以,解决办法,
1,直接添加一个新的方法,不要乱重载
2,非要重载的话,要从service开始重载,然后impl层重写父类方法,在重载
可能是你传参没传对吧!没问题啊
会不会是你的jdk1.5之前的
能把具体代码发出来吗,正常接口是可以重载方法的
Integer是一个类。你要用new的方式吧!
这(如下)是要使用的接口
boolean isExistedByContactgroupName(String groupName, Integer own_to_user,int siteId);
但是我用Ctrl+鼠标,跳转的是这一个方法。
boolean isExistedByContactgroupName(String groupName, int siteId);
怀疑是不是你的方法名字写错了,我测试的没有任何问题
System.out.printf("result is %s\n", MainTest.isReload("name", new Integer(10), 2));//true
System.out.printf("result is %s\n", MainTest.isReload("name", 10, 2));//true
System.out.printf("result is %s\n", MainTest.isReload("name", 2));//false
我觉得是不是项目的问题,哎。老大拍拍屁股跑路了,现在公司web组就我一个小菜鸟。
参数类型、参数数量、参数顺序均匹配才行
![
你的getUserId()是什么类型的?int还是Integer
ContactgroupService是一个接口吗? 重载是没问题的,方法个数不一样,能够重载。是不是因为实现类里面没有重写第二个方法?
还有一种可能是IDE误报,可以看一下你的其他同事,把代码下载到他们的电脑上,有没有一样的问题?
这个是重写的方法
我看了下老大的电脑,实际上,方法,参数都是没问题的。问题大概是项目本身的问题,因为项目实在太杂,所以会出现这些莫名其妙的bug。谢谢帮过我的各位,谢谢