为了账号安全,请及时绑定邮箱和手机立即绑定

关于讲的乱的感觉

这老师是很努力,奈何没有教师的天赋,很多细节没必要讲,讲了以后反而干扰了,而且次序讲的不好。第一次年龄输入abc的时候,没有进入success.jsp的时候你讲链接是LoginAction.action干什么啊,我还以为会造成链接的改变,其实成功了地址栏也是LoginAction.action啊,你不如说跳转失败,还是在log.jsp不就行了吗。只是url已经不在log.jsp了,但是没有告诉用户错在哪里,需要后续改进。次序方面,你直接说如果自己写了this.addFiledError的话就要自己加上return INPUT或者在valiate里写不就行了嘛?否则会干扰的。

正在回答

2 回答

这个同学不合格,理解错了老师得意思却自以为抓住了老师的错误,不说你有没有资格批评,就说说你说的那几点错误。

你说的第一个1.年龄输入abc的时候,没有进入success.jsp的时候你讲链接是LoginAction.action

解答:Structs2的执行过程是获得用户请求之后读取struts.xml配置文件,而老师写的是先通过

login.jsp

来获取用户输入数据提交表单再传给action处理类来判断应该返回什么字符串,之后读取配置文件来选择返回那个jsp文件。

if(user.getAge() == null || "".equals(user.getAge())){			
this.addFieldError("userage", "年龄不能为null");			
return INPUT;		}		
return SUCCESS;

所以不管返回那个文件,它都要经过action方法来执行操作,<action><action/>相当于调用那个界面的一张名片,最后判断执行那些操作,所以要返回的链接相当于都写到了action上。


第二个2.你直接说如果自己写了this.addFiledError的话就要自己加上return INPUT或者在valiate里写不就行了嘛?否则会干扰的。

解答:return INPUT;这行代码返回的一个字符串,是在ActionSupport类中的定义的一个常量,源码里是这样定义的。

public static final java.lang.String SUCCESS = "success";

public static final java.lang.String NONE = "none";

public static final java.lang.String ERROR = "error";

public static final java.lang.String INPUT = "input";

public static final java.lang.String LOGIN = "login";

public abstract java.lang.String execute() throws java.lang.Exception;

说白了,它也只是一个标记,可以选择返回,也可以不返回,完全看需求,具体你说的干扰,我完全不理解。

犯这些错误,只能说明你是一个不合格的学生,没有资格说老师教的不好,一边吃的肉一边说肉做的难吃,在我家里你连饭都没得吃。

0 回复 有任何疑惑可以回复我~

中立态度!不过还是要感恩!

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Struts2入门
  • 参与学习       95042    人
  • 解答问题       481    个

本教程带你踏上Struts2学习之旅,对Struts2进行更深入讲解

进入课程

关于讲的乱的感觉

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号