首页 > 其他 > 详细

Struts2学习笔记

时间:2020-03-16 22:19:33      阅读:72      评论:0      收藏:0      [点我收藏+]

Struts2学习

第一章 认识Struts2

第一节:Struts2简介

官网:http://struts.apache.org/

Struts2 是目前较为普及和成熟的基于MVC设计模式的web应用程序框架。

优点:

  • POJO表单及POJO操作 - Struts2 去除掉了Struts框架中的Action Forms部分。在Struts2框架下,你可以用任何一POJO来接收表单输入,同样的,你可以把任一POJO视为一个Action类。
  • 标签支持 - Struts2 改进了标签表单,而新的标签可让开发人员减少代码编写量。
  • AJAX支持 - Struts2 被认可接收进Web 2.0技术,并创建了功能非常类似于标准的Struts2 标签的AJAX标签,把AJAX支持整合进其结果中。
  • 易于整合 - Struts有多种整合方式可使用,现在与其他类型的框架,如Spring、Tiles、SiteMesh之类的,整合更为容易了。
  • 模板支持 - 支持使用模板生成视图。
  • 插件支持 - 有大量的插件可用于Struts2,而使用插件可以增强和扩大Struts2 核心行为。
  • 性能分析 - Struts2 为调试和配置应用程序提供综合的性能分析,此外,Struts也以嵌入调试工具的形式提供集成调试。
  • 易于修改标签 - 在Struts2 中,可使用Freemarker的模板对标签标记进行调整,而修改标签不需要JSP或是Java知识,基本的HTML、XML和CSS知识就足够了。
  • 促进减少配置 - Struts2 使用各种设置的默认值促进减少配置,而你不需要再配置什么除非是偏离了Struts2 设定的默认设置。
  • 视图技术 - Struts2 为多种视图选项(JSP、Freemarker、Velocity、XSLT等)提供支持。

以上是使Struts2 成为准企业框架的十大优点。

缺点:

  • 更大的学习曲线 - 使用Struts MVC,你必须要熟悉JSP、Servlet APIs标准以及一个大型、复杂的框架。
  • 文档缺乏 - 相比于Servlet和JSP APIs标准,Struts的在线资源较少,许多初学者会发现Apache在线文档混乱并缺乏整理。
  • 不够透明 - 相比于使用正常的基于Java的Web应用程序,使用Struts的应用程序有许多是进行在后台,这使得框架不易于理解。

最后说明一点,一个好的框架应该提供各种类型的应用程序都可以使用的通用行为,Struts2 是最好的Web框架之一,并频繁用于RIA(Rich Internet Applications)的发展。

第二节:Struts2 HelloWorld

创建Web项目HeadFirstStruts2Chap01

添加依赖jar包

配置web.xml

<?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_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>HeadFirstStruts2Chap01</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  <!-- 拦截用户的请求交给Struts2处理 -->
  
  <filter>
    <filter-name>Struts2</filter-name>
    <filter-class> <!-- Struts2核心处理器 负责分发请求 -->
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
    </filter-class>
  </filter>
  
  <filter-mapping>
    <filter-name>Struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

创建HelloWorldAction.java:

package com.ordinov.action;

import com.opensymphony.xwork2.Action;

public class HelloWorldAction implements Action {

    @Override
    public String execute() throws Exception {
        System.out.println("执行了Action的默认方法");
        return SUCCESS;
    }
    
}

配置struts.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
    
   <package name="helloWorld" extends="struts-default" >
     <action name="hello" class="com.ordinov.action.HelloWorldAction">
        <result name="success">helloWorld.jsp</result>
     </action>
   </package>

</struts>

创建helloWorld.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
Struts2 大爷你好!
</body>
</html>

项目结构如下:

技术分享图片

启动Tomcat-->

访问http://localhost:8080/HeadFirstStruts2Chap01/hello -->

技术分享图片

第三节:Struts2原理介绍

第二章 Struts2核心知识

第三章 Struts2拦截器

第四章 值栈与OGNL

第五章 Struts2标签

第六章 Struts2国际化

第七章 Struts2验证框架

第八章 Struts2文件上传和下载

第九章 Struts2防重复提交

Struts2学习笔记

原文:https://www.cnblogs.com/guoyx/p/12507009.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!