`

对于action包含多事件的讨论

阅读更多
考虑了这样用户信息更新的一个action,着action负责接受用户返回的个人信息数据,把个人信息数据赋值给User实体类并把交给dao层(中间也可以再隔一个service层,只是目前业务逻辑就那么简单)。dao层有会对个人信息数据是否有被赋值进行判断。如果有的,进行更新操作,如果没有被赋值的,该字段就不用更新。

    这样一条线。这个action在前端页面就可能用于多个事件。比如:用户密码需要更新的时候(用户密码是单独一个菜单进行更新操作的),用户对自己的基本信息需要更新的时候,管理员对单条用户的信息进行更新的时候。这三个事件,提交的用户个人信息字段数据有多也有少。但是action都可以接受,对于没有被赋值的字段就默认不更新。对于被赋值了的字段就进行更新。这样。这个action就可以对三个事件进行处理。而且不用ifelse这种语句,让人看起来繁琐。而且action只是负责接收前端给予的数据,调用接口,然后返回执行是否成功。

    当然这里需要解释一下。由于这个action是用于ajax调用。所以没有路径烦恼。也就是说不会因为最后返回的路径不同需要写三个action。

    只是想请教一下。这样写action是否真的合理呢?对于大家一致认为的一个action应该简单化,只处理一个事件。现在包含了三个事件在里面。从设计上讲可能不合适。但是我们也可以换一个角度看。如果把这个action是对应到实体类的一个操作,可能就正好。这个action是用于User这个实体类的更新操作的。所有的关于User的更新都应该走这个action。这样一个逻辑。

    欢迎大家拍砖。不知道大家对于这样的action设计觉得是否合理?
分享到:
评论

相关推荐

    Action——Action的配置和作用

    一个Action类中,常常包含一个或多个方法,这些方法负责具体的业务逻辑处理,我们称这样的方法为Action方法。典型的Action方法特征包括:不接受任何参数、返回值为String类型,以及public访问修饰符。例如,在...

    JavaScript获取网页表单action属性的方法

    总结来说,JavaScript提供了一套强大的API,允许开发者获取和操作网页表单元素的各种属性,包括本文讨论的action属性。通过这些API,开发者可以对用户界面进行交互,使得Web应用更加动态和用户友好。理解并熟练运用...

    android事件分发机制

    按键事件主要包括ACTION_DOWN、ACTION_UP、ACTION_CANCEL、ACTION_MOVE等,它们对应于按键的按下、释放、取消和移动。触摸事件则更为复杂,涉及到一系列与手指接触屏幕的动作,如ACTION_DOWN(手指触摸屏幕)、...

    Struts1框架执行原理(附Action、ActionServlet、ActionForm工作机制)

    - **Action**:Action是业务逻辑的实现,它是一个Java类,通常包含多个方法,每个方法对应一个特定的操作。`execute`方法是核心,处理完业务逻辑后,返回一个表示结果的`ActionForward`对象。 - **ActionForm**:...

    C++ Concurrency in Action_C++_action_

    《C++ Concurrency in Action》是一本深入探讨C++并发编程的权威著作,作者是知名软件开发者、C++专家Anthony Williams。这本书旨在帮助C++程序员理解和掌握如何在现代多核处理器环境中有效地使用并发和并行编程技术...

    Event Procerssing in action

    - **事件处理的重要性**:讨论了事件驱动架构的优势,包括响应性、灵活性以及可扩展性等方面。 - **事件处理的应用场景**:列举了多个实际应用场景,比如实时分析、监控、安全警报等,帮助读者理解事件处理在不同...

    eclipse插件编程之action和dialog

    4. **国际化支持**:为了适应多语言环境,Action的文本和Dialog的标题、消息等内容应使用Resource Bundle进行本地化。 5. **UI更新**:如果Action的状态(如启用/禁用)依赖于其他条件,需要使用`IAction....

    Struts2的Action多个方法配置和验证

    这篇博客主要讨论了如何配置Struts2 Action中的多个方法以及如何进行数据验证。 首先,一个Action类可以包含多个方法,每个方法对应一个特定的HTTP请求。这种多方法配置允许我们根据不同的请求路径来调用不同的业务...

    Action是否线程安全

    现在我们来详细讨论`Action`以及其线程安全性。 首先,让我们区分两种可能的`Action`类型: 1. **`java.util.concurrent.Action`**:这个接口在Java标准库中并不存在,可能是用户自定义的一个接口。如果它包含了...

    spring integration in action

    通过以上各章节的详细解释,我们可以看出,《Spring Integration in Action》这本书覆盖了从基础知识到高级主题的各个方面,不仅提供了理论指导,还包含了大量实用的代码示例和最佳实践,对于希望深入了解 Spring ...

    Struts2 Action参数详细说明

    总结来说,Struts2 Action的参数包括`name`、`class`、`namespace`、`method`等,它们共同构成了Action的完整配置,使我们能够灵活地定义和控制Action的行为。同时,通过`method`属性和DMI,我们可以实现一个类中多...

    Entity Framework 4 In Action

    ### Entity Framework 4 In Action:全面解析与应用实践 ...总之,《Entity Framework 4 In Action》是一本不可多得的技术书籍,无论是对于初学者还是有一定经验的开发者而言,都能从中获得宝贵的知识和启发。

    netty in action 中文版

    同时,提供的jb51.net.txt、电子书大全.url、脚本之家.url等资源可能包含与Netty相关的学习资料和社区链接,对于进一步提升Netty技能和扩展知识面非常有帮助。 总之,《Netty in Action》中文版是一本深入浅出的...

    Spring in Action 第四版英文原版+源码

    英文原版提供了最原始的作者见解和技术细节,对于想要深入了解Spring的开发者来说是一份宝贵的资源。随书附带的源码可以帮助读者更好地理解书中示例,通过实际操作来加深理论学习。 Spring框架是Java企业级应用开发...

    Laravel开发-action-log

    `action-log` 包的工作原理可能是这样的:它包含一个自定义的事件(如 `ActionLogged`),当你的应用中发生任何值得记录的操作时,你可以触发这个事件并传递相关的信息,如操作类型、执行者ID、受影响的资源等。...

    action登陆实现,获取web元素

    至于文件"action3-1",这可能是一个源代码文件,包含具体的Action类实现。通常,这样的文件会定义一个Action类,实现相关的业务逻辑,包括登录验证、session管理和Web元素的处理。通过阅读和理解这个文件,开发者...

    Hibernate in action 中文版 完整版 pdf

    3. 关系映射:涵盖了单向和双向关联、一对多、一对一、多对一和多对多的关系映射实现,以及集合的处理,如List、Set、Map等。 4. 高级特性:深入讨论了懒加载、级联操作、缓存机制(一级缓存和二级缓存)、延迟加载...

Global site tag (gtag.js) - Google Analytics