Maven创建Struts2 + Spring + Hibernate项目
来源:互联网 发布:plc编程软件免费下载 编辑:程序博客网 时间:2024/06/05 02:27
eclipse创建Maven工程
菜单File->New->Project...选择Project...,弹出Project对话框
选择Maven下面的MavenProject。Next,弹出NewMaven Project对话框
勾选Createa simple project(skip archetype selection),勾选Usedefault Workspace location,Next
输入GroupId(这个项目所属的项目组,一般输入的是一个倒着写的域名),ArtifactId(项目的名称)。Name和Description可选,Name是这个项目的别名,一边起一个比较容易交流的名字,Description是项目的文字描述。Finish
这样一个Maven工程就创建出来了。
整合过程
添加MySQL的java驱动
在pom.xml中添加mysql-connector-java依赖
项目快捷菜单选择BuildPath->Configure Build Path...,弹出Propertiesfor Myproject
右侧窗口选择Libraries标签页,点击窗口右侧的Add JARs按钮,找到mysql-connector-java-x.x.x-bin.jar包,OK。
编辑pom.xml文件,添加spring和hibernate依赖。
1. 从刚创建出来的Maven工程的根目录找到pom.xml文件
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>name.henry.knowledgepower</groupId> <artifactId>ebooks</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>ebooks Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.3.3.RELEASE</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>5.2.4.Final</version> </dependency> <dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-core</artifactId> <version>2.5.5</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.7</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j</artifactId> <version>2.7</version> <type>pom</type> </dependency> <dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-spring-plugin</artifactId> <version>2.5.5</version> </dependency> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.2</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.6</version></dependency><dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.7</version></dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>4.3.3.RELEASE</version> </dependency> </dependencies> <build> <finalName>ebooks</finalName> </build></project>
2. web.xml
假设struts.xml和application都是放在WEB-INF目录下。
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>Archetype Created Web Application</display-name> <welcome-file-list> <welcome-file>login.jsp</welcome-file> </welcome-file-list> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</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></web-app>
3. 在WEB-INF目录下创建applicationContext.xml文件,配置Spring和Hibernate的整合信息
<?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:c="http://www.springframework.org/schema/c" xmlns:p="http://www.springframework.org/schema/p" 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-4.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.1.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"><property name="driverClassName"> <value>com.mysql.jdbc.Driver</value> </property> <property name="url"> <value>jdbc:mysql://localhost:3306/ebook</value> </property> <property name="username"><value>root</value></property> <property name="password"><value>3214</value></property></bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"><property name="dataSource" ref="dataSource"></property> <property name="mappingResources"> <list> <value>name/henry/knowledgepower/ebooks/entity/User.hbm.xml</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="dialect">org.hibernate.dialect.MySQLDialect</prop> <prop key="hibernate.show_sql">true</prop> </props> </property></bean><bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager"><property name="sessionFactory" ref="sessionFactory"/></bean> <bean id="userDAO" class="name.henry.knowledgepower.ebooks.dao.impl.UserDAOImpl"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <tx:annotation-driven transaction-manager="transactionManager"/> <bean id="userService" class="name.henry.knowledgepower.ebooks.service.impl.UserServiceImpl"> <property name="userDAO" ref="userDAO"></property> </bean> <bean id="loginAction" class="name.henry.knowledgepower.ebooks.action.LoginAction"><property name="userService" ref="userService"></property> </bean></beans>
4. struts.xml
在WEB-INF目录下创建struts.xml文件,配置Action类信息。
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN" "http://struts.apache.org/dtds/struts-2.5.dtd"><struts><constant name="struts.objectFactory" value="spring" /> <package name="ebooks" extends="struts-default"> <action name="login" class="loginAction"> <result name="success">/success.jsp</result> <result name="failer">/error.jsp</result> </action> </package></struts>
总结Struts2+ Spring + Hibernate整合的步骤
持久化层
创建持久化类——根据表中字段创建POJO类
创建表与持久化类的映射文件(表名.hbm.xml)
DAO层(Spring+Hibernate)
Spring管理SessionFactory.编辑applicationContext.xml添加sessionFactorybean
创建DAO接口文件,定义数据库操作的所有方法。
创建DAO实现类,通过HibernateDaoSurport的支持实现DAO数据库操作的所有方法。
业务逻辑层
创建业务逻辑接口(service类),方法和DAO的方法一致。
使用DAO对象,实现service类接口。
Spring+ Struts
定义分发器(编辑web.xml)
创建Action类
编写jsp界面文件
配置控制器(编辑applicationContext.xml),注入业务逻辑组件
定义处理结果与视图资源的关系(编写struts.xml)
三个配置文件的作用:
web.xml
web.xml是一个网站的入口,所以所有要调用到的其他配置文件都要在这里配置。它配置分发器,监听器,struts.xml的路径(默认/WEB-INF/struts.xml,则不用配置),配置applicationContext.xm(默认/WEB-INF/applicationContext.xml,则不用配置)
struts.xml配置所有和页面交互的Action类,这里的class属性对应的是这个action 在applicationContext.xml中注册的bean 的id,而不是action类的路径。
applicationContext.xml配置所有bean类。
源码下载地址 http://download.csdn.net/detail/gongjijiao/9693264
- Maven创建Struts2 + Spring + Hibernate项目
- 使用Maven管理项目-----创建 Struts2,Spring,Hibernate项目
- mave-用maven创建基础的struts2+spring+hibernate之创建空白struts2项目
- Spring整合Struts2和Hibernate+Maven(一)之Maven项目创建
- Maven搭建Spring+Struts2+Hibernate项目详解
- Maven搭建Spring+Struts2+Hibernate项目详解
- Maven构建Struts2+Hibernate+Spring web项目
- Maven搭建Spring+Struts2+Hibernate项目详解
- Maven搭建Spring+Struts2+Hibernate项目详解
- Maven搭建Spring+Struts2+Hibernate项目详解
- Eclipse+Maven搭建Struts2+Spring+Hibernate项目
- maven+struts2+spring+hibernate
- Struts2+Spring+Hibernate step by step 01 创建Struts2项目
- maven创建struts2项目
- struts2+spring+hibernate+maven搭建简单web项目
- Spring-Struts2-Hibernate Maven整合
- maven+Spring+Struts2+Hibernate 整合
- IntelliJ IDEA上创建Maven Spring+SpringMVC+Hibernate项目
- 学习WEB前端之路曲折前行
- iOS消息推送完整版
- java.lang.RuntimeException: Performing stop of activity that is not resumed OOM了也会造成之前Activity被系统杀掉
- Spring MVC的Controller统一异常处理:HandlerExceptionResolver
- 字节流和字符流
- Maven创建Struts2 + Spring + Hibernate项目
- Jflash源码分析
- AngularJS表单验证
- 002Android build.gradle 基本知识点
- 2维FFT算法实现——基于GPU的基2快速二维傅里叶变换
- CUDA总结:Unified Memory
- Spring@Autowired注解与自动装配
- Linux进程管理工具
- 移动端上传图片弹窗浏览并删除特效