Model view controller 如何在struts中从控制器调用db访问方法到DAO类

Model view controller 如何在struts中从控制器调用db访问方法到DAO类,model-view-controller,struts-1,Model View Controller,Struts 1,我想从控制器调用一个方法,即servlet。该方法位于单独的java(DAO)类中。问题是如何将表单变量从控制器传递到java(DAO)类。您可以通过使用bean(POJO)类来实现这一点。我将用一个简单的例子来解释它。 如果表单有一个字段“UserName”,那么在bean(POJO)类中创建一个名为UserName create getter/setter mathods的变量 示例:*JSP** (用户名:) **Bean(POJO)类:** 公共类InputBean{ 私有字符串用户名;

我想从控制器调用一个方法,即servlet。该方法位于单独的java(DAO)类中。问题是如何将表单变量从控制器传递到java(DAO)类。

您可以通过使用bean(POJO)类来实现这一点。我将用一个简单的例子来解释它。
如果表单有一个字段“UserName”,那么在bean(POJO)类中创建一个名为UserName create getter/setter mathods的变量
示例:*JSP**
(用户名:)
**Bean(POJO)类:**
公共类InputBean{
私有字符串用户名;
public void setUserName(字符串用户名){
this.UserName=用户名;
}
公共字符串getUserName(){
返回用户名;
}
}
然后,您可以使用InputBean**类(通过在DAO和controller中创建InputBean对象)**作为中间类,将表单变量从controller传递到DAO****
假设在DAO中有一个名为“add”的方法
公共字符串添加(inputBean inputBean){
//你的代码在这里
试一试{
//你的代码在这里
//假设到relavent数据库表的数据库映射类是User
用户任务=新用户();
task.setUserName(inputBean.getUserName);//在这里传递表单数据
}   
//你的代码在这里
}
然后在action类中可以调用该方法
----动作类----
InputBean InputBean=新任务InputBean();
公共字符串插入(){
//你的代码在这里
试一试{
add(inputBean);
//你的代码在这里
}
返回结果;
}

您的getter和setter函数名不正确,无法真正解决OP中非常令人困惑的问题。您在问什么?您可以从servlet调用一个实例方法(如果您问的是servlet,为什么它会标记为Struts 1?)。
You can do this by using a bean (POJO) class. I will explain it by using a simple example.

If your form has a field "UserName" , In your bean (POJO) class create a variable called UserName create getter/setter mathods  

Ex: **JSP**  

    ( User Name: <input type="text" name="UserName" value="UserName"/> )

**Bean (POJO) class :**

        public class InputBean {
            private String UserName;

            public void setUserName(String UserName) {
                this.UserName = UserName;
            }

            public String getUserName() {
                return UserName;
            }
        }

Then you can pass the form varibles from controller to DAO **by using InputBean** class (By creating InputBean Objects in both DAO and Controller) **as the intermediate class**

assume that you have a method called "add" in DAO

 public String add(inputBean inputBean) {
        // your code here
        try {
           // your code here
           //assume that database mapping class to relavent database table is User

                User task = new User();
                task.setUserName(inputBean.getUserName); //here the form data is passed
           }   

             //your code here   
    }

Then in action class you can call that method

----Action Class----

InputBean inputBean = new TaskInputBean();

 public String insert() {
      //your code here
        try {



          dao.add(inputBean);

       //your code here        

        }
        return result;
    }