Struct2笔记②--完善登陆代码
上节课的代码 写完整
登陆成功在页面上显示用户名和密码:
username:${requestScope.username }<br> password:${requestScope.password |
使用struct标签写一个登陆页面
<%@ taglib prefix="s" uri="/struts-tags" %> <s:form <s:textfield <s:password <s:submit </s:form> |
我们以前写的UserAction可以继承ActionSupport类
Validata()方法:默认验证是否为空,子类可以重写。
@Override public if (null==this.getUsername()||"".equals(this.getUsername().trim())) { this.addFieldError("username", "用户名不能为空!"); } if (null==this.getPassword()||"".equals(this.getPassword().trim())) { this.addFieldError("password", "密码不能为空!"); } } |
AddFieldError(string 字段名 ,string 提示信息)
如果有这条提示信息的话则会在对应的元素上面显示提示信息。
修改配置文件:
Structs.Xml
<struts>
<package <action <result <result <result name="input">/login2.jsp</result> </action> </package> </struts> |
最新文章
- 与你相遇好幸运,使用redis设置定时任务
- Objective C中的ARC的修饰符的使用---- 学习笔记九
- jquery简单原则器(匹配索引大于指定值的元素)
- 搭建三层架构(ASP.NET MVC+EF)
- ruby正则匹配回车换行符
- 浅析对象访问属性的";.";和";[]";方法区别
- 多窗体之间方法调用 z
- c++动态绑定与静态绑定
- Python基础知识---字典
- jetty 8.1.8 PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
- AttributeError: &#39;module&#39; object has no attribute &#39;Thread&#39;
- OmniPlan,一款让你无法自拔的项目管理工具(仅适用于MAC系统)
- ExecuteNonQuery方法、ExecuteScalar方法、ExecuteReader方法的区别
- git 分支强制删除
- 禁止用户使用密码的方式登录服务器,让其使用key的方式登录
- Jar/War/Ear等包的作用与区别详解
- c#利用反射Assembly 对类和成员属性进行操作
- 去掉每行最后n个字符
- 某种带权有向无环图(graph)的所有路径的求法
- 英文Datasheet没那么难读