一个讨厌的struts2问题

09-10-10 oojdon
         

虽然项目已经完成,但是我讨厌我的代码。

是否有人与我有同感,struts2的action代码很是恶心

public class PersonAction implements Preparable {

//我讨厌把数据写在这里,更讨厌get set
    private PersonService service;
    private List<Person> persons;
    private Person person;
    private Integer id;

    public PersonAction(PersonService service) {
        this.service = service;
    }

    public String execute() {
        this.persons = service.findAll();
        return Action.SUCCESS;
    }

    public String save() {
        this.service.save(person);
        this.person = new Person();
        return execute();
    }

    public String remove() {
        service.remove(id);
        return execute();
    }

    public List<Person> getPersons() {
        return persons;
    }

//特别讨厌这个getId(),setId()
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public void prepare() throws Exception {
        if (id != null)
            person = service.find(id);
    }

    public Person getPerson() {
        return person;
    }

    public void setPerson(Person person) {
        this.person = person;
    }
}
<p>

而struts1,spring mvc,vraptor3的方式多好

//Spring MVC 2.5 ,没有get set
@RequestMapping(params = "method=listBoardTopic")
    public String listBoardTopic(@RequestParam("id")int topicId, User user,
ModelMap model) {
        bbtForumService.getBoardTopics(topicId);
        model.addAttribute("currUser",user); //②向ModelMap中添加一个属性
        return "listTopic";
    }

//Vraptor3 ,Restful ,没有get set
@Path("/users/{user.id}")
	@Get
	public void view(User user) {
	    this.dao.refresh(user);
	    result.include("user", user);
	}
<p>

[该贴被oojdon于2009-10-10 11:01修改过]

[该贴被oojdon于2009-10-10 11:05修改过]

[该贴被oojdon于2009-10-10 11:07修改过]

         

1
banq
2009-10-10 11:11

>@RequestMapping(params = "method=listBoardTopic")

public String listBoardTopic(@RequestParam("id")int topicId, User user,

ModelMap model)

我个人讨厌Spring 2.5的这种复杂的Annotation写法,注解如果只按照中文名词解释,就是在主要文字边上注解的,如果注解的文字不容易让人理解,那不是还需要注解的注解了?那么我们看古文就是在不断注解中,远离原文真正意图,而在软件中,则是远离真正需求了。

oojdon
2009-10-10 11:15

还好

btw:jivejdon的缓存太厉害了,修改了帖子或者回复之后看不到结果,要刷一次。

[该贴被oojdon于2009-10-10 11:19修改过]

dhxyu
2009-10-10 16:01

有空去看看tapestry5的处理。

dhxyu
2009-10-10 16:01

有空去看看tapestry5的处理。

发多了,我只按了一次,却发了2个上来,呵呵。ajax应用的不够好。

[该贴被dhxyu于2009-10-10 16:02修改过]

2Go 1 2 下一页