ssh框架简单搭建

这里是个人对SSH框架搭建的一点心得,仅供新手,勿喷

首先,搞清楚分层,

视图层 --》 控制层  --》 业务层 --》 DAO层--》 持久层

搭建的顺序是从后向前,搭建一点测试一点,免得都最后找错误太过于繁琐

先搭建持久层,这里是hibernate框架接管

1、建立javaBean对象(ElecText.jvav)
   属于持久层对象(PO对象)
   属性ID、名称、日期、备注
2、创建映射文件ElecText.hbm.xml
   建立PO对象与数据库表Elec_Text的关联关系
3、创建Hibernate.cfg.xml文件,配置连接数据库的信息

4.写测试文件,是否搭建成功

DAO层:

这里掌管的是和数据库有关的CRUD方法,采用的是面向接口的方法,一个DAO类实现一个接口,通过接口

使用方法

业务层:

①先spring

②引jar包

③编写beans.xml文件,放在src目录下

④测试spring是否能够工作

⑤加入hibernate

⑥因为是SSH,所以hibernate被spring接管了hibernate.cfg.xml文件对象映射文件,sessionfactory在spring文件中配置即可

⑦在beans.xml文件中配置数据源

<!-- 配置数据源 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://127.0.0.1:3306/elec"/>
        <property name="username" value="root"/>
        <property name="password" value="123456"/>
         <!-- 连接池启动时的初始值 -->
        <property name="initialSize" value="30"/>
         <!-- 连接池的最大值 -->
         <property name="maxActive" value="500"/>
         <!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 -->
        <property name="maxIdle" value="2"/>
        <!--  最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 -->
        <property name="minIdle" value="1"/>
</bean>

这里也能够全部交给hibernate.cfg.xml来进行配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:tx="http://www.springframework.org/schema/tx"
        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
                http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
                http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"> 

<!-- 1配置注解的自动扫描范围 -->
<context:component-scan base-package="cn.itcast.elec"></context:component-scan>
<!-- 2配置数据源-->
<!--3 创建sessionfactory工厂-->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
  <value>
  classpath:hibernate.cfg.xml
  </value>
</property>
</bean>
<!--4 事物管理器-->
<bean id="txManage" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory">
</property>
</bean>
<!--5 以注解的 形式管理事物-->
<tx:annotation-driven transaction-manager="txManage" />  

<!-- 配置自己的sessionfactory工厂,模拟模板的机能实现 -->

<bean id="ElecText_impl" class="cn.itcast.elec.impl.ElecText_impl">
    <property name="sessionFactory" ref="sessionFactory"> </property>
</bean> 

</beans> 

⑧配置sessionfactory工厂

<!--3 创建sessionfactory工厂-->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<!-- 设置数据源 -->
<property name="dataSource" ref="dataSource"/>
<property name="mappingResources">
<!-- 接管hibernate的对象映射文件 -->
    <list>
        <value>cn/itcast/elec/domain/ElecText.hbm.xml</value>
    </list>
</property>
<!-- hibernate的文件 -->
<property name="hibernateProperties">
    <value>        <!-- SQL dialect -->
        hibernate.dialect =  org.hibernate.dialect.MySQL5Dialect
        hibernate.connection.autocommit = true
        hibernate.show_sql = true
        hibernate.hbm2ddl.auto = update
    </value>
</property>
</bean> 

⑨编写domain对象和映射文件,然后进行简单的测试
⑩考虑分层  使用事务管理器统一管理事务

<!--4 事物管理器-->
<bean id="txManage" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory">
</property>
</bean>
<!--5 以注解的 形式管理事物-->
<tx:annotation-driven transaction-manager="txManage" />

启动事务注解

@Transactional(readOnly=true)

⑩②在hibernate里面配置二级缓存

⑩③整合struts2

<1>引包

<2>创建struts.xml,放在/WEB-INF目录下

14.在初始化的struts的同时初始化spring容器

<!-- 指定spring的配置文件,默认从web根目录寻找配置文件,我们可以通过spring提供的classpath:前缀指定从类路径下寻找 -->

<context-param>

   <param-name>contextConfigLocation</param-name>

   <param-value>classpath:beans.xml</param-value>

</context-param>

<!-- 对Spring容器进行实例化 -->

<listener>

      <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

通过获取spring容器实例

HttpServletRequest request = ServletActionContext.getRequest(); 

//通过预加载后对spring的容器进行获取

WebApplicationContext app = WebApplicationContextUtils.

getWebApplicationContext(request.getSession().getServletContext());

通过上面的配置直接代替了下面的

ApplicationContext app = new ClassPathXmlApplicationContext("beans.xml");

14.让spring接管struts组件

<1>在struts.xml添加代码

<!-- 配置代理请求处理 DelegatingRequestProcessor ,它的用户是 -->

<controller>

  <set-property property="processorClass" value="org.springframework.web.struts.DelegatingRequestProcessor"/>

</controller> 

<2>在beans.1中配置action

<bean name="elecTextAction" class="cn.itcast.elec.action.Elect_Test_Action" /> 

