web -> service -> daoservice负责逻辑
dao只负责增删改查现在service.UserService类有验证用户登录的方法,这个方法当然可以返回boolean给web层,判断是否登录成功,但是登录失败时又有多中原因:比如:用户名不存在、密码错误、用户被禁用等多种原因。请问在这种情况下应该返回什么给web层。

解决方案 »

  1.   

    纠正错别字,“多中原因”应为“多种原因”
    另:service最终要调用dao层的方法,那如果dao方法发生异常时,又应该返回什么给service,让service知道发生了什么异常。
      

  2.   

    1、可以返回boolean给web层  返回数字代替Boolean  1 2 3 4  代表你不同的结果2、dao抛出异常 去service捕获
      

  3.   

    很简单,首先对于用户名的存在问题,你要写个函数处理用户名是否存在,当用户名存在的话直接返回到原来的登入界面,并给出提示,密码错误也是一样,返回到登入界面,给出密码错误提示,看自己要详细到什么程度了,<s:property value="">只要你设置了错误提示信息,就会显示出来的
      

  4.   

    不是有strtus.xml文件吗?你在代码中写,如果用户名不存在就返回"false1" 密码错误就返回"false2" 、用户被禁用就返回"false3"。在配置文件中<action name="flase1">分别可以导向不同的页面进行处理
      

  5.   

    +1
    是这样的,需要做个异常处理,service就是做这个的。
      

  6.   

    用户名不存在、密码错误、用户被禁用等多种原因
    你可以直接在service中弹个提示框:先判断是哪种错误,然后弹出提示框。再跳转到原来的页面。