j2ee开发ssh框架的几个问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了j2ee开发ssh框架的几个问题相关的知识,希望对你有一定的参考价值。

1、struts2开发的时候,action是应该尽量多,还是把多个action集合在一个action里面好? 我见过有的人 一个操作就对应一个action 类似这样 delete一个 save一个 update又一个 这样是不是有点太繁琐了?
2、spring的事务管理是不是一般都放在业务层的?一般是自动代理还是用手动一个个配置的比较多,有没有比较常用的配置方法?
3、并发控制 ssh开发时常用的并发控制是怎么的? 是在hibernate中添加version字段吗?

谢谢.....

参考技术A 1. 一个操作就对应一个action 这样结构比较清晰。一些公司要求要这样。
这完全取决于你要近什么样的公司。如果闲繁琐,就写到一个继承于dispatchAction的类。
2.一般是写到业务层,自动代理的。
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
</bean>

<bean id="myHibTxManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>

<tx:advice id="txAdvice" transaction-manager="myHibTxManager">
<tx:attributes>
<!-- 对get/load/search开头的方法要求只读事务 -->
<tx:method name="get*" propagation="SUPPORTS"
read-only="true" />
<tx:method name="load*" propagation="SUPPORTS"
read-only="true" />
<tx:method name="search*" propagation="SUPPORTS"
read-only="true" />
<!-- 对其它方法要求事务 -->
<tx:method name="*" propagation="REQUIRED" />
</tx:attributes>
</tx:advice>

<aop:config>
<aop:pointcut id="serviceMethods"
expression="execution(* org.jb.crm.biz.*.*(..))" />
<!-- 织入 -->
<aop:advisor advice-ref="txAdvice"
pointcut-ref="serviceMethods" />
</aop:config>
3. http://soleares.javaeye.com/blog/380794 有你想知道的东西,
希望能帮到你。
参考技术B 1、对于小的系统每个功能对应一个action这样是结构清晰,但是大点的系统就不行了,大系统里面每个模块都要好多功能,那action也就太多了。。就不清晰了。最好的办法就是一个action里面有多个方法,一个功能调用里面的一个方法完成,多个功能公用一个action,发请求的时候 action='action名.do?method=方法()'
2、你还是好好看看spring吧
3、不理解,我们用cc控制的
参考技术C 1.对于一个操作就对应一个action会有两个问题: 一是java文件会越来越多.
二是配置文件会越来越庞大.我觉得对于怎么样去选择还是看项目的需求.就如可以把对一个实体对象的CRUD操作封装到一个action中.这样个人觉得结构还清晰一些.

2.spring两种事务管理方式:编程式、声明式.(业务层管理)
通常会选择声明式的.这是最少影响应用代码的选择,因而这是和非侵入性的轻量级容器的观念是一致的.

3.悲观锁 和 乐观锁
另version是属于乐观锁 , 常用的也还有加 timestamp
参考技术D 一,可以把基于一类对象(例如:user类对象)的操作 都集合到一个action 中处理, 例如 dispathaction ,用方法名参数来,来判断是调用哪个方法(execute方法己被重写)

二,一般都采用自动代理的方 ,前提是你要把和个类之间的依赖关系配置好

三,这个我记得是在sessionFactory 或是 DataSource 中有一个属性来控制,时间长不用 有点忘了 ````不好意思 才疏 只能告诉你这么多
第5个回答  2009-10-26 1.一个业务组作一个Action类
比如:入帐业务:手写入帐 writeSingle();批量入帐 writeBatch();
public class Recorded
...
public String writeSingle()

public String writeBatch()



2.事务自然在业务层,难道dao层的删除一条记录也要事务?手动些重要事务
3.并发?jEE本身就是多线程。你是说控制数据库并发? 加锁阿

以上是关于j2ee开发ssh框架的几个问题的主要内容,如果未能解决你的问题,请参考以下文章

J2EE 学习目标

java中ssh如何理解

找java设计,基于ssh,j2ee管理系统,设计,管理系统的设计思路与技巧

版本发布Jeecg-P3 1.0 发布,J2EE插件开发框架

J2EE快速开发框架

J2ee分布式框架--开发环境部署