15.解决中文乱码问题

1.自己配置过虐器

2.使用spring框架提供的处理中文乱码的过虐器

16.spring可以用注解的方式配置属性

<1>在需要注入的属性加入@Resource 启动byname方式进行注入属性值

<2><!-- 启动注解扫描 -->

<context:annotation-config/>

时间: 2024-08-08 01:27:40

ssh框架简单搭建的相关文章

Struts2+Spring+Hibernate(SSH)框架的搭建

首先需要下载struts2 ,spring,hibernate  的资源包; Struts2资源包下载路径:http://www.apache.org/spring资源包下载路径:http://projects.spring.io/spring-framework/hibernate资源包下载路径:http://hibernate.org/orm/downloads/ 在SSH框架的搭建步骤: 第一步:在eclipse中创建一个web项目,并生成web.xml文件; 第二步:往lib目录导入ja

SSH框架的搭建

1 导言 目的 本文档是根据个人的工作经验搭建的轻量级SSH框架,也是实际应用中比较全面的基础框架,用于指导SSH框架初学者学习搭建SSH框架,希望能给各位使用者提供帮助,同时也希望朋友们尽量去帮助其他人. 说明 本文档是个人总结的经验,仅供参考学习,同时欢迎朋友们一起沟通学习,文档中会对使用的jar做详细解说,对配置的过程使用图文说明,因为SSH博大精深,很多知识在搭建过程中没有使用到,只是一个基础框架的搭建,能测试通过就可以,所以对于高要求的开发,需要自己添加jar.增加方法和配置,同时文档

SSH框架的搭建和测试(Spring + Struts2 + Hibernate)

SSH框架实现了视图.控制器.和模型的彻底分离,同时还实现了业务逻辑层与持久层的分离. Spring实现了MVC中的 Controller的功能,Struts实现Web视图的功能,Hibernate则实现数据模型层的功能对数据进行持久化. 搭建流程: 实现对Spring的支持 实现对hibernate的支持 --测试Spring+hibernate 实现对struts的支持 --导包:struts2-spring-plugin-2.3.16.3.jar --在web.xml配置文件里配置监听器,

SSH入门简单搭建例子

第一步,使用struts2. 导入struts所需的包: strust-core-xxx.jar                  xwork-core-xxx.jar              commons-io-xxx.jar commons-fileupload-xxx.jar      commons-lang-xxx.jar         commons-logging-xxx.jar freemarker-xxx.jar                   javassist-x

SSM框架简单搭建

spring+SpringMVC+MyBatis框架(SSM)是比较热门的中小型企业级项目开发的框架,对于新手来说也是比较容易学习入门的.虽说容易,但在框架搭建过程中仍然遇到了许多问题,因此用实例记录下来吧. 实例 第一步--导包 Spring框架包及其依赖包 MyBatis框架包及其依赖包 MyBatis-EhCache架包 C3P0架包 MySQL数据库驱动包 项目架包如下:  项目结构如下:  第二步--整合Dao层(Spring+MyBatis) sqlMapConfig.xml <?x

Python学习(三) Django框架简单搭建

为了快速学习Python进行Web的开发,所以我不准备从Python的基础学起,直接从Django框架入手,边学框架边学Python的基础知识. 下面就开始Django的快速开发之旅吧. 关于Django框架1.8的英文文档在其官网上都有,地址 https://docs.djangoproject.com/en/1.8/intro/ Python的开发手册地址:https://pythonspot.com/getting-started/ https://docs.djangoproject.c

简单搭建的SSH框架实现简单的登陆

由于本人自学的,所以借鉴于以下的博客和错误修改的博客: http://blog.csdn.net/lylyyg/article/details/46932493 http://blog.csdn.net/zongzhankui/article/details/6099552 http://wenku.baidu.com/link?url=lVKV4WNu1VjzoBksNh1fCOjDhlV3R25UBb90R4jgRjRkd5fRMbKClU9mHIHNwVxBR4UjE_rYRBzP1yt1

SSH框架与配置文件的简单搭建

在eclipse中,对ssh框架进行学习以及简单的编写,以下为基本的项目操作与须知歩骤: 1.导包(创建项目后的第一步,将所有相关的资源包导入项目WebContent  / WEB-INF/ lib/ 下),找到可能会采用的资源,比如: Struts-2.3.30.           Spring-4.2.2           Hibernate-5.2.2 (以上为本例所采用的资源) 创建一个新的项目(点击File-->New-->Dynamic Web Project): 1.1.在S

SSH框架的简单搭建登录

一.SSH架构 1.Struts 2 + Spring + Hibernate 2.以Spring作为核心框架,数据持久化使用Hibernate完成,表现层使用Struts 2 3.Spring提供对象管理.面向切面编程等实用功能 4.通过Spring提供的服务简化编码.降低开发难度.提高开发效率 二.需要导入依赖jar SSH整合体验最不好的就是添加jar包,由于三个框架所依赖的jar包非常多,其中有一些jar包可能冲突,我们应该将冲突的jar包,保留高级版本的,删掉低级版本的. 其中stru