不知道是不是我使用的问题,在shiro的认证方法里使用dao层就不行,使用Db+Record就可以
public class UserAuths extends BaseUserAuths<UserAuths> { public static final UserAuths dao = new UserAuths(); /** * 根据用户凭证获取加密后的密码 * @param identifier * @return */ public String getSaltedCredential(String identifier) { String sql = "select * from edu_user_auths where identityType = ? and identifier = ? "; return Db.findFirst(sql, FormatCheckUtils.identifierType(identifier), identifier).getStr("credential"); } /** * 根据用户凭证获取盐值 * @param identifier * @return */ public String getSaltSQL(String identifier){ String sql = "select * from edu_user_auths where identityType = ? and identifier = ? "; return Db.findFirst(sql, FormatCheckUtils.identifierType(identifier), identifier).getStr("salt"); } /** * 根据用户凭证判断用户是否存在 * @param identifier * @return */ public boolean isUserExists(String identifier){ String sql = "select * from edu_user_auths where identityType = ? and identifier = ? "; String identifyType = FormatCheckUtils.identifierType(identifier); List<Record> userAuths = Db.find(sql, identifyType, identifier); if(userAuths!=null || userAuths.size() != 0){ return true; } return false; } }
但是使用User.dao.find就不行
项目:JFinal
目前没有看到你的异常信息