- 浏览: 5380 次
- 性别:
- 来自: 哈尔滨
最新评论
此篇博文仅代表个人观点,由于本人经验尚浅,如有错漏之处请私信指正,谢谢
先期准备工作:
1:下载spring-framework-3.x.x.zip,以及hibernate-4.2.x.zip,并下载spring相关依赖包。
2:创建web工程,将相关的jar导入到lib下
3:创建源文件夹resource,将相关配置文件放到该文件夹下,以便统一管理
4:打开web.xml文件,编辑
5:将spring提供的配置文件applicationContext.xml改名为spring.xml提供本人的配置
6:更改spring-servlet.xml文件名改为spring-mvc.xml,提供本人项目中的仅供参考
进行如上操作后,即可进行springmvc+hibernate的开发了,开发示例请参考我的下一篇文章
先期准备工作:
1:下载spring-framework-3.x.x.zip,以及hibernate-4.2.x.zip,并下载spring相关依赖包。
2:创建web工程,将相关的jar导入到lib下
3:创建源文件夹resource,将相关配置文件放到该文件夹下,以便统一管理
4:打开web.xml文件,编辑
<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" 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_3_0.xsd"> <display-name>Demo</display-name> <!-- log4j 配置 开始 --> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>/WEB-INF/classes/log4j.properties</param-value> </context-param> <context-param> <param-name>log4jRefreshInterval</param-name> <param-value>600000</param-value> </context-param> <listener> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener> <!-- log4j 配置 结束 --> <!-- 设置servlet编码开始 --> <filter> <filter-name>Set Character Encoding</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>Set Character Encoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- 设置servlet编码结束 --> <!-- Spring配置文件开始 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath:spring.xml </param-value> </context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <!-- Spring配置文件结束 --> <servlet> <servlet-name>SpringMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>SpringMVC</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <!-- 配置静态资源不经过spring --> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.js</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.json</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.gif</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.png</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.jpg</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.ico</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.doc</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.xls</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.docx</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.xlsx</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.txt</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.swf</url-pattern> </servlet-mapping> <!-- 配置session超时时间,单位分钟 --> <session-config> <session-timeout>15</session-timeout> </session-config> <!-- 找不到页错误转向 --> <error-page> <error-code>404</error-code> <location>/error/404.jsp</location> </error-page> <!-- 系统内部错误转向 --> <error-page> <error-code>500</error-code> <location>/error/500.jsp</location> </error-page> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
5:将spring提供的配置文件applicationContext.xml改名为spring.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:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd "> <!-- 扫描注解Bean --> <!-- 自动扫描dao和service包(自动注入) --> <context:component-scan base-package="cn.cy.dao,cn.cy.service" /> <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:resources.properties</value> </list> </property> </bean> <!-- 国际化的消息资源文件 --> <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource"> <property name="basenames"> <list> <!-- 在web环境中一定要定位到classpath 否则默认到当前web应用下找 --> <value>classpath:messages</value> </list> </property> <property name="defaultEncoding" value="UTF-8"/> <property name="cacheSeconds" value="60"/> </bean> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:orcl" /> <property name="username" value="demo" /> <property name="password" value="demo" /> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean" > <property name="dataSource" ref="dataSource"/> <property name="packagesToScan"> <list> <value>cn.cy</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.format_sql">true</prop> <prop key="hibernate.hbm2ddl.auto">update</prop> <prop key="javax.persistence.validation.mode">none</prop> <prop key="hibernate.current_session_context_class">org.springframework.orm.hibernate4.SpringSessionContext</prop> </props> </property> </bean> <!-- 开启AOP监听 只对当前配置文件有效 --> <aop:aspectj-autoproxy expose-proxy="true"/> <!-- 开启注解事务 只对当前配置文件有效 --> <tx:annotation-driven transaction-manager="txManager"/> <bean id="txManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"/> </bean> <tx:advice id="txAdvice" transaction-manager="txManager"> <tx:attributes> <tx:method name="add*" propagation="REQUIRED" /> <tx:method name="append*" propagation="REQUIRED" /> <tx:method name="save*" propagation="REQUIRED" /> <tx:method name="update*" propagation="REQUIRED" /> <tx:method name="modify*" propagation="REQUIRED" /> <tx:method name="edit*" propagation="REQUIRED" /> <tx:method name="delete*" propagation="REQUIRED" /> <tx:method name="remove*" propagation="REQUIRED" /> <tx:method name="init" propagation="REQUIRED" /> <tx:method name="delAndInit" propagation="REQUIRED" /> <tx:method name="get*" propagation="REQUIRED" read-only="true" /> <tx:method name="find*" propagation="REQUIRED" read-only="true" /> <tx:method name="load*" propagation="REQUIRED" read-only="true" /> <tx:method name="search*" propagation="REQUIRED" read-only="true" /> <tx:method name="datagrid*" propagation="REQUIRED" read-only="true" /> <tx:method name="*" propagation="REQUIRED" /> </tx:attributes> </tx:advice> <aop:config expose-proxy="true"> <!-- 只对业务逻辑层实施事务 --> <aop:pointcut id="txPointcut" expression="execution(* cn.cy.service.*.*(..))" /> <aop:advisor advice-ref="txAdvice" pointcut-ref="txPointcut"/> </aop:config> </beans>
6:更改spring-servlet.xml文件名改为spring-mvc.xml,提供本人项目中的仅供参考
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xmlns:util="http://www.springframework.org/schema/util" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation=" http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd" > <!-- <mvc:annotation-driven/> --> <!-- 标明用annotation注解方式来进行开发,注册json转换的bean,将@RequestBody输出的JSON格式响应格式更改为text/html,防止IE弹出下载 --> <mvc:annotation-driven ignoreDefaultModelOnRedirect="true" conversion-service="conversion-service" validator="validator"> <mvc:message-converters register-defaults="false"> <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"> <property name="supportedMediaTypes" value="text/html;charset=UTF-8" /> </bean> <bean class="org.springframework.http.converter.ByteArrayHttpMessageConverter" /> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes" value="text/plain;charset=UTF-8" /> </bean> </mvc:message-converters> </mvc:annotation-driven> <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"> <property name="providerClass" value="org.hibernate.validator.HibernateValidator"/> <!-- 如果不加默认到 使用classpath下的 ValidationMessages.properties --> <property name="validationMessageSource" ref="messageSource"/> </bean> <bean id="conversion-service" class="org.springframework.format.support.FormattingConversionServiceFactoryBean" /> <!-- 开启controller注解支持 --> <!-- 注:如果base-package=cn.cy 则注解事务不起作用 TODO 读源码 --> <context:component-scan base-package="cn.cy.controller"> <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/> </context:component-scan> <mvc:view-controller path="/" view-name="forward:/index"/> <!-- 对模型视图名称的解析,即在模型视图名称添加前后缀 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/" p:suffix=".jsp" /> <!-- 文件上传相关 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!--one of the properties available;the maximum file size in bytes--> <property name="maxUploadSize" value="100000"/> </bean> <!-- 控制器异常处理 --> <bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"> <property name="exceptionMappings"> <props> <prop key="java.lang.Exception"> error_all </prop> </props> </property> </bean> </beans>
进行如上操作后,即可进行springmvc+hibernate的开发了,开发示例请参考我的下一篇文章
相关推荐
【Mybatis-generator 生成Mybatis配置文件】 Mybatis Generator 是一款强大的工具,它能够自动根据数据库表结构生成MyBatis的映射文件、实体类以及Mapper接口,极大地提高了开发效率。在项目开发过程中,手动编写...
在IT行业中,项目配置文件是任何应用程序的基础,它们定义了应用如何运行、连接到外部服务以及处理各种系统级别的设置。"淘淘商城04-项目配置文件"是一个针对淘淘商城项目的配置集合,包含了诸如Spring框架、Maven的...
在 Java 项目中,数据库连接的配置是一个非常重要的步骤,为了方便用户配置数据库,使用 XML 配置文件可以灵活地修改数据连接。本文将详细介绍如何使用 XML 配置文件来连接数据库。 XML 配置文件 XML 配置文件是...
其次,`android.ipr`文件是Android Studio的项目配置文件,它包含了整个项目的配置信息,如项目结构、版本控制设置、外部库引用等。通过这个文件,Android Studio可以了解项目的整体布局,包括源码目录、测试目录、...
- **文件编号调整**:从CNAS-CL11:2015更改为CNAS-CL01-A003。 - **章节编排与内容修订**:依据最新的CNAS-CL01:2018标准进行结构调整和编辑性修订,以确保与最新标准的一致性。 - **新增附录B**:基于...
这可以通过修改"C/C++"扩展的配置文件`.vscode/c_cpp_properties.json`来实现。在此文件中,指定`"compilerPath"`为你系统中的C++编译器路径,例如`"/usr/bin/g++"`(Linux)或`"C:\\MinGW\\bin\\g++.exe"`(Windows...
“Nexus-3.33.1-01”是主程序目录,包含Nexus的可执行文件和其他配置文件。而“sonatype-work”目录则是Nexus运行时的工作目录,包括日志、存储库内容以及配置备份等数据。 在Linux服务器上安装Nexus 3.33.1-01的...
修订内容主要包括章节编号的更新以及部分条款的修改,以确保与最新准则的一致性和协调性。 #### 三、范围 本文件适用于CNAS对纺织检测领域实验室的认可活动。特别指出的是,涉及微生物检测的项目还需满足...
**JDBC通过配置文件连接数据库** ...通过这种方式,我们可以方便地在不修改代码的情况下更改数据库连接信息,提高了项目的可维护性。同时,对于大型项目,配置文件也使得数据库连接的管理变得更加有序和规范。
在Java开发中,将连接字符串存放在配置文件中是一种常见的最佳实践,这有助于提升代码的可维护性和灵活性。连接字符串通常用于数据库连接、API调用或者其他需要网络通信的服务。本篇将详细介绍如何在Java中实现这一...
【文件5-项目运行机制汇报提纲.doc】的文档主要阐述了工程项目管理中一套完整的运行机制,旨在提升项目管理能力和效率。这套机制包含了20项关键制度,涵盖了人员配置、决策沟通、设计优化、图纸审核、施工方案管理、...
该控制程序适用于所有的软件开发项目,无论大小,旨在指导项目经理、配置管理人员、开发人员以及质量保证(SQA)团队进行有效的配置管理工作。 3. **职责** - **项目经理**:负责整个项目的配置管理,确保团队遵循...
本篇文章将详细探讨Source Insight中的两种主要配置文件,以及它们的作用和配置方法。 首先,我们来了解第一种配置文件——`.ci`文件。`.ci`文件是Source Insight的项目配置文件,它包含了项目的所有设置,如源代码...
配置管理环境建立是软件配置管理计划的重要组成部分,包括建立配置管理库、开发库、受控库和产品库等。配置管理库是用来存储所有基线配置项及相关文件的等内容的系统,是在软件产品的整个生存期中建立和维护软件产品...
修改`ffconf.h`配置文件,启用SPI驱动,禁用其他不必要的驱动。 - 实现SPI驱动:编写SPI-FLASH的驱动程序,包括初始化、读写操作等函数。这些函数需要符合FATFS规定的接口,如`read sectors`、`write sectors`、`...
- 在新项目的配置阶段,需要设置项目名、组织标识符、产品名称以及选择目标设备(iPhone或iPad)。此外,选择Swift或Objective-C作为主要编程语言,根据个人喜好和项目需求。 3. **项目目录结构**: - 一个标准的...
XML(Extensible Markup Language)是一种用于标记数据的语言,它被广泛应用于配置文件中,因为它的结构清晰、可读性强,适合存储和传输结构化的信息。在本场景中,我们将探讨如何使用XML配置文件来连接Oracle数据库...
2. 修改 "sonatype-work" 目录下的配置文件,如 `conf/nexus.properties`,设置服务器地址、端口等。 3. 配置系统环境变量,如 `JAVA_HOME`,确保指向有效的 Java 运行环境。 4. 启动 Nexus 服务,可以使用提供的...
例如,可以采用“部门代码-项目代码-子系统代码”的格式,如“IT-01-CRM”。 ### 结语 通过对配置管理的详细介绍,我们可以看到,良好的配置管理不仅能够提高项目的效率,还能够降低出错率,确保项目的顺利进行。...