<h3>注册页面</h3>
<form action="${ pageContext.request.contextPath }/xxx.action" method="post">
姓名:<input type="text" name="username" /><br/>
密码:<input type="password" name="password" /><br/>
<input type="submit" value="注册" />
</form>
<global-results> <result>/demo3/suc.jsp</result> </global-results>
<result>/demo3/suc.jsp</result>
/**
属性驱动方式,把数据封装到JavaBean的对象中
@author Administrator
*/
public class Regist2Action extends ActionSupport{
private static final long serialVersionUID = 6556880331550390473L;
// 注意二:属性驱动的方式,现在,要提供是get和set方法
private User user;
public User getUser() {
System.out.println("getUser...");
return user;
}
public void setUser(User user) {
System.out.println("setUser...");
this.user = user;
}
public String execute() throws Exception {
System.out.println(user);
return NONE;
}
}
/**
模型驱动的方式
实现ModelDriven接口
必须要手动实例化对象(需要自己new好)
@author Administrator
*/
public class Regist3Action extends ActionSupport implements ModelDriven<User>{
private static final long serialVersionUID = 6556880331550390473L;
// 必须要手动实例化
private User user = new User();
// 获取模型对象
public User getModel() {
return user;
}
public String execute() throws Exception {
System.out.println(user);
return NONE;
}
}
<input type="text" name="products[0].name" />
<input type="text" name="map['one'].name" />
/**
属性驱动的方式,把数据封装到map集合中
@author Administrator
*/
public class Regist5Action extends ActionSupport{
private static final long serialVersionUID = 6556880331550390473L;
private Map<String, User> map;
public Map<String, User> getMap() {
return map;
}
public void setMap(Map<String, User> map) {
this.map = map;
}
public String execute() throws Exception {
System.out.println(map);
return NONE;
}
}
protected String doIntercept(ActionInvocation invocation) throws Exception {
// 获取session对象
User user = (User) ServletActionContext.getRequest().getSession().getAttribute("existUser");
if(user == null){
// 说明,没有登录,后面就不会执行了
return "login";
}
return invocation.invoke();
}
<!-- 定义了拦截器 第一种方式
<interceptors>
<interceptor name="DemoInterceptor" class="com.itheima.interceptor.DemoInterceptor"/>
</interceptors>
-->
<!-- 第二种方式:定义拦截器栈 -->
<interceptors>
<interceptor name="DemoInterceptor" class="com.itheima.interceptor.DemoInterceptor"/>
<!-- 定义拦截器栈 -->
<interceptor-stack name="myStack">
<interceptor-ref name="DemoInterceptor"/>
<interceptor-ref name="defaultStack"/>
</interceptor-stack>
</interceptors>
<action name="userAction" class="com.itheima.demo3.UserAction">
<!-- 只要是引用自己的拦截器,默认栈的拦截器就不执行了,必须要手动引入默认栈
<interceptor-ref name="DemoInterceptor"/>
<interceptor-ref name="defaultStack"/>
-->
<!-- 引入拦截器栈就OK -->
<interceptor-ref name="myStack"/>
</action>
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有