Как получить доступ к параметрам URL в struts2

Я работаю над проектом struts2. Я создал URL-адрес в своем проекте и передал параметры с помощью тегов. Мой вопрос: как мне прочитать параметр в действиях? также, если я сделаю то же самое, я смогу увидеть параметры в виде строки запроса. я спрашиваю, потому что я не могу, и я видел это в одном из руководств.


person SonOfTheEARTh    schedule 18.12.2010    source источник


Ответы (2)


Как правило, вы будете взаимодействовать с параметрами в своих действиях, используя поля в своих действиях, предоставляемые сеттерами. Предположим, что следующий URL-адрес соответствует моему примеру действия Struts2:

URL

http://localhost/myAction?firstName=SonOfTheEARTh

Код действия

public class MyAction extends ActionSupport {
    private String firstName;

    public String execute() throws Exception {
        // do something here
        return SUCCESS;
    }

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(final String firstName) {
        this.firstName = firstName;
    }
}

JSP

Использование тегов Struts: <s:property value="firstName"/>

Использование JSP EL/JSTL: ${action.firstName}

person Steven Benitez    schedule 18.12.2010
comment
означает ли это, что мы можем отправлять объекты (кроме объектов String) в качестве параметров. Также это хорошая практика. также должен быть виден параметр с URL-адресом. потому что в моем случае URL не показывает параметры - person SonOfTheEARTh; 19.12.2010
comment
Да, вы можете использовать другие типы объектов, кроме String. Если это пользовательский тип, вам потребуется создать для него преобразователь типов Struts2. - person Steven Benitez; 19.12.2010

EDITED answer: он основан на соглашениях об именах вашего параметра. Взгляните на эту ссылку и узнайте, как они устанавливают параметр "oldName".

person CoolBeans    schedule 18.12.2010
comment
я работаю со struts2. я забыл упомянуть об этом. под тегом URL я имел в виду ‹s:url›. которому вы можете передать параметры, но я не знаю, как их получить. - person SonOfTheEARTh; 18.12.2010