Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用execute方法将用户信息注册到数据库中_Java_Struts - Fatal编程技术网

Java 如何使用execute方法将用户信息注册到数据库中

Java 如何使用execute方法将用户信息注册到数据库中,java,struts,Java,Struts,这是Action类:我想将用户详细信息注册到数据库,请告诉我如何编写代码将用户详细信息注册到数据库。注册使用ActionForm很好,但我必须使用DynaActionForm创建。请帮助我,我是新手,尝试学习struts框架 package com.register.model; import java.sql.Connection; import java.sql.PreparedStatement; import com.register.util.Con

这是Action类:我想将用户详细信息注册到数据库,请告诉我如何编写代码将用户详细信息注册到数据库。注册使用ActionForm很好,但我必须使用DynaActionForm创建。请帮助我,我是新手,尝试学习struts框架

    package com.register.model;

    import java.sql.Connection;
    import java.sql.PreparedStatement;

    import com.register.util.ConnectionUtils;
    import com.register.util.DbUtils;

    public class UserRegistration extends User{

        private static final long serialVersionUID = 1L;

        public boolean newuserregistration() throws Exception
        {
            PreparedStatement psUserRegistration = null;
            String sqlUserRegistration = null;

            boolean isRegistered = false;

            Connection conn = ConnectionUtils.getConnection();

            sqlUserRegistration = "insert into user_master(sEmail, sPassword, sFirstName," +
                                  " sLastName, cGender, iUserType, sCreatedDate, cStatus)" +
                                  " values(?,md5(?),?,?,?,1,sysdate(),'A')";

            try{
                psUserRegistration = conn.prepareStatement(sqlUserRegistration);
                psUserRegistration.setString(1, this.getEmail());
                psUserRegistration.setString(2, this.getPassword());
                psUserRegistration.setString(3, this.getFirstName());
                psUserRegistration.setString(4, this.getLastName());
                psUserRegistration.setString(5, this.getGender());
                psUserRegistration.executeUpdate();

                isRegistered=true;
            }
            catch(Exception e)
            {
                String errorMessage=e.getMessage(); 
                e.printStackTrace();
                if(errorMessage.indexOf("Duplicate entry")>=0)
                {
                    this.setDbError("error");
                }
                isRegistered=false;
                e.printStackTrace();
            }
            DbUtils.close(psUserRegistration, conn);

            return isRegistered;
        }
    }

This is database connection class for all .





package com.register.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.action.DynaActionForm;

import com.register.model.UserRegistration;

public class UserRegistrationAction  extends Action{
    public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {

        boolean action_perform = false;
        String action_target;

        UserRegistration u = new UserRegistration();

        ActionMessages errors_mesg = new ActionMessages();

        //UserRegisterForm uf = (UserRegisterForm) form;


        DynaActionForm uf=(DynaActionForm) form;
        return null;

    }
}
我已经尝试过这段代码,现在工作得很好,所以现在我理解了Action表单和DynaAction表单之间的基本区别

    package com.register.model;

    import java.sql.Connection;
    import java.sql.PreparedStatement;

    import com.register.util.ConnectionUtils;
    import com.register.util.DbUtils;

    public class UserRegistration extends User{

        private static final long serialVersionUID = 1L;

        public boolean newuserregistration() throws Exception
        {
            PreparedStatement psUserRegistration = null;
            String sqlUserRegistration = null;

            boolean isRegistered = false;

            Connection conn = ConnectionUtils.getConnection();

            sqlUserRegistration = "insert into user_master(sEmail, sPassword, sFirstName," +
                                  " sLastName, cGender, iUserType, sCreatedDate, cStatus)" +
                                  " values(?,md5(?),?,?,?,1,sysdate(),'A')";

            try{
                psUserRegistration = conn.prepareStatement(sqlUserRegistration);
                psUserRegistration.setString(1, this.getEmail());
                psUserRegistration.setString(2, this.getPassword());
                psUserRegistration.setString(3, this.getFirstName());
                psUserRegistration.setString(4, this.getLastName());
                psUserRegistration.setString(5, this.getGender());
                psUserRegistration.executeUpdate();

                isRegistered=true;
            }
            catch(Exception e)
            {
                String errorMessage=e.getMessage(); 
                e.printStackTrace();
                if(errorMessage.indexOf("Duplicate entry")>=0)
                {
                    this.setDbError("error");
                }
                isRegistered=false;
                e.printStackTrace();
            }
            DbUtils.close(psUserRegistration, conn);

            return isRegistered;
        }
    }

This is database connection class for all .





package com.register.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.action.DynaActionForm;

import com.register.model.UserRegistration;

public class UserRegistrationAction  extends Action{
    public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {

        boolean action_perform = false;
        String action_target;

        UserRegistration u = new UserRegistration();

        ActionMessages errors_mesg = new ActionMessages();

        //UserRegisterForm uf = (UserRegisterForm) form;


        DynaActionForm uf=(DynaActionForm) form;
        return null;

    }
}
package com.register.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.action.DynaActionForm;

import com.register.model.UserRegistration;

public class UserRegistrationAction extends Action {
    public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {

        boolean action_perform = false;
        String action_target;

        UserRegistration u = new UserRegistration();

        ActionMessages errors_mesg = new ActionMessages();

        // UserRegisterForm uf = (UserRegisterForm) form;

        DynaActionForm uf = (DynaActionForm) form;

        String emailid = uf.getString("emailid");
        String password = uf.getString("password");
        String cpassword = uf.getString("cpassword");
        String firstname = uf.getString("firstname");
        String lastname = uf.getString("lastname");
        String gender = uf.getString("gender");
        String submitError = uf.getString("submitError");

        // System.out.println(emailid);
        if (form != null)

        {

            u.setEmail(emailid);

            u.setPassword(cpassword);
            // u.setEmail(emailid);
            u.setFirstName(firstname);
            u.setLastName(lastname);
            u.setGender(gender);
            // u.setEmail(cpassword);
            action_perform = u.newuserregistration();
            String sError = u.getDbError();
            if (sError.equalsIgnoreCase("error")) {
                errors_mesg.add("submitError", new ActionMessage(
                        "errors.user.registration.email.duplicate"));
                saveErrors(request, errors_mesg);
            }

        }

        if (action_perform == false) {
            errors_mesg.add("submitError", new ActionMessage(
                    "errors.user.registration.fail"));
            saveErrors(request, errors_mesg);
            action_target = "failure";
        } else {
            errors_mesg.add("submitError", new ActionMessage(
                    "errors.user.registration.success"));
            saveErrors(request, errors_mesg);
            action_target = "success";
        }

        return mapping.findForward(action_target);

    }
}