本文作者:包子也沉默

struts2接收参数的5种方法

包子也沉默 3年前 (2019-10-22) ( 10-22 ) 991 0条评论
摘要: sers();privateUserloginUser;publicUsergetLoginUser(){returnloginUser;}publicvoidsetLoginUser(UserloginUser){this.loginUser=loginUser;}}entity:publicclassUser{privateStringusername;privateStringpasswor

这里总结下Struts2接收参数的5种方法。

er{privateStringusername;privateStringpassword;publicStringgetUsername(){returnusername;}publicvoids

1. 使用Action的属性

在action里面定义要接收的参数变量,并提供相应的setter,getter。定义的参数变量需要和提交参数的名称一致。

,所以只好每个都点击进去看看。。。打开网址后发现,在后两个网址中都可以找到框架下载地址,但第二个地址明显更友好一点,所以我们在第二个网址内下载Erlang的框架。 下载完成得到如下图文件:&

并不用做数据类型的转换,相应提交方式可以用get和post。

hannel.QueueDeclare("kibaQueue",false,false,false,null);/*这里定义了一个消费者,用于消费服务器接受的消息*C#开发需要注意下这里,在一些非面向

简单举例

如:login.action?name=yanggb&password=123456

要接收的参数变量,并提供相应的setter,getter。定义的参数变量需要和提交参数的名称一致。并不用做数据类型的转换,相应提交方式可以用get和post。简单举例如:login.action?na

jsp:

个链接网址,如下:supportedversionofErlang:https://www.rabbitmq.com/which-erlang.htmlWindowsinstaller:https:/

getName());}}这样,在Action就能接收到前端的请求参数(可以通过DTO去取参数)。4.使用ModelDriven在创建Action的时候,只要Action实现了ModelDriven接

<form action="login" method="post" name="form1">
    用户名:<s:textfield name="username"/><br/>
    密 码:<s:password name="password"/><br/>
    <s:submit value="提交"/> 
</form>

action:

预览信息,如下图:在预览里,我们得知,安装RabbitMQ有两种方法,一种是使用Chocolatey安装,一种是使用官方安装包安装。Chocolatey是什么呢?随手百度一下,原来他是一个软件包管理工

cvoidMain(string[]args){varfactory=newConnectionFactory();factory.HostName="localhost";factory.UserN

/downloadsErlangSolutions:https://www.erlang-solutions.com/resources/download.html因为,我们是无法通过文字描述来判断,

public class LoginAction extends ActionSupport{  
    private String username;
    private String password;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }
    
    public String getPassword() {
        return password;
    }
    
    public void setPassword(String password) {
        this.password = password;
    }
} 

这样,在Action就能接收到前端的请求参数。

ctory.Password="guest";using(varconnection=factory.CreateConnection()){using(varchannel=connection.C

2. 使用DomainModel

使用这种方式,在Action里面就不用定义很多的属性,而是用Model层用到的模型,保存它的一个对象。简单理解就是,从上面的单个参数接收,改为多个参数一起接收到一个对象中。相应提交方式可以用get和post。

;}publicvoidsetName(Stringname){this.name=name;}publicStringgetPassword(){returnpassword;}publicvoid

简单示例

如:login.action?loginUser.username=yanggb&loginUser.password=123456

;}publicvoidsetUserDTO(UserDTOuserDTO){this.userDTO=userDTO;}publicvoidexeceute(){System.out.println

jsp:

个链接网址,如下:supportedversionofErlang:https://www.rabbitmq.com/which-erlang.htmlWindowsinstaller:https:/

getName());}}这样,在Action就能接收到前端的请求参数(可以通过DTO去取参数)。4.使用ModelDriven在创建Action的时候,只要Action实现了ModelDriven接

<form action="login" method="post" name="form1">
    用户名:<s:textfield name="loginUser.username"/><br/>
    密 码:<s:password name="loginUser.password"/><br/>
    <s:submit value="提交"/> 
</form>

action:

预览信息,如下图:在预览里,我们得知,安装RabbitMQ有两种方法,一种是使用Chocolatey安装,一种是使用官方安装包安装。Chocolatey是什么呢?随手百度一下,原来他是一个软件包管理工

cvoidMain(string[]args){varfactory=newConnectionFactory();factory.HostName="localhost";factory.UserN

/downloadsErlangSolutions:https://www.erlang-solutions.com/resources/download.html因为,我们是无法通过文字描述来判断,

public class LoginAction extends ActionSupport {
    // 错误的写法,不能自己实例化,struts会自动实例化
    // private User loginUser = new Users();
    private User loginUser;

    public User getLoginUser() {
        return loginUser;
    }

    public void setLoginUser(User loginUser) {
        this.loginUser = loginUser;
    }
}

entity:

下: rabbitmqctlset_permissions-p"/"kiba".""."".*"-----------------------------------------------

public class User { 
    private String username;
    private String password;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

这样,在Action就能接收到前端的请求参数(可以通过实体去取参数)。

sword(){returnpassword;}publicvoidsetPassword(Stringpassword){this.password=password;}publicStringge

3. 使用DTO--数据传输对象(Data Transfer Object)

它的作用是接收参数和传递参数,并不是项目中的实体类。

ing(varchannel=connection.CreateModel()){channel.QueueDeclare("kibaQueue",false,false,false,null);//

如用户注册时,会用到确认密码,所以要先把参数接收过来,做处理后,再传递给相应方法去创建User对象。

ser=newUsers();privateUserloginUser;publicUsergetLoginUser(){returnloginUser;}publicvoidsetLoginUser

提交参数的方式和Domain Model方式相同。

【Usingtheofficialinstaller】段落里,有提醒我们,RabbitMQ是有依赖的,依赖一个Erlang语言的框架(类似于C#语言的NetFramework)。我们可以发现,在依赖的

简单示例

如:login.action?userDTO.name=yanggb&userDTO.password=123456

----------------------------------------------------------------------------------------- 设置用户权

DTO:

teStringconfirm;publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publ

public class UserDTO {
    private String name;
    private String password;
    private String confirm;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {  
        this.password = password;  
    }  

    public String getConfirm() {  
        return confirm;  
    }  

    public void setConfirm(String confirm) {  
        this.confirm = confirm;  
    }  
}

Action:

ey安装,一种是使用官方安装包安装。Chocolatey是什么呢?随手百度一下,原来他是一个软件包管理工具,也就是说,Chocolatey是类似于Nuget的一种工具。由于Chocolatey的使用,

public class LoginAction extends ActionSupport {  
    private UserDTO userDTO;  
  
    public UserDTO getUserDTO() {
        return userDTO;
    }

    public void setUserDTO(UserDTO userDTO) {
        this.userDTO = userDTO;
    }

    public void execeute() {
        System.out.println("姓名: " + userDTO.getName());
    }
}

这样,在Action就能接收到前端的请求参数(可以通过DTO去取参数)。

ller】对应的锚点,如下图。 在【Usingtheofficialinstaller】段落里找到有推荐标志的安装包,然后下载。 下载完成后,我们可以得到这样一个安装包,如下图:除

4.使用ModelDriven

在创建Action的时候,只要Action实现了ModelDriven接口,就可以去调用接口的getModel()方法去取相关对象。

名密码如下。factory.HostName="1.1.1.1";factory.UserName="kiba";factory.Password="123456";运行代码,不再抛异常,接受发送消息

相应提交方式可以用get和post。

userDTO.name=yanggb&userDTO.password=123456DTO:publicclassUserDTO{privateStringname;privateStrin

如:login.action?username=yanggb&password=123456

e(Stringname){this.name=name;}publicStringgetPassword(){returnpassword;}publicvoidsetPassword(String

jsp:

<form action="login" method="post" name="form1">
    用户名:<s:textfield name="username"/><br/>
    密 码:<s:password name="password"/><br/>
    <s:submit value="提交"/> 
</form>

action:

public class loginAction extends ActionSupport implements ModelDriven<User>{
    private User user = new User(); // 手动实例化

    public User getModel() {        
        return user; // 返回实例
    }     
}

5.使用Request对象

此方法与传统的JSP等传接参数一样,即使用request.getParameter()方法来接收参数。

如上图所示,页面默认为我们设置了一个可读,可写,可管理配置的权限;所以,我们只要点击Set premission就可以了。设置完权限,我们回到用户管理页面。 如上图所示,权限设置成

简单示例

如:login.action?name=yanggb

mq.com/】,点击GetStarted。然后,网站会自动跳转到当前首页GetStarted的锚点位置,如下图:GetStarted锚点:然后我们点击DownLoad+Installation,进入

action:

预览信息,如下图:在预览里,我们得知,安装RabbitMQ有两种方法,一种是使用Chocolatey安装,一种是使用官方安装包安装。Chocolatey是什么呢?随手百度一下,原来他是一个软件包管理工

cvoidMain(string[]args){varfactory=newConnectionFactory();factory.HostName="localhost";factory.UserN

/downloadsErlangSolutions:https://www.erlang-solutions.com/resources/download.html因为,我们是无法通过文字描述来判断,

public class LoginAction extends ActionSupport {  
    public void execeute() {
        String name = super.getRequest().getParameter("name");
        System.out.println("姓名:" + name); // yanggb
    }
}

这种方式几乎是最简单的。

nection.CreateModel()){channel.QueueDeclare("kibaQueue",false,false,false,null);//创建一个名称为kibaqueue的消

 

72/,进入管理页面。点击菜单栏的Admin选项,进入用户管理界面创建用户kiba,密码123456,如下图:创建完用户后,得到如下界面。如上图所示,刚刚创建的用户还没有任何访问权限。现在我们点击用户

"有些事情不是你努力就会有结果,有些人也不是你坚持就能够留得住。"

tringpassword){this.password=password;}}这样,在Action就能接收到前端的请求参数(可以通过实体去取参数)。3.使用DTO--数据传输对象(DataTrans

文章版权声明:除非注明,否则均为本站原创文章,转载或复制请以超链接形式并注明出处。
分享到:
赞 (0

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

发表评论

快捷回复:

评论列表 (有 0条评论, 991人围观) 参与讨论