81,122
社区成员




create or replace procedure pro_update_timeout_member(res out varchar2) is
begin
declare
cursor c_hy_member
is
select t.memberid,t.rzenddate from hy_member t where t.status = '3' and t.loginname='ms_001';
c_row c_hy_member%rowtype;
begin
for c_row in c_hy_member loop
if(sysdate > c_row.rzenddate) then
update hy_member set status = '7' where memberid=c_row.memberid;
end if;
end loop;
res := 'ok';
exception
when others then
res := 'exception happend.' || sqlcode || sqlerrm;
rollback;
return;
end;
end pro_update_timeout_member;
<select id="updateMemberTimeOut" statementType="CALLABLE" parameterType="Map">
<![CDATA[{CALL PRO_UPDATE_TIMEOUT_MEMBER(#{result, mode = OUT,jdbcType=VARCHAR })}]]>
</select>
/**
* 修改认证到期会员状态
*/
public void updateMemberTimeOut(){
try {
memberService.updateMemberTimeOut();
log.info("1160001更新会员状态成功!");
} catch (Exception e) {
log.error("1260001更新会员状态!" + e);
e.printStackTrace();
}
}
[LVL:INFO] [scheduler_Worker-1] sqltiming.sqlTimingOccured(330) |
{CALL PRO_UPDATE_TIMEOUT_MEMBER('<OUT>')} {executed in 13 msec}
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: java.lang.NullPointerException
### The error may exist in com/lvjin/orm/member/MemberMapper.xml
### The error may involve com.lvjin.mapper.member.MemberMapper.updateMemberTimeOut-Inline
### The error occurred while setting parameters
### SQL: {CALL PRO_UPDATE_TIMEOUT_MEMBER(?)}
### Cause: java.lang.NullPointerException
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:75)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:368)
at $Proxy15.selectOne(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectOne(SqlSessionTemplate.java:163)
at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:68)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:52)
at $Proxy59.updateMemberTimeOut(Unknown Source)
at com.lvjin.service.member.MemberServiceImpl.updateMemberTimeOut(MemberServiceImpl.java:1004)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
at $Proxy82.updateMemberTimeOut(Unknown Source)
at com.lvjin.job.ProductScheduler.updateMemberTimeOut(ProductScheduler.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:269)
at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:311)
at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:113)
at org.quartz.core.JobRunShell.run(JobRunShell.java:216)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549)
Caused by: org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: java.lang.NullPointerException
res := 'ok';
exception
when others then
res := 'exception happend.' || sqlcode || sqlerrm;
rollback;
return;