ssh项目搭建(有相同错误)

原文摘自:ruoya502  http://blog.sina.com.cn/s/blog_6870d1e00100jvwl.html

第一个做SSH集成的开发,很多都还不熟悉,这里就先写下第一个自己完成的SSH框架搭建的过程吧。
第一步:新建一个web project。Myeclipse中加入Spring capability。这个过程会加入Spring的配置文件,并自动加载Myeclipse自带的Spring jar包。如果不想用自带的,可以在build path中删除,再把Spring的jar加入web lib下面(注意:一定要加入web lib,否则容易出现ContextLoaderListener类没发现错误,详见另一篇博文SSH错误之ContextLoaderListener类没找到错误)。
第二步:Myeclipse中加入Hibernate capability,并选择不创建Factory Session,以及配置文件与Spring集成成一个,并选择已经加入的Spring配置文件,配置数据源。由Spring来创建Factory Session。同样,可以不适用自动加载的jar包,而导入自己下载的Hibernatejar包,
然后使用Myeclipse Hibernate reverse Engineering对要转换的数据库表进行反向映射,生成PoJo类,并生成Spring Dao文件。实现Spring对hibernate 的session的管理。
这里生成的Spring配置文件如下:其中增加了数据源,并配置了SessionFactory类。
<?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">

<bean id="dataSource"
        class="org.apache.commons.dbcp.BasicDataSource">
        <property name="driverClassName"
            value="com.mysql.jdbc.Driver">
        </property>
        <property name="url" value="jdbc:mysql://localhost:3306"></property>
        <property name="username" value="root"></property>
        <property name="password" value="412385524"></property>
    </bean>
   
    <bean id="sessionFactory"
        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource">
            <ref bean="dataSource" />
        </property>
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">
                    org.hibernate.dialect.MySQLDialect
                </prop>
            </props>
        </property>
        <property name="mappingResources">
            <list>
                <value>com/ruoya/entity/Student.hbm.xml</value></list>
        </property>
    </bean>
   
    <bean id="userDao" class="com.ruoya.daoImpl.UserDao">
        <property name="sessionFactory">
            <ref bean="sessionFactory" />
        </property>
    </bean>
    </beans>
第三步:加入Structs2,这个只要自己导入structs2包,并创建structs2.xml与struts.properties,放于src下面即可。
第四步:由于使用了多个配置文件,所以在web.xml中增加structs与spring的配置,如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>
            org.apache.struts2.dispatcher.FilterDispatcher
        </filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <listener>
        <listener-class>
            org.springframework.web.context.ContextLoaderListener
        </listener-class>
    </listener>
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/classes/applicationContext.xml
        </param-value>
    </context-param>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>
默认Spring的配置文件要在/WEB-INF下面查找,可是我们放在了src下面,myeclipse会给自动加载的/WEB-INF/classes/下面,所以这里要进行路径配置,否则出现找不到Spring配置文件错误。
第五步:编写structs的action类,以及jsp文件。并编写service类。并把相应的action类使用Spring进行管理,即加入Spring的配置文件applicationContext.xml中。
第六步:部署项目到tomcat中,运行。

整个过程容易出现的错误有:
1、Hibernate,Spring中jar包冲突,asm等jar包冲突,要把一个里面的删除。具体见SSH错误asm包冲突。
2、ContextLoaderListener类找不到:Spring的jar包要放在web lib下面。
3、Spring listener没有配置,要配置Spring listener在web.xml中。
4、找不到Spring配置文件applicationContext.xml,要配置applicationContext.xml文件的位置:/WEB-INF/classes/applicationContext.xml。

时间: 2024-10-14 09:01:53

ssh项目搭建(有相同错误)的相关文章

ssh项目搭建后的简化

