这个是个人的一些看法,随着时间的关系,会进行修改,如果有什么错误也请提出!
首先确认一下准则,就是预定大于配置,尽量减少配置文件的编写,加快开发效率
其实说一下使用的框架的版本,hibernate3.5以上,spring 2.5.5以上,因为用到的注解,
本例使用的hibernate为3.5.5,spring 3.0.4,数据库使用mysql
这里只贴出关键部分的配置,其他细节自己补充
<!--因为spring要使用注解,所以添加如下代码-->
<context:component-scan base-package="com.公司名.项目名" />
<!--配置hibernate SessionFactory属性-->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!--这里设定了数据库与java类中的映射规则,javabean按java规范定义,数据库按加下划线的形式定义-->
<property name="namingStrategy">
<bean class="org.hibernate.cfg.ImprovedNamingStrategy" />
</property>
<property name="hibernateProperties">
<props>
<!--数据库方言-->
<prop key="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</prop>
<!--是否显示执行的sql语句-->
<prop key="hibernate.show_sql">false</prop>
<!--同步Javabean与数据库表结构-->
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
<property name="packagesToScan" value="com.公司名.项目名..*" />
</bean>
<!--配置事务-->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="get*" read-only="true" />
<tx:method name="find*" read-only="true" />
<tx:method name="*" />
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="interceptorPointCuts" expression="execution(* com.公司名.项目名..service.*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="interceptorPointCuts" />
</aop:config>
这样再加上一些附加的配置,比如DataSource等配置就搭好基本架构了
之后建议的包名结构如下:
DAO层:com.公司名.项目名.模块名.dao
Service层:com.公司名.项目名.模块名.service
Action层:com.公司名.项目名.模块名.action
Pojo层:com.公司名.项目名.模块名.pojo
自己写的工具类层:com.公司名.项目名.模块名.utils
然后说一下开发的流程,
1.先确定实体,以及实体与实体的关系,建立好模型,个人倾向于hibernate中推荐的开发流程,就是先写javabean以及配置信息,之后生成数据库
具体hibernate开发事项请参考另一篇文章
http://finallygo.iteye.com/blog/1040377
2.之后写DAO:在DAO的类上加@Repository注解,表示这个组件是持久化的
查询的时候优先使用Criteria配合Example的模式,因为这样便于不容易出错,且便于修改,如果复杂一些的用HQL,再复杂的用SQL
3.再写Service:在Service的类上加@Service注解,表示这个组件是业务层的,同时对于依赖的组件(DAO或者其他Service)添加@Resource注解
@Resource注解默认以ByName的形式注入,如果找不到就ByType,如果还是找不到就会抛异常,说至少要有一个满足条件的组件被注入
4.最后写Action,这里涉及到使用的MVC框架,以及整合的方式了,暂时不讨论
另外暂时把我临时配置的一个文件上传吧
分享到:
相关推荐
这个"struts2+hibernate3.3.2+Spring2.5.5整合示例"压缩包文件(WebOA)可能包含了一个简单的Web应用实例,演示了如何将这三个框架集成在一起。由于压缩包中没有包含所有必要的库,开发者在使用时需要自行下载相应的...
Spring与Struts2和Hibernate整合后,可以实现服务层的事务管理,使得业务逻辑的处理更为高效和健壮。 整合这三个框架的过程主要包括以下几个步骤: 1. 添加依赖:首先,需要在项目中引入这三个框架的所有必需jar包...
SSH框架整合是Java Web开发中的常见实践,SSH指的是Struts2、Spring和Hibernate这三个开源框架的首字母缩写。这个例子展示了如何将Hibernate3.3.1、Spring2.5.5和Struts2 2.0.1.2集成到一个项目中,以实现高效、灵活...
### Struts2.1.6 + Hibernate3.3.2 + Spring2.5.5 + Extjs3.0.0 + Annotations 整合开发 #### 一、技术栈概述 本篇文章将详细介绍如何使用Struts2.1.6、Hibernate3.3.2、Spring2.5.5和Extjs3.0.0以及Annotations来...
spring 2.5.5源碼包,jar 包,源代碼 spring 2.5.5源碼包,jar 包,源代碼
4. **数据访问集成**:Spring 2.5.5加强了与各种持久层技术的集成,包括JDBC、Hibernate、MyBatis等。使用`@Transactional`注解可以轻松实现事务管理,降低了数据库操作的复杂性。 5. **Spring表达式语言(SpEL)**:...
开发一个基本的spring Application所需要用到的最小包: spring-beans.jar,spring-core.jar 开发一个基本的spring WebApplication所需要用到的最小包: spring-beans.jar,spring-core.jar,spring-web.jar,...
开发一个基本的spring Application所需要用到的最小包: spring-beans.jar,spring-core.jar 开发一个基本的spring WebApplication所需要用到的最小包: spring-beans.jar,spring-core.jar,spring-web.jar,...
4. **数据访问**:Spring 2.5.5包含了对JDBC、ORM(如Hibernate、JPA)的集成,简化了数据库操作。 5. **Java配置**:引入了基于Java的配置,使得在不使用XML的情况下也能进行Spring应用的配置。 三、API文档结构 ...
5. **数据访问集成**:Spring支持多种数据访问技术,包括JDBC、ORM(Object-Relational Mapping)框架如Hibernate和MyBatis。它提供了一种统一的接口来简化数据库操作,减少与底层技术的耦合。 6. **事务管理**:...
5. **Spring Portlet MVC**:对于portlet应用的开发,Spring 2.5.5提供了Portlet MVC框架,与Web MVC类似,但专为portlet容器设计。 6. **更多对第三方库的支持**:Spring 2.5.5增强了对各种流行库的兼容性,包括...
最后,Spring还提供了对JDBC、ORM框架(如Hibernate和MyBatis)的抽象层,简化了数据库操作。在Spring 2.5.5中,你可以使用JdbcTemplate或者HibernateTemplate来实现数据库访问。 总之,Spring 2.5.5虽然不是最新...
4. **数据访问集成**:Spring提供了与各种持久层技术的集成,包括JDBC、ORM(Object-Relational Mapping)框架如Hibernate和MyBatis。它简化了数据库操作,支持声明式事务管理。 5. **MVC(Model-View-Controller)...
通过提供的SSH2开发jar包和空项目,初学者可以快速搭建起一个基础的Web应用框架,进一步学习和实践SSH2的整合与应用。这有助于提升开发者在企业级应用开发中的技能和经验,为日后的项目开发打下坚实的基础。
spring2.5.5_API.rar,学习Spring的好帮手
Hibernate3.3.2+Spring2.5.5+Struts2.1.6+Extjs3.0.0 Annotations方式快速开发框架 介绍 这是一个整合Hibernate, Spring, Struts2,并配合Extjs来快速开发增删改查功能的架构示例,对于系统中需要的配置信息大部分是...
6. **Bean工厂与ApplicationContext**:Bean工厂是Spring的核心,2.5.5版本中,ApplicationContext接口提供了更多的企业级服务,如消息源、国际化支持等。 7. **容器扩展**:Spring 2.5.5引入了基于注解的配置,...
spring2.5.5 源码包,虽然很老,但有时候要看老代码,还是有用的