idea中Maven环境Spring+Hibernate+Struts2整合(注解版)
来源:互联网 发布:阿里云服务器类型 编辑:程序博客网 时间:2024/05/17 01:26
SSH整合 注解版本
架构:
1.jar包
[java] view plain copy
- <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">
- <parent>
- <artifactId>Y2_SSH</artifactId>
- <groupId>cn.happy</groupId>
- <version>1.0-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>SSHBase_ZJ</artifactId>
- <packaging>war</packaging>
- <name>SSHBase_ZJ Maven Webapp</name>
- <url>http://maven.apache.org</url>
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.3</version>
- <scope>test</scope>
- </dependency>
- <!--jta的jar包-->
- <dependency>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- <version>1.1</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>5.0.6.Final</version>
- </dependency>
- <!--以上是hibernate-->
- <!--spring-->
- <dependency>
- <groupId>com.oracle</groupId>
- <artifactId>ojdbc6</artifactId>
- <version>11.2.0.1.0</version>
- </dependency>
- <!--c3p0-->
- <dependency>
- <groupId>com.mchange</groupId>
- <artifactId>c3p0</artifactId>
- <version>0.9.5.2</version>
- </dependency>
- <!--Spring-ORM-->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-orm</artifactId>
- <version> 4.2.2.RELEASE</version>
- </dependency>
- <!--AOP的相关jar-->
- <dependency>
- <groupId> org.aspectj</groupId >
- <artifactId>aspectjweaver</artifactId >
- <version> 1.8.7</version >
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-context</artifactId>
- <version>4.2.0.RELEASE</version>
- </dependency>
- <!--struts 2-->
- <dependency>
- <groupId>org.apache.struts</groupId>
- <artifactId>struts2-core</artifactId>
- <version>2.3.4.1</version>
- </dependency>
- <dependency>
- <groupId>org.apache.struts.xwork</groupId>
- <artifactId>xwork-core</artifactId>
- <version>2.3.4.1</version>
- </dependency>
- <dependency>
- <groupId>javaee</groupId>
- <artifactId>javaee-api</artifactId>
- <version>5</version>
- </dependency>
- <!--Spring-web-->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-web</artifactId>
- <version>4.1.8.RELEASE</version>
- </dependency>
- <!--Struts整合Spring的jar包-->
- <dependency>
- <groupId>org.apache.struts</groupId>
- <artifactId>struts2-spring-plugin</artifactId>
- <version>2.3.4.1</version>
- </dependency>
- <!--Struts2注解支持jar包-->
- <dependency>
- <groupId>org.apache.struts</groupId>
- <artifactId>struts2-convention-plugin</artifactId>
- <version>2.3.4.1</version>
- </dependency>
- </dependencies>
- <build>
- <resources>
- <resource>
- <directory>src/main/java</directory>
- <includes>
- <include>**/*.xml</include>
- </includes>
- </resource>
- </resources>
- </build>
- </project>
2.实体
[java] view plain copy
- package cn.ssh.beans;
- import org.springframework.transaction.annotation.Transactional;
- import javax.persistence.*;
- /**
- * Created by linlin on 2017/10/13.
- */
- @Entity
- @Table(name="Dept")
- public class Dept {
- @Id
- @GeneratedValue
- private Integer deptno;
- @Column
- private String deptname;
- public Integer getDeptno() {
- return deptno;
- }
- public void setDeptno(Integer deptno) {
- this.deptno = deptno;
- }
- public String getDeptname() {
- return deptname;
- }
- public void setDeptname(String deptname) {
- this.deptname = deptname;
- }
- }
3.Dao
[java] view plain copy
- package cn.ssh.dao;
- import cn.ssh.beans.Dept;
- /**
- * Created by linlin on 2017/10/13.
- */
- public interface IDeptDao {
- public void addDept(Dept dept);
- }
[java] view plain copy
- package cn.ssh.dao;
- import cn.ssh.beans.Dept;
- import org.hibernate.Session;
- import org.hibernate.SessionFactory;
- import org.springframework.stereotype.Repository;
- import javax.annotation.Resource;
- /**
- * Created by linlin on 2017/10/29.
- */
- @Repository("DeptDao")
- public class DeptDaoImpl implements IDeptDao {
- @Resource(name="sessionFactory")
- private SessionFactory sessionFactory;
- public void addDept(Dept dept) {
- Session session = sessionFactory.getCurrentSession();
- session.save(dept);
- }
- public SessionFactory getSessionFactory() {
- return sessionFactory;
- }
- public void setSessionFactory(SessionFactory sessionFactory) {
- this.sessionFactory = sessionFactory;
- }
- }
4.Service
[java] view plain copy
- package cn.ssh.service;
- import cn.ssh.beans.Dept;
- /**
- * Created by linlin on 2017/10/13.
- */
- public interface DeptService {
- public void addDept(Dept dept);
- }
[java] view plain copy
- package cn.ssh.service;
- import cn.ssh.beans.Dept;
- import cn.ssh.dao.IDeptDao;
- import org.springframework.stereotype.Repository;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import javax.annotation.Resource;
- /**
- * Created by linlin on 2017/10/29.
- */
- @Service("DeptService")
- public class DeptServiceImpl implements DeptService {
- @Resource(name="DeptDao")
- private IDeptDao deptDao;
- @Transactional
- public void addDept(Dept dept) {
- deptDao.addDept(dept);
- }
- public IDeptDao getDeptDao() {
- return deptDao;
- }
- public void setDeptDao(IDeptDao deptDao) {
- this.deptDao = deptDao;
- }
- }
5.Action
[java] view plain copy
- package cn.ssh.action;
- import cn.ssh.beans.Dept;
- import cn.ssh.service.DeptService;
- import com.opensymphony.xwork2.ActionSupport;
- import org.apache.struts2.convention.annotation.Action;
- import org.apache.struts2.convention.annotation.Namespace;
- import org.apache.struts2.convention.annotation.ParentPackage;
- import org.apache.struts2.convention.annotation.Result;
- import org.springframework.context.annotation.Scope;
- import org.springframework.stereotype.Controller;
- import javax.annotation.Resource;
- /**
- * Created by linlin on 2017/10/29.
- */
- @Controller("deptAction")
- @Scope("prototype")
- @ParentPackage("struts-default")
- @Namespace("/")
- public class DeptAction extends ActionSupport {
- private Dept dept;
- @Resource(name = "DeptService")
- private DeptService deptService;
- @Action(value = "add", results = {@Result(name = "success", location = "/index.jsp")})
- public String add() {
- System.out.println(dept);
- deptService.addDept(dept);
- return SUCCESS;
- }
- public Dept getDept() {
- return dept;
- }
- public void setDept(Dept dept) {
- this.dept = dept;
- }
- public DeptService getDeptService() {
- return deptService;
- }
- public void setDeptService(DeptService deptService) {
- this.deptService = deptService;
- }
- }
6.applicationcontext.xml
[java] view plain copy
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:context="http://www.springframework.org/schema/context"
- xmlns:tx="http://www.springframework.org/schema/tx"
- 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.xsd
- http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
- http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">
- <context:component-scan base-package="cn.ssh"></context:component-scan>
- <!--1.Datasource-->
- <!--1.配置数据源c3p0-->
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
- <property name="driverClass" value="${jdbc.driverClassName}"/>
- <property name="user" value="${jdbc.username}"/>
- <property name="password" value="${jdbc.password}"/>
- <property name="jdbcUrl" value="${jdbc.url}"/>
- </bean>
- <!--jdbc.properties-->
- <context:property-placeholder location="classpath:jdbc.properties"></context:property-placeholder>
- <!--2.SessionFactory 类:Local-->
- <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
- <property name="dataSource" ref="dataSource"></property>
- <property name="hibernateProperties">
- <props>
- <prop key="hibernate.show_sql">true</prop>
- <prop key="hibernate.format_sql">true</prop>
- <prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop>
- <prop key="hibernate.current_session_context_class">
- org.springframework.orm.hibernate5.SpringSessionContext
- </prop>
- </props>
- <!--扫描小配置文件 所有的hbm文件-->
- </property>
- <property name="packagesToScan" value="cn.ssh.beans"></property>
- </bean>
- <!-- 5.事务管理器-->
- <bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
- <property name="sessionFactory" ref="sessionFactory"></property>
- </bean>
- <!--6.事务-->
- <tx:annotation-driven transaction-manager="transactionManager"></tx:annotation-driven>
- </beans>
7.jdbc.properties
[java] view plain copy
- jdbc.driverClassName=oracle.jdbc.OracleDriver
- jdbc.url=jdbc:oracle:thin:@localhost:1521:orcl
- jdbc.username=sll
- jdbc.password=sll
8.web.xml
[java] view plain copy
- <!DOCTYPE web-app PUBLIC
- "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
- "http://java.sun.com/dtd/web-app_2_3.dtd" >
- <web-app>
- <context-param>
- <param-name>contextConfigLocation</param-name>
- <param-value>classpath:applicationContext.xml</param-value>
- </context-param>
- <filter>
- <filter-name>struts2</filter-name>
- <filter-class>
- org.apache.struts2.dispatcher.ng.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>
- <welcome-file-list>
- <welcome-file>addDept.jsp</welcome-file>
- </welcome-file-list>
- </web-app>
9.页面
[java] view plain copy
- <%--
- Created by IntelliJ IDEA.
- User: linlin
- Date: 2017/10/10
- Time: 19:29
- To change this template use File | Settings | File Templates.
- --%>
- <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" isELIgnored="false" %>
- <%--导入Struts2标签库--%>
- <%@taglib uri="/struts-tags" prefix="s" %>
- <html>
- <head>
- <title>SSH整合</title>
- </head>
- <body>
- <h1>SSH第一次整合</h1>
- <form action="/add" method="post">
- 名字 :<input name="dept.deptname"/><br/>
- <input type="submit" value="提交"/>
- </form>
- </body>
- </html>
阅读全文
0 0
- idea中Maven环境Spring+Hibernate+Struts2整合(注解版)
- idea中Maven环境Spring+Hibernate+Struts2
- 注解版struts2与spring整合(maven管理)
- Spring-Struts2-Hibernate Maven整合
- maven+Spring+Struts2+Hibernate 整合
- eclipse下搭建SSH整合环境(Struts2+Spring+Hibernate+maven)
- eclipse下搭建SSH整合环境(Struts2+Spring+Hibernate+maven)
- eclipse下搭建SSH整合环境(Struts2+Spring+Hibernate+maven)
- Spring Struts2 Hibernate 全注解开发整合
- Struts2+Spring+Hibernate+Maven框架整合
- maven+Spring+Struts2+Hibernate 整合 xml配置
- spring+hibernate加入struts2(注解版)
- spring+hibernate加入struts2(注解版)
- struts2+hibernate+spring整合(annotation版)
- Spring+Struts2+Hibernate整合开发环境搭建
- Spring + Struts2 + Hibernate整合基本环境搭建
- Idea中Maven整合Spring+mybatis+tomcat
- Maven中整合Struts2、Spring3与Hibernate
- 实验报告七:将menu设计为可重用的子系统
- 如何写出无法维护的代码
- 数组(三)--打印数组
- 冒泡排序
- 设置Access-Control-Allow-Origin,解决多域名跨域问题
- idea中Maven环境Spring+Hibernate+Struts2整合(注解版)
- Android程序调用QQ的接口方法
- 购物车程序
- Java多态
- 深入理解java对象的创建过程:类的初始化和实例化
- php时间函数
- 发送post请求下载文件
- solidworks 2016 crack
- 生成元