搞了两天的诡异问题,求大神帮忙解决

weixin_39490667 2017-12-26 11:15:53

实现类
List<AccountBo> Account=euAccountDao.getAccountBOByNm(prsnLoginNm, account_mobile);
for (AccountBo accountBo : Account) {

QueryUserBo queryUser=new QueryUserBo();
String flag=accountBo.getAccountType();//获取账户类型
queryUser.setLoginName(accountBo.getAccountName());
queryUser.setAccount_type(flag);
queryUser.setAccount_status(accountBo.getAccountStatus());
queryUser.setPhone_no_checked(accountBo.getPhoneNOChecked());
queryUser.setModify_init_pwd(accountBo.getModifyInitPwd());
//手机号码解密
String Mobnum=CryptoUtils.decodeString(accountBo.getAccountMobile(), "192.168.0.8:9527", "192.168.0.9:9527");
String Mobile=Mobnum.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2");
queryUser.setAccount_mobile(Mobile);

dao 层
package com.sw.plat.user.rela.plat.dao;

import java.util.ArrayList;

import org.apache.ibatis.annotations.Param;

import com.sw.plat.user.rela.api.bo.AccountBo;

public interface IEuAccountDao {
ArrayList<AccountBo> getAccountBOByNm(@Param(value="accountName") String accountName,String accountMobile);

AccountBo getAccountByAccountName(String accountName);
}

xml 文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.sw.plat.user.rela.plat.dao.IEuAccountDao">
<resultMap id="accountBO" type="com.sw.plat.user.rela.api.bo.AccountBo">
<id column="ACCOUNT_ID" property="accountId" />
<result column="ACCOUNT_NAME" property="accountName" />
<result column="SHOW_NAME" property="showName"/>
<result column="ACCOUNT_PASSWORD" property="accountPassword" />
<result column="ACCOUNT_TYPE" property="accountType" />
<result column="ACCOUNT_STATUS" property="accountStatus" />
<result column="ACCOUNT_CREATETIME" property="accountCreatetime" />
<result column="ACCOUNT_MOBILE" property="accountMobile" />
<result column="PASSWORD_ENCRYPTTYPE" property="passwordEncryptType" />
<result column="MODIFY_INIT_PWD" property="modifyInitPwd" />
<result column="PHONE_NO_CHECKED" property="phoneNOChecked" />
</resultMap>

<sql id="accountFields">
ACCOUNT_ID,ACCOUNT_NAME,SHOW_NAME,ACCOUNT_PASSWORD,
ACCOUNT_TYPE,ACCOUNT_STATUS,ACCOUNT_CREATETIME,ACCOUNT_MOBILE,
PASSWORD_ENCRYPTTYPE,MODIFY_INIT_PWD,PHONE_NO_CHECKED
</sql>

<select id="getAccountBOByNm" resultMap="accountBO">
select
<include refid="accountFields"/>
from EU_ACCOUNT
where
ACCOUNT_NAME = #{accountName,jdbcType=VARCHAR}
or ACCOUNT_MOBILE=#{accountMobile,jdbcType=VARCHAR}
</select>

<select id="getAccountByAccountName" parameterType="java.lang.String" resultMap="accountBO">
select
<include refid="accountFields"/>
from EU_ACCOUNT
where ACCOUNT_NAME = #{accountName,jdbcType=VARCHAR}
</select>
</mapper>

bo

package com.sw.plat.user.rela.api.bo;

import java.io.Serializable;
import java.util.Date;

public class AccountBo implements Serializable{
private String accountId;
private String accountName;
private String showName;
private String accountPassword;
private String accountType;// 1.系统用户 2.普通用户
private String accountStatus;
private Date accountCreatetime;
private String accountMobile;
private String passwordEncryptType;
private String modifyInitPwd;
private String phoneNOChecked;

debug 走到service中List<AccountBo> Account=euAccountDao.getAccountBOByNm(prsnLoginNm, account_mobile);
报错org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.sw.plat.user.rela.plat.dao.IEuAccountDao.getAccountBOByNm
at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:189)
at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:43)
at org.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:58)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:51)
at sun.proxy.$Proxy50.getAccountBOByNm(Unknown Source)
at com.sw.plat.user.rela.api.service.impl.UserPrsnServiceImpl.getUserPrsn(UserPrsnServiceImpl.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208)
at sun.proxy.$Proxy51.getUserPrsn(Unknown Source)
at com.alibaba.dubbo.common.bytecode.Wrapper7.invokeMethod(Wrapper7.java)
at com.alibaba.dubbo.rpc.proxy.javassist.JavassistProxyFactory$1.doInvoke(JavassistProxyFactory.java:46)
at com.alibaba.dubbo.rpc.proxy.AbstractProxyInvoker.invoke(AbstractProxyInvoker.java:72)
at com.alibaba.dubbo.rpc.protocol.InvokerWrapper.invoke(InvokerWrapper.java:53)
at com.alibaba.dubbo.rpc.filter.ExceptionFilter.invoke(ExceptionFilter.java:64)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.TimeoutFilter.invoke(TimeoutFilter.java:42)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.monitor.support.MonitorFilter.invoke(MonitorFilter.java:75)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.protocol.dubbo.filter.TraceFilter.invoke(TraceFilter.java:78)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.ContextFilter.invoke(ContextFilter.java:70)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.GenericFilter.invoke(GenericFilter.java:132)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.ClassLoaderFilter.invoke(ClassLoaderFilter.java:38)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.EchoFilter.invoke(EchoFilter.java:38)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol$1.reply(DubboProtocol.java:113)
at com.alibaba.dubbo.remoting.exchange.support.header.HeaderExchangeHandler.handleRequest(HeaderExchangeHandler.java:84)
at com.alibaba.dubbo.remoting.exchange.support.header.HeaderExchangeHandler.received(HeaderExchangeHandler.java:170)
at com.alibaba.dubbo.remoting.transport.DecodeHandler.received(DecodeHandler.java:52)
at com.alibaba.dubbo.remoting.transport.dispatcher.ChannelEventRunnable.run(ChannelEventRunnable.java:82)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
[2017-12-26 21:58:28:630][DubboServerHandler-192.168.2.34:30000-thread-2] DEBUG [ com.pt.poseidon.common.persistence.spring.DBTransactionManager:759]Initiating transaction commit
...全文
607 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
依然_范特西_ 2018-01-05
  • 打赏
  • 举报
回复
1、检查接口定义是否正确 2、检查sqlmap文件是否加载进来 3、还不行,看看这个http://blog.csdn.net/u010504064/article/details/47337307
雨声咚咚 2018-01-05
  • 打赏
  • 举报
回复
修改成ArrayList<AccountBo> getAccountBOByNm(@Param(value="accountName") String accountName,@Param(value="accountMobile") String accountMobile); 试试看
kampoo 2017-12-31
  • 打赏
  • 举报
回复
查看一下mapper文件中有没有同名的方法定义,类型是否正确,参数类型及返回类型是否正确。 你定义的mapper文件中的getAccountBOByNm方法参数不正确,再定义一个parameterMap测试一下。

58,452

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