java吧 关注:1,297,283贴子:12,832,134
  • 10回复贴,共1

谁能给解释一下这段???详细点的,求大神,回答了各种粉!!…

只看楼主收藏回复

RT下面是代码
public FndUser ipLogin(String loginName, String loginPwd)
throws AuthException {
FndUser user = null;
DetachedCriteria criteria = DetachedCriteria.forClass(FndUser.class);
if(loginName!=null)
criteria.add(Restrictions.eq("loginName", loginName));
// criteria.add(Restrictions.eq("loginPwd", loginPwd));
List<FndUser> result = userDAO.findByCriteria(criteria);
if (result == null || result.size() == 0) {
return login(loginName, loginPwd);
} else if (result.size() > 1) {
throw new AuthException(I18nMsg.getConfig("OMIS-00002"));
}
user = result.get(0);
user.setDept(deptDAO.findById(user.getDeptId()));
user.setIsRemote("true");//设置远程IP登录标志
return user;
}


IP属地:湖北1楼2013-07-28 20:40回复
    别沉啊,来大神啊!!!


    IP属地:湖北2楼2013-07-28 20:41
    回复
      2026-02-10 17:08:00
      广告
      不感兴趣
      开通SVIP免广告
      别沉啊,来大神啊!!!


      IP属地:湖北3楼2013-07-28 20:42
      回复
        别沉啊,来大神啊!!!


        IP属地:湖北4楼2013-07-28 20:42
        回复
          别沉啊,来大神啊!!!


          IP属地:湖北5楼2013-07-28 20:43
          回复
            别沉啊,来大神啊!!!


            IP属地:湖北6楼2013-07-28 20:45
            回复
              别沉啊,来大神啊!!!


              IP属地:湖北7楼2013-07-28 20:47
              回复
                别沉啊,来大神啊!!!


                IP属地:湖北8楼2013-07-28 20:47
                回复
                  2026-02-10 17:02:00
                  广告
                  不感兴趣
                  开通SVIP免广告
                  别沉啊,来大神啊!!!


                  IP属地:湖北9楼2013-07-28 20:48
                  回复
                    别沉啊,来大神啊!!!


                    IP属地:湖北10楼2013-07-28 20:50
                    回复
                      public FndUser ipLogin(String loginName, String loginPwd)throws AuthException {
                      FndUser user = null;// 建立FndUser类对象引用
                      // 这是个自定义类,forClass应该是作为类反射之类的操作吧
                      DetachedCriteria criteria = DetachedCriteria.forClass(FndUser.class);
                      if (loginName != null)// 判断传入的登录名是否为空
                      // 这里还是自己封装的方法,具体操作不明
                      criteria.add(Restrictions.eq("loginName", loginName));
                      // criteria.add(Restrictions.eq("loginPwd", loginPwd));
                      // DAO(database object)为操作数据库对于object的增删改查操作,
                      //返回结果为List(可能有多个)
                      List<FndUser> result = userDAO.findByCriteria(criteria);
                      // 判断集合是否有值来判断是否读取到数据
                      if (result == null || result.size() == 0) {
                      // 当没有读取到数据时,返回一个由login(String loginName, String loginPwd)
                      // 产生的FndUser对象,方法操作不明
                      return login(loginName, loginPwd);
                      } else if (result.size() > 1) {
                      // 当返回集合包含多条(>1)数据时,抛出异常,异常自定义,不明
                      throw new AuthException(I18nMsg.getConfig("OMIS-00002"));
                      }
                      // 当上面的条件均不满足(不为null,长度不为0,不>1,即仅一条数据时)
                      // 获取result集合的第一条数据(唯一一条,索引为0),赋值给user
                      user = result.get(0);
                      // 设置user的dept属性,该值来源于数据查询,通过id查询,id为user.getDeptId()
                      user.setDept(deptDAO.findById(user.getDeptId()));
                      user.setIsRemote("true");// 设置远程IP登录标志
                      return user;// 返回改变一些参数的该对象
                      }
                      大多就能得到这些信息了。这只是个代码片段。


                      11楼2013-07-28 21:04
                      回复