在ssh中
一个程序的abstract类1 里面定义了abstract boolean service类
然后loginaction继承abstract类1
loginaction里面实现service方法 返回一个return等于true or false
那么 
 我想result=false return ERROR
result=true return SUCCESS 在父类1中那么父类的service要怎么写? 想不明白
structs2ssh

解决方案 »

  1.   

    比如 public abstract class GeneralAction{
    abstract Boolean executeService() throws Exception;
    try{checkBusiness()
    return SUCCESS;
    }catch{}

    然后LoginAction extends GeneralAction{
    boolean result = leeService.loginCheck(param);
    if (result = true) {
    return true;
    } else {
    return false;
    }
    }
    怎么能让 result=true是跳转success
    result=false跳转error
    而不是一直跳转到success
      

  2.   

    你这问的什么啊?
    service 字面上理解业务层,一般里面都会定义一个抽象接口,里面写一些方法,
    然后用service 实现类来实现,并实现其中的方法,整体上action 调用service  ,service 在调用dao 方法连接数据库, 用service 主要是方便后来的拓展和维护,个人愚见,不喜勿喷,如有错误请指正!!
      

  3.   

    楼主说的我看不明白了,希望你就你写的例子详细说下吧。
    另外我看到的错误:然后LoginAction extends GeneralAction{
    boolean result = leeService.loginCheck(param);
    if (result = true) {
    return true;
    } else {
    return false;
    }
    =” 这是我看你的代码给你指出的错误
      

  4.   

    哦  这个错误我一上午发现的````public abstract class GeneralAction{
    abstract Boolean executeService() throws Exception;
    try{checkBusiness()
    return SUCCESS;
    }catch{}

    然后LoginAction extends GeneralAction{
    boolean result = leeService.loginCheck(param); //这是调用leeservice的logincheck的方法返回一个result的值 true 或者false
    if (result = true) {
    return true;
    } else {
    return false;
    }
    }说下我的想法
    我就是想在这个service层返回的boolean result 上
     当获得service的返回值为true时候能跳转到struts2的success界面 false就跳转error界面
    但是不太会写 不知道在GeneralAction里怎么写 也许我写的逻辑是错误的 
    但是我想的就是登陆的时候service返回true就跳转success false跳转error界面
     但是我现在的写发是类似2楼 怎么都跳到success 因为只要executeService方法执行了就跳转到success 不论返回的结果是true还是false
      

  5.   

    我做个ssh登陆系统 也是action-service-dao
    现在都做完了 但是在dao上验证登陆时候 如果检查有这个用户名密码就返回一个result=true到service 再返回到action result=true
    但是返回到action时候 action继承了抽象父类 父类声明了 executeService() 业务层 我再action里的 executeService()写上验证方法
    但是怎么都显示success 即使action的result=false也是success页面 我想false时候跳转到error界面
      

  6.   

     public abstract class GeneralAction{
    abstract Boolean executeService() throws Exception;
    try{checkBusiness()
    return SUCCESS;
    }catch{}

    然后LoginAction extends GeneralAction{
    Boolean executeService() throws Exception{
    boolean result = leeService.loginCheck(param);
    if (result = true) {
    return true;
    } else {
    return false;
    }
    }} 应该这么写``
      

  7.   

    1,你的service存在此用户返回true不存在返回false,确保你这一步得到的结果是正确的。
      你可以在boolean result = leeService.loginCheck(param);后输出一下result验证下2,其实下面可以这样写
    Boolean executeService() throws Exception{
    boolean result = leeService.loginCheck(param);
    if (result = true) {
    return true;
    } else {
    return false;
    }
    }
    换成
    Boolean executeService() throws Exception{
     boolean result = leeService.loginCheck(param);
     if (result) {
      return true;
     } else {
      return false;
     }
    }你用的是struts2吧?你的if判断里面怎么返回true|false?先把我说的1,2试试看看
      

  8.   

    哦 谢谢 问题自己解决了 对java还是菜鸟 嘿嘿