近期学习总结:
一农(412792674) 18:35:08
今天讲了ssh整合的内容,布置了练习题目,总结了我们学习的历程,这里把这个历程简单文字化一下
1、我们最开始做了一个servlet+jsp的猜数字游戏
2、引入jdbc后使用servlet+jsp+jdbc做了增删改查
这个时候,我们需要自己调用request.getParameter("xxx")获取浏览器传来的参数值,自己调用user.setUsrename方法把参数值注入user对象,需要自己拼构sql语句执行插入更新等,需要自己生成Connection对象,创建statment,执行sql,处理ResultSet关闭session等。
3、然后我们引入了struts2,struts2的mvc模式使得我们的程序更有层次,更清晰些,也灵活一些。另外使用struts2的自动赋值的特性,省去了request.getParameter,然后在user.setXXX,以及类型转换的机械劳动。
4、然后我们引入hibernate,重写了UserDao,省去了拼凑sql的工作,但还需要自己管理session,而且管理的方式很有局限性
5、后来我们引入spring来当作对象工厂,负责对象的生成,但这时还只是简单的把构造以及赋值的操作,从代码变为配置而已。
6、现在我们在web.xml添加了spring的监听器,来自动产生ApplicationContext对象,引入struts2-spring-plugin,让struts2和spring配合,自动将我们在spring的配置文件里声明的UserDao注入到action里,还在web.xml里配置了OpenSessionInViewFilter,并让UserDao继承HibernateDaoSupport,来进一步简化UserDao的内容,而且还增强了其功能。
到此,struts2,hibenate,spring的简单整合就完成了。和最初的servlet+jsp+jdbc相比,代码少了一半还多,功能强了,逻辑清晰了,但配置多了,如果只是做一个CRUD,效果还不足够明显,如果做一个模块很多的项目,ssh整合的优势就更加突出了。
待后面进一步整合,并添加一些基础类后,使用泛型,预定优先等代码将更加简洁。
对ssh整合的配置进行总结:
Web_xml中的配置
此部分是对sping配置进行读取生成一个application对象。
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:/applicationContext*.xml
</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
AppilicationContext.xml中的配置
1. 配置数据源
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:jdbc.properties</value>
</list>
</property>
</bean>
<!-- 数据源 -->
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName"
value="${jdbc.driverClassName}" />
<property name="url"
value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>
2. 配置crud依赖的类
<bean id="namingStrategy"
class="org.hibernate.cfg.ImprovedNamingStrategy">
</bean>
<!-- 定义一个sessionFactory -->
<!-- org.springframework.orm.hibernate3.LocalSessionFactoryBean -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="namingStrategy" ref="namingStrategy" />
<property name="dataSource" ref="dataSource" />
<property name="annotatedClasses">
<list>
<value>com.yuqiao.qiu.dao.User</value>
<!-- <value>com.yuqiaotech.simplejee.auth.model.Group</value>-->
<!-- <value>com.yuqiaotech.simplejee.forum.model.Forum</value>-->
</list>
</property>
3. 配置生成crud的实例的配置
<!-- 事务管理 -->
<bean id="crud" class="com.yuqiao.qiu.dao.Crud">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
4. 自动建表的配置
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
${hibernate.dialect}
</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
<!--
-->
</props>
</property>
分享到:
相关推荐
基于注解的Spring+Struts2+Mybatis+Maven项目,Spring 3.0 Struts2 Mybatis3.0
一个简单的spring+struts2+hibernate+mybatis整合(数据库脚本放在项目资源文件的sql目录下) 因为没想好mvc用springmvc好,还是struts2好 所以没有整合进去
里面有spring+struts2+ibatis整合的jar包,
一个spring+struts+hibernate的例子,是eclipse的工程,用tomcat5和mysql,文件夹下包含所有的源码和库,另外还有一个.sql的文件用于建立数据库。大家觉得它有什么不好,欢迎交流
spring +struts + hibernate 例子 spring +struts + hibernate 例子 spring +struts + hibernate 例子
Spring+struts+hibernate经典注册
spring+struts1+hibernate+jbpm实例
Spring + Struts +Hibernate 解说详细,源码简单实用,一看就明白。
一个简单的spring+struts+ibatis整合的实例,实现了用户登录,用户登录成功则显示欢迎信息,失败则显示用户名或密码错误,该实例非常简单基础,特别适合新人学习,工程包含了必要的资源包,部署到服务器中及可运行,...
自己总结了Spring+Struts+ibatis中的各种问题以及讲解各个配置文件和项目架构
使用ibatis+spring+struts2 做的开发例子 帮助大家一起学习ibatis的整合
spring+struts+hibernate框架,内容空
Spring+Struts2+JPA入门小例子
Spring+Struts+MyBatis框架整合
Spring+Struts2+Hibernate三大框架开发校园精品课程网源代码下载
一个已经配置好了的Spring +Struts2项目
Spring+Struts2+Ibatis整合
Spring+Struts2+iBatis简要说明
maven2搭建hibernate+spring+struts2项目
spring+struts2+mybatis jar包