SSH项目搭建后的简化 上次说完ssh框架的搭建,这个框架本身没什么问题,但可以通过使用spring注解来使代码更加简洁.提高阅读性. 一.在原来的框架上简化了以下几点: 1. 原来的属性set注入改为注解 2. 原来的Connection(连接数据库)包改为jdbc.properties文件配置 3.由于加入hibernate之后我们不需要创建数据库,但是向数据库里插入数据还是得自己写,以下就是插入语句: insert into news(title,content,begintime,use

maven之ssh项目搭建

1:新建maven-archetupe-webapp项目 2:web.xml配置文件如下 <?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2

SSH项目搭建(五)——web.xml文件配置

上一章写到pom.xml有一个报错,说找不到web.xml文件.确实是这样的,因为我们用maven搭建的web层里就是没有这个文件.我们能看到,webapp文件夹里是空的. 没有,就想办法把它弄出来. 一.右键项目>>>>Java EE Tools>>>>Generate Deployment Descriptor Stub 然后就出来了. 参考:https://www.cnblogs.com/pjlhf/p/8782651.html 二.在webapp目录

SSH项目搭建(三)——Maven多模块搭建项目

多模块开发,大致的思想就是把一个项目按某种方式分成多个模块,再把模块们连接成一个整体,我们在开发的时候,可以很清晰的操作每一个模块,可以大大提高开发的效率. Java web项目,最常见的就是按代码的作用分层开发,这和SSH框架有相互契合的思想: po.vo层--模型层 dao层--数据库访问层(Hibernate)--其代码的作用一定是操作数据库,而Hibernate的作用就是方便我们操作数据库的 service层--业务逻辑层(Spring)--其代码的作用一定是对业务逻辑的处理,而Spri

SSH项目搭建总结

1     struts2 和 spring 集成,action交给spring管理,action由spring初始化,action默认作用域(scope)为单利模式,ioc容器只初始化一个该action,作用域为prototype(原型)模式,每次请求该action,都会初始化一次. 由于调试不成功(修改action的内容,再次访问该action,报错找不到对应的action或者result),tomcat 以debug模式启动,以为struts.devMode=true不起作用,原来是因为a

转载:eclipse 搭建SSH项目(第二篇,有具体的项目例子)

原文地址:http://blog.csdn.net/yeohcooller/article/details/9316923 读博文前应该注意: 本文提纲:本文通过一个用户注册的实例讲解SSH的整合.创建Struts项目,整合Hibernate,整合Spring.最后总结如何熟练创建SSH项目. 仅是创建SSH项目,对于其他的扩展例如Struts的国际化,Hibernate的缓存优化,Spring的AOP等,本博文涉及不到.想学习更多的东西请搜索其他博文. 本项目的环境:Windows 8-64位

SSH项目整合教学Eclipse搭建SSH(Struts2+Spring3+Hibernate3)

这篇博文的目的 尝试搭建一个完整的SSH框架项目. 给以后的自己,也给别人一个参考. 读博文前应该注意: 本文提纲:本文通过一个用户注册的实例讲解SSH的整合.创建Struts项目,整合Hibernate,整合Spring.最后总结如何熟练创建SSH项目. 仅是创建SSH项目,对于其他的扩展例如Struts的国际化,Hibernate的缓存优化,Spring的AOP等,本博文涉及不到.想学习更多的东西请搜索其他博文. 本项目的环境:Windows 8-64位,Eclipse Indigo Ser

eclipse中SSH框架搭建和项目开发基本步骤

1.下载SSH框架代码和eclipse插件,地址:http://yunpan.cn/QTCrdHF4xkEVp (提取码:0e8d) 注意,一定要分清楚,SSH框架是要导入到自己的工程项目中的包,这些包是要在项目中调用的预先开发好的java文件:而eclipse插件是在eclipse环境下开发SSH相关项目是方便用户建立项目管理项目的工具,跟项目本身的文件和功能无关.一定要分清楚这两个概念. 2,下载完成之后,解压,会发现有5个文件夹,第一步要用到的是spring plugins for ecl

SSH框架搭建 详细图文教程

转载请标明原文地址 一.什么是SSH? SSH是JavaEE中三种框架(Struts+Spring+Hibernate)的集成框架,是目前比较流行的一种Java Web开源框架. SSH主要用于Java Web的开发.现在SSH有SSH1和SSH2两种,区别在于Struts的版本是struts1.x还是2.x.本文介绍的是SSH1. 二.Struts Spring Hibernate各起什么作用? Struts:控制逻辑关系. Spring:解耦. Hibernate:操作数据库. 三.学习SS