为了减少struts2中的action的数量,我一般把对单表的CRUD操作放在同一个action中实现了,但问题来了:
这样action的属性(实例变量)就会很多很杂乱,比如一个产品表的操作至少需要注入以下参数
List productList;//查询方法需要
Product product;//增加、修改方法需要
还有分页参数等等
搞的不好还有String productId之类的
这样导致action的逻辑看起来很混乱。 单一职责固然合理,但如果因此而引入大量的action类导致其他的如管理上的问题又是否值得呢?况且单表的CRUD操作之间也可能是有关联的,如删除操作后可能需要调用查询操作来返回一个新的产品列表。不知道大家在实际中是如何处理的,问问 呵呵~~
这样action的属性(实例变量)就会很多很杂乱,比如一个产品表的操作至少需要注入以下参数
List productList;//查询方法需要
Product product;//增加、修改方法需要
还有分页参数等等
搞的不好还有String productId之类的
这样导致action的逻辑看起来很混乱。 单一职责固然合理,但如果因此而引入大量的action类导致其他的如管理上的问题又是否值得呢?况且单表的CRUD操作之间也可能是有关联的,如删除操作后可能需要调用查询操作来返回一个新的产品列表。不知道大家在实际中是如何处理的,问问 呵呵~~
解决方案 »
- 怎样把页面提交的东西一次性放到session里去
- 导出xml
- 这个问题 请教各位大大
- 数据库查询
- Glassfish下,同一个EAR下的两个WAR,只能有一个找得到Propertis文件
- 表单自动生成
- 还是Servlet编译问题,如果能顺利解决的话,可以再加分!
- resin 编译jsp 到 work目录下 页面失效问题?
- 请问大家在java中return,break,exit(i)有什么区别?
- Java(TM) 2 Runtime Environment和java虚拟机一样吗?
- struts和struts2在公司哪个用的多一些
- struts DispatchAction 无法取得JSP页面的数据
要不然你分开了, 那看起来应该更混乱
我们都是放一个Action里面的.关键问题在那里列? 在你们的变量命名.
你可以给自己总结一套规则 比如说加前缀..之类.
另外就是一定要写注释..如果一个Action 类达到40来个变量,没有注释很难看懂的.
但是还是要视项目的规模而定
玩法很多的,不仅仅是这么几种。
避免出现重复的代码
你可以通过继承来搞定这个事情 父类Action包含平常的操作 子类再给出具体实现