必知的技术知识:HHS整合(Struts2+Spring+Hibernate)

简介: 必知的技术知识:HHS整合(Struts2+Spring+Hibernate)

一、搭建Struts2


  具体步骤可以参考Struts2官网 如何创建Struts 2 Web应用程序:


  1、在maven的pom.xml添加struts2-core的依赖节点


  [/span>dependency

"color: rgba(0, 0, 255, 1)"]

   [/span>groupId

   [/span>artifactId

   [/span>version

  

  2、添加日志记录


  log4j2.xml在src/main/resources包含以下内容的文件夹中设置配置


<?xml version="1.0" encoding="UTF-8"?>


[/span>Configuration

[/span>Appenders

[/span>Console name="STDOUT" target="SYSTEM_OUT"

[/span>PatternLayout pattern="%d %-5p 【%t】 %C{2} (%F:%L) - %m%n"/>




[/span>Loggers

[/span>Logger name="com.opensymphony.xwork2" level="debug"/>


[/span>Logger name="org.apache.struts2" level="debug"/>


[/span>Root level="warn"

[/span>AppenderRef ref="STDOUT"/>





  3、添加log4j依赖节点


[/span>dependency

[/span>groupId

[/span>artifactId

[/span>version


[/span>dependency

[/span>groupId

[/span>artifactId

[/span>version


  4、添加Struts2 servlet过滤器


    在web.xml中添加过滤器


<?xml version="1.0" encoding="UTF-8"?>


[/span>web-app id="WebApp_ID" version="2.4"


xmlns=""


xmlns:xsi=""


xsi:schemaLocation=" "

[/span>display-name

[/span>welcome-file-list

[/span>welcome-file


[/span>filter

[/span>filter-name

[/span>filter-class


[/span>filter-mapping

[/span>filter-name

[/span>url-pattern



  5、创建struts.xml核心配置文件,放在src/main/resources文件夹中


    在struts.xml文件中我们开启动态方法调用


<?xml version="1.0" encoding="UTF-8"?>


<!DOCTYPE struts PUBLIC


"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"


""

[/span>struts

[/span>constant name="struts.devMode" value="true" />


[/span>constant name="struts.enable.DynamicMethodInvocation" value="true"/>


[/span>package name="basicstruts2" extends="struts-default" strict-method-invocation="false"

[/span>action name="index"

[/span>result




  这样我们的struts2就搭建好了


  6、Struts2的hello world 编写测试类


    struts.xml中配置action


<?xml version="1.0" encoding="UTF-8"?>


<!DOCTYPE struts PUBLIC


"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"


""

[/span>struts

[/span>constant name="struts.devMode" value="true" />


[/span>constant name="struts.enable.DynamicMethodInvocation" value="true"/>


[/span>package name="basicstruts2" extends="struts-default" strict-method-invocation="false"

[/span>action name="index"

[/span>result


[/span>action name="test" class="com.blb.action.TestAction"

[/span>result name="success"




    编写测试类继承ActionSupport


package com.blb.action;


import com.opensymphony.xwork2.ActionSupport;


public class TestAction extends ActionSupport {


public String hello(){


return SUCCESS;


}


}


  运行项目,访问地址: localhost:8080/项目名/test!hello


  这样Struts2的环境就搭建完成了


二、搭建Spring


  1、在项目中添加spring-context依赖节点


[/span>dependency

[/span>groupId

[/span>artifactId

[/span>version


  因为是web项目,我们还需要导入spring-webmvc依赖


[/span>dependency

[/span>groupId

[/span>artifactId

[/span>version


  2、创建applicationContext.xml核心配置文件,放在src/main/resources文件夹中


<?xml version="1.0" encoding="UTF-8"?>


[/span>beans xmlns=""


xmlns:xsi=""


xsi:schemaLocation="


"


  3、在web.xml文件中添加spring监听,使spring在程序运行时启动


[/span>context-param

[/span>param-name

[/span>param-value


[/span>listener

[/span>listener-class


  这样我们的spring就搭建完成了


三、整合Struts2+Spring


  1、在项目中添加struts2-spring-plugin依赖节点


[/span>dependency

[/span>groupId

style="color: rgba(0, 0, 255, 1)"]org.apache.struts

[/span>artifactId

[/span>version


  由于struts2-spring-plugin依赖包含spring-context,spring-web,struts2-core依赖,所以我们需要把这三个依赖移除


  2、在applicationContext.xml文件中注入我们的TestAction类


<?xml version="1.0" encoding="UTF-8"?>


[/span>beans xmlns=""


xmlns:xsi=""


xsi:schemaLocation="


"

[/

相关文章
|
7月前
|
SQL Java 数据库连接
Spring Data JPA 技术深度解析与应用指南
本文档全面介绍 Spring Data JPA 的核心概念、技术原理和实际应用。作为 Spring 生态系统中数据访问层的关键组件,Spring Data JPA 极大简化了 Java 持久层开发。本文将深入探讨其架构设计、核心接口、查询派生机制、事务管理以及与 Spring 框架的集成方式,并通过实际示例展示如何高效地使用这一技术。本文档约1500字,适合有一定 Spring 和 JPA 基础的开发者阅读。
703 0
|
8月前
|
前端开发 Java API
利用 Spring WebFlux 技术打造高效非阻塞 API 的完整开发方案与实践技巧
本文介绍了如何使用Spring WebFlux构建高效、可扩展的非阻塞API,涵盖响应式编程核心概念、技术方案设计及具体实现示例,适用于高并发场景下的API开发。
610 0
|
7月前
|
监控 安全 Java
Spring Cloud 微服务治理技术详解与实践指南
本文档全面介绍 Spring Cloud 微服务治理框架的核心组件、架构设计和实践应用。作为 Spring 生态系统中构建分布式系统的标准工具箱,Spring Cloud 提供了一套完整的微服务解决方案,涵盖服务发现、配置管理、负载均衡、熔断器等关键功能。本文将深入探讨其核心组件的工作原理、集成方式以及在实际项目中的最佳实践,帮助开发者构建高可用、可扩展的分布式系统。
425 1
|
7月前
|
监控 Kubernetes Cloud Native
Spring Batch 批处理框架技术详解与实践指南
本文档全面介绍 Spring Batch 批处理框架的核心架构、关键组件和实际应用场景。作为 Spring 生态系统中专门处理大规模数据批处理的框架,Spring Batch 为企业级批处理作业提供了可靠的解决方案。本文将深入探讨其作业流程、组件模型、错误处理机制、性能优化策略以及与现代云原生环境的集成方式,帮助开发者构建高效、稳定的批处理系统。
732 1
|
7月前
|
Java 数据库连接 开发者
Spring Framework 核心技术详解
本文档旨在深入解析 Java Spring Framework 的核心技术原理与应用。与侧重于快速开发的 Spring Boot 不同,本文将聚焦于 Spring 框架本身的设计理念、核心容器、控制反转(IoC)、面向切面编程(AOP)、数据访问与事务管理等基础且强大的模块。通过理解这些核心概念,开发者能够更深刻地领悟 Spring 生态系统的设计哲学,并具备解决复杂企业级应用开发问题的能力。
478 4
|
8月前
|
Java 应用服务中间件 开发者
Spring Boot 技术详解与应用实践
本文档旨在全面介绍 Spring Boot 这一广泛应用于现代企业级应用开发的框架。内容将涵盖 Spring Boot 的核心概念、核心特性、项目自动生成与结构解析、基础功能实现(如 RESTful API、数据访问)、配置管理以及最终的构建与部署。通过本文档,读者将能够理解 Spring Boot 如何简化 Spring 应用的初始搭建和开发过程,并掌握其基本使用方法。
584 2
|
7月前
|
监控 Java API
Spring WebFlux 响应式编程技术详解与实践指南
本文档全面介绍 Spring WebFlux 响应式编程框架的核心概念、架构设计和实际应用。作为 Spring 5 引入的革命性特性,WebFlux 提供了完全的响应式、非阻塞的 Web 开发栈,能够显著提升系统的并发处理能力和资源利用率。本文将深入探讨 Reactor 编程模型、响应式流规范、WebFlux 核心组件以及在实际项目中的最佳实践,帮助开发者构建高性能的响应式应用系统。
1167 0
|
7月前
|
监控 Cloud Native Java
Spring Integration 企业集成模式技术详解与实践指南
本文档全面介绍 Spring Integration 框架的核心概念、架构设计和实际应用。作为 Spring 生态系统中的企业集成解决方案,Spring Integration 基于著名的 Enterprise Integration Patterns(EIP)提供了轻量级的消息驱动架构。本文将深入探讨其消息通道、端点、过滤器、转换器等核心组件,以及如何构建可靠的企业集成解决方案。
694 0
|
7月前
|
Kubernetes Java 微服务
Spring Cloud 微服务架构技术解析与实践指南
本文档全面介绍 Spring Cloud 微服务架构的核心组件、设计理念和实现方案。作为构建分布式系统的综合工具箱,Spring Cloud 为微服务架构提供了服务发现、配置管理、负载均衡、熔断器等关键功能的标准化实现。本文将深入探讨其核心组件的工作原理、集成方式以及在实际项目中的最佳实践,帮助开发者构建高可用、可扩展的分布式系统。
628 0
|
7月前
|
安全 Java 数据安全/隐私保护
Spring Security 核心技术解析与实践指南
本文档深入探讨 Spring Security 框架的核心架构、关键组件和实际应用。作为 Spring 生态系统中负责安全认证与授权的关键组件,Spring Security 为 Java 应用程序提供了全面的安全服务。本文将系统介绍其认证机制、授权模型、过滤器链原理、OAuth2 集成以及最佳实践,帮助开发者构建安全可靠的企业级应用。
376 0