Ibatis调用存储过程问题,虚心向大家请教,帮我一个大忙
use sysOA
GO
IF EXISTS(select * from sysobjects where name='proc_sysEmpLogin')
Drop procedure proc_sysEmpLogin
GO
create procedure proc_sysEmpLogin
@loginid varchar(50),
@password varchar(50),
@empid int output,
@reason varchar(50) output
as
select EmpID from mrBaseInf where LoginID=@loginid
if(@@RowCount<1)
begin
set @reason='noEmp' --不存在用户名@loginid
set @empid=0
end
else
begin
select EmpID from mrBaseInf where LoginID=@loginid and Password=@password
if(@@RowCount<1)
begin
set @reason='pError' --存在用户名,但是密码错误,PasswordError
set @empid=0
end
else
begin
select EmpID from mrBaseInf where LoginID=@loginid and Password=@password and AllowLogin=1
if(@@RowCount<1)
begin
set @reason='UnAllow' --存在此用户名和密码的用户,但是被禁止登录
set @empid=0
end
else
begin
set @reason='access' --此用户为合法登录用户
end
end
end
return这是我的存储过程
下面的是我的实体类对应的xnl文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap
PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap>
<typeAlias alias="mrBaseinf" type="cn.nb.entity.MrBaseinf" /><!-- alias别名,parameterClass传的参数 -->
<parameterMap id="tblLoginProcID" class="map">
<parameter property="loginid" jdbcType="varchar"
javaType="java.lang.String" mode="IN" />
<parameter property="password" jdbcType="varchar"
javaType="java.lang.String" mode="IN " />
<parameter property="empid" jdbcType="int"
javaType="java.lang.Integer" mode="OUT" />
<parameter property="reason" jdbcType="varchar"
javaType="java.lang.String" mode="OUT" />
</parameterMap>
<procedure id="LoginProcID" parameterMap="tblLoginProcID">
{call [proc_sysEmpLogin](?,?)}
</procedure>
</sqlMap>
public String[] Login(String LoginId, String password){}我要根据Jsp中输入值来判断返回的String数组