JavaWeb_(SSH)Struts创建Action的三种方式

  前导博文

    JavaWeb_(SSH)使用Struts框架实现用户的登陆  传送门

  

  第一种DefaultAction什么都没有干

  第二种实现了Action接口

  第三种继承了ActionSupport类【常用】

  目录结构

  

扫描二维码关注公众号,回复: 5427666 查看本文章
package com.Gary.web;

public class DefaultAction {

    public String execute()
    {
        System.err.println("这是一个普通的action");
        return null;
    }
    
}
DefaultAction.java
package com.Gary.web;

import com.opensymphony.xwork2.Action;

class ImplAction implements Action{

    @Override
    public String execute() throws Exception {
        System.out.println("这是实现了Action接口的action");
        return null;
    }

}
ImplAction.java
package com.Gary.web;

import org.apache.struts2.ServletActionContext;

import com.Gary.domain.User;
import com.Gary.service.UserService;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;

public class UserAction extends ActionSupport implements ModelDriven<User>{

    public User user = new User();
    
    public String execute() throws Exception {
        
        System.err.println("我已经运行了");
        
        UserService userService = new UserService();
        boolean success = userService.findUser(user);
        if(success)
        {
            return "success";
        }else{
            ServletActionContext.getRequest().setAttribute("error", "用户名或密码错误!!!");
            return "error";
        }
        
    }

    
    @Override
    public User getModel() {
        // TODO Auto-generated method stub
        return user;
    }
}
UserAction.java

  配置struts.xml

<struts>
    <!-- name:配置包名 -->
    <package name="MyPackage" namespace="/" extends="struts-default">
        <action name="LoginAction" class="com.Gary.web.UserAction" method="execute">
            <!-- 默认为转发  redirect设置为重定向-->
            <result name="success" type="redirect">/index.html</result>
            <result name="error">/login.jsp</result>
        </action>
        
        <action name="LoginActionDefault" class="com.Gary.web.DefaultAction" method="execute">
        </action>
        
        <action name="LoginActionImpl" class="com.Gary.web.ImplAction" method="execute"></action>
    </package>
</struts>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
    "http://struts.apache.org/dtds/struts-2.5.dtd">
    
    
<struts>
    <!-- name:配置包名 -->
    <package name="MyPackage" namespace="/" extends="struts-default">
        <action name="LoginAction" class="com.Gary.web.UserAction" method="execute">
            <!-- 默认为转发  redirect设置为重定向-->
            <result name="success" type="redirect">/index.html</result>
            <result name="error">/login.jsp</result>
        </action>
        
        <action name="LoginActionDefault" class="com.Gary.web.DefaultAction" method="execute">
        </action>
        
        <action name="LoginActionImpl" class="com.Gary.web.ImplAction" method="execute"></action>
    </package>
</struts>
struts.xml

猜你喜欢

转载自www.cnblogs.com/1138720556Gary/p/10479301.html