`
Kupid
  • 浏览: 1357 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

SSHSSH整合过程

阅读更多

    如果您是编程高手,这个过程恐怕是家常便饭,就不必浪费时间细读了,因为以下是纯粹的新手向文字。一是用来帮助初次使用SSH的人做参考,二是为了自己再做SSH的时候有模板。

 

环境:MyEclipse7.0+Struts1.2+Hibernate3.2+Spring2.0+JavaEE5.0

 

Part A.

       MyEclipse中新建Web Project,假定项目名为Demo_SSH.

添加能力:

Add Struts Capabilities

Struts config path使用默认的/WEB-INF/struts-config.xmlStruts Specification 选择Struts 1.2 ,然后给资源文件名包名,那么OK,点击finish。这时项目中Struts1.2Libraries被加入。因为是三个框架整合,这样添加Libraries的话会有包的重复导入造成冲突,我们只是给项目添加能力,不需要导包。右击Struts1.2Libraries选择Build Path àRemove form Build Path.

 

Add Hibernate Capabilities

Hibernate specification选择3.2Select the libraries to add to the buildpath Show:有两个Libraries,为了避免包冲突,都不选。点击NEXTHibernate config file:可以选择默认的New,(反正最后也要删除),Open configuration file after wizard completion没有必要了,无所谓的选项,可以去掉然后NEXTSpecify database connection details?这里要提一下,如果很熟练SSH配置文件的写法的话完全可以将这个复选框去掉,如果你不是很熟悉Hibernate的配置文件,并且在MyEclipseDataBase Explorer下将数据库做了配置,那么可以在DB Driver下选出你的配置,这样下列所有项目都会被自动填写。NEXTCreate SessionFactory class?这个复选项不必选了,去掉,然后JAVA Compliance Level5Finish.(假如你刚刚选择了DB Driver,那么可以将hibernate.cfg.xml备份出来,这样诸如数据库方言等信息一会儿在配置Spring的文件时直接复制就可以了.hibernate.cfg.xml不需要,删除掉。

 

Add Spring Capabilities

       Spring version选择2.0Select the libraries to add to the buildpath Show:依旧是两个复选,都不选,NEXT,Enable AOP Builder可以不需要,Specify new or existing Spring bean configuration file?Bean configuration type选择newFolder:src,File:applicationContext.xml,NEXT,然后选中Create Spring SessionFactory that references Bean ID随便给一个就可以,只要以后不会重复就成,例如“sessionFactory,Finished.

    由于没有导入jar包,applicationContext.xml可能会出错误提示,没关系。

 

Part B.

       将无冲突的三个框架jar包导入项目。

       打开web.xml,应该有如下信息:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <init-param>
      <param-name>debug</param-name>
      <param-value>3</param-value>
    </init-param>
    <init-param>
      <param-name>detail</param-name>
      <param-value>3</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

 

   下面我们把Spring的一些使用信息加入:

 

<context-param>
  	<param-name>contextConfigLocation</param-name>
  	<param-value>classpath:applicationContext.xml</param-value>
  </context-param>
<servlet>
<servlet-name>SpringContextServlet</servlet-name>
<servlet-class>
org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
  <filter>
  	<filter-name>OpenSessionInView</filter-name>
  	<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
  	<init-param>
  	<param-name>singleSession</param-name>
  	<param-value>false</param-value>
  	</init-param>
  </filter>
  <filter-mapping>
  <filter-name>OpenSessionInView</filter-name>
  <url-pattern>*.do</url-pattern>
  </filter-mapping>

 

 

(加在</servlet-mapping> <welcome-file-list>之间即可

SpringStruts提供了一个处理器,在struts-config.xml中加入

 

<controller processorClass="org.springframework.web.struts.DelegatingRequestProcessor" />

 

(加在</action-mappings>之后)

这样,容器启动的时候读配置文件时就会创建StrutsSpring的上下文对象了。

 

Part C.

    下面把Hibernate整合进来。

    我们先前删除了Hibernate的配置文件是因为Hibernate的配置是写在Spring的配置文件applicationContext.xml中的。applicationContext.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"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">	<!—如果用了其他的Spring配置文件,可以这样导入
<import resource="spring-login.xml" />-->
	<bean id="propertyConfigurer"
		class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="location">
			<value>classpath:configure.properties</value>
		</property>
	</bean>
	<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
		<property name="dataSource">
			<ref bean="dataSource"/>
		</property>
	</bean>
	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="driverClassName">
			<value>${jdbc.driverClassName}</value>
		</property>
		<property name="url">
			<value>${jdbc.url}</value>
		</property>
		<property name="username">
			<value>${jdbc.username}</value>
		</property>
		<property name="password">
			<value>${jdbc.password}</value>
		</property>
	</bean>
	<bean id="sessionFactory"
		class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
		<property name="dataSource">
			<ref bean="dataSource" />
		</property>
		<property name="mappingResources">
			<list>
<!—此处用<value>节点写Bean的实体配置文件-->
				
				<!—可以好多好多Hibernate实体配置 -->
			</list>
		</property>
		<property name="hibernateProperties">
			<props>
				<prop key="hibernate.dialect">
					${hibernate.dialect}
				</prop>
				<prop key="hibernate.show_sql">true</prop>
				<prop key="hibernate.format_sql">true</prop>
			</props>
		</property>
	</bean>
	<bean id="baseDao" class="edu.bhu.Kupid.persist.BaseDaoImpl" abstract="true">
		<property name="sessionFactory">
			<ref bean="sessionFactory" />
		</property>
		<property name="ht">
			<ref bean="hibernateTemplate" />
		</property>
	</bean>
	
	<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
		<property name="sessionFactory">
			<ref bean="sessionFactory" />
		</property>
	</bean>
</beans>

  

 

 

    配置中有classpath:configure.properties这个东西。是指搜索configure.propertie文件。此文件需要手工创建,其内容就是些Key-Value,主要写些通用配置,如数据库信息等,以连接MySQL数据库为例:

 

jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/graduation
jdbc.username=root
jdbc.password=Kupid
hibernate.dialect=org.hibernate.dialect.MySQLDialect

 

 

    这样applicationContext.xml中就可以用${jdbc.driverClassName}形式进行引用。你的数据库驱动,url等信息如果在添加Hibernate能力时指定了DB Driver并且删除hibernate.cfg.xml前做了备份,上边的信息都能在这个文件里找到。

 

    现在,Hibernate Struts Spring 三个框架整合完毕。

 

 

(PS:最后,感谢Tongtong的技术指导)

分享到:
评论

相关推荐

    sshssh框架整合

    在SSHSSH整合过程中,通常的步骤包括: - **配置环境**:首先需要设置项目的基本结构,导入各框架的库文件,配置相关的jar包,并在web.xml中配置Servlet容器的监听器和过滤器。 - **配置Spring**:创建Spring的配置...

    SSH注解方式整合小例子

    在这个“SSH注解方式整合小例子”中,我们将深入探讨如何使用注解来简化SSH框架的配置过程,使得开发更加便捷。 **Struts2** 是一个基于MVC设计模式的Action驱动的Web应用框架,它通过注解可以实现Action类的声明式...

    SSH整合过程(图)

    SSH整合是Java开发中常见的一个技术实践,它...熟练掌握这一整合过程将有助于提升Java Web开发的效率。在实际项目中,还可能涉及到AOP(面向切面编程)、事务管理、安全控制等多个方面,这些都是SSH整合后的进阶话题。

    SSH整合Jar包

    在整合过程中,Spring通常被用来协调Struts和Hibernate,提供事务管理和数据源配置。虽然提供的配置文件是空的,但了解如何配置Spring的bean定义和AOP规则对于实际项目来说至关重要。 其次,Struts是MVC(模型-视图...

    SSHjar包整合

    SSH整合的过程主要包括以下几个步骤: 1. **集成环境配置**:首先,需要在项目的pom.xml文件中引入Struts2、Spring和Hibernate的依赖库,确保项目可以正常编译。 2. **配置Struts2**:创建struts2.xml配置文件,...

    SSH2完美整合流程

    总的来说,SSH2整合是一个涉及多个层面的过程,包括环境配置、库文件管理、代码编写和配置文件设定。熟练掌握这一过程对于Java开发者来说至关重要,因为它能够帮助构建高效、稳定的企业级应用。

    SSH三框架整合项目(考试必备)

    5. 整合过程中配置文件的理解和编写,如struts.xml、spring.xml、hibernate.cfg.xml等。 6. 事务管理的配置和实现。 7. 实战练习,创建一个简单的SSH整合项目,包括用户登录、注册、数据展示等功能。 了解并熟练...

    SSH全注解整合demo

    整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),演示搭建项目架构原型。 项目架构原型:Struts2.3.16+Spring4.1.1+Hibernate4.3.6。 此外,还有:log4j、slf4j、ehcache等知识点。 参考文档:...

    SSH整合jar包

    SSH整合jar包是一个集合了所有在Java开发中用于Spring、Struts和Hibernate(SSH)集成应用所需的库文件的压缩包。SSH是Java企业级开发中非常流行的一种框架组合,它能够帮助开发者快速构建高效、可维护的企业级Web...

    SSH所有jar包整合

    在开发过程中,日志系统能帮助调试和追踪程序运行状态。 7. **Structs2**: Structs2 是Struts框架的升级版,提供了更多的特性,如类型安全的Action方法、更强大的插件支持等,增强了开发体验和应用性能。 8. **...

    ssh&oracle整合jar包

    当我们谈论SSH与Oracle的整合时,主要是指在Java Web应用中使用SSH框架来操作Oracle数据库。 首先,让我们详细了解SSH框架: 1. **Spring**:Spring框架提供了全面的编程和配置模型,以简化企业级Java应用的开发。...

    SSH框架整合jar包

    下面我们将深入探讨SSH框架的核心概念、整合过程以及jar包的作用。 **Spring框架**: Spring是一个全面的后端应用程序框架,提供依赖注入(DI)和面向切面编程(AOP)功能,用于简化Java应用的开发。它还包含了大量...

    SSH2框架整合

    SSH2框架整合的过程通常包括以下几个步骤: 1. 配置环境:确保安装了JDK,设置好环境变量,选择合适的IDE(如Eclipse或IntelliJ IDEA)。 2. 引入依赖:在项目中添加Spring、Struts2和Hibernate的jar包或依赖管理...

    ssh整合jar包

    SSH整合是Java Web开发中的一种常见模式,它结合了Struts2、Spring和Hibernate三个开源框架,以实现高效、灵活的MVC...然而,理解和熟练掌握每一个框架的核心概念和配置是至关重要的,这样才能确保整合过程的顺利进行。

    Java SSH 框架整合,学习源码

    4. **整合过程**:整合SSH通常包括以下步骤: - 引入框架相关的库文件。 - 配置Spring的ApplicationContext.xml,定义Bean以及它们之间的依赖关系。 - 配置Struts的struts-config.xml或struts2的struts.xml,定义...

    ssh整合ssh整合的所以jar包三大框架

    SSH整合是指将Spring、Struts和Hibernate这三大Java开源框架集成到一个项目中,以实现高效、灵活的Web应用程序开发。这些框架分别负责不同的职责:Spring作为应用的管理容器,Struts处理MVC(模型-视图-控制器)架构...

    SSH2项目整合

    1. **配置整合**:整合过程中,需要配置Spring以管理Struts和Hibernate的实例,并且配置SSH2的连接参数,如服务器地址、端口、用户名和密码。 2. **Spring与Struts集成**:Spring可以通过Struts的插件实现对Struts ...

    ssh整合 ssh整合步骤 三大框架整合

    SSH整合是指将Spring、Struts和Hibernate这三大Java开源框架集成在一起,以构建高效、灵活的企业级Web应用程序。SSH整合的目的是充分利用这三个框架的优势,实现业务逻辑层、表现层和持久层之间的松耦合,提高开发...

    ssh整合的详细过程

    SSH整合是一个复杂但关键的过程,它有助于提高开发效率,降低维护成本,同时提供了一个灵活、可扩展的开发环境。在实际项目中,还需要根据具体需求调整配置,优化性能,确保系统的稳定性和安全性。

Global site tag (gtag.js) - Google Analytics