Struts2框架学习(一)——Struts2的概念及搭建
一、Struts2的概念

使用优势:1)自动封装参数
2)参数校验
3)结果的处理(转发|重定向)
4)国际化
5)显示等待页面
6)防止表单重复提交
Struts2具有更加先进的架构以及思想
Struts2的历史:1>Struts1与Struts1的区别技术上没有关系
2>struts2的前身是webwork框架
二、搭建Struts2框架
首先下载Struts2的开发包,官网:https://struts.apache.org/
1、创建一个web工程并导入jar包

2、创建一个jsp页面
在WebContent下创建hello.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>hello world!</h1>
</body>
</html>
3、书写Action类
 package cn.itheima.a_hello;
 public class HelloAction {
     public String hello(){
         System.out.print("hello world!");
         return "success";
     }
 }
4、书写src下的struts.xml
Action类写好之后,Struts2框架如何识别它就是一个Action呢,需要对Action类进行配置
先导入约束(window--->Preferences--->XML--->XML Catalog--->User Specified Entries窗口,点击Add按钮)

在src下书写配置文件struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="hello" namespace="/hello" extends="struts-default">
<action name="HelloAction" class="cn.itheima.a_hello.HelloAction" method="hello">
<result name="success">/hello.jsp</result>
</action>
</package>
</struts>
5、将struts2核心过滤器配置到web.xml
web层的框架特点就是基于前端控制器的模式,这个前端控制器由过滤器实现,所以需要配置Struts2的核心过滤器,这个过滤器的名称是StrutsPrepareAndExecuteFilter。
在web.xml中进行如下配置:

6、发布到服务器并测试

Struts2框架学习(一)——Struts2的概念及搭建的更多相关文章
- Java之struts2框架学习
		
Java之struts2框架学习 About Struts2 Struts也是一款MVC框架 , Struts2是Struts的下一代产品,是在Struts1和WebWork的技术基础上进行了合并的全 ...
 - Struts2框架学习(三) 数据处理
		
Struts2框架学习(三) 数据处理 Struts2框架框架使用OGNL语言和值栈技术实现数据的流转处理. 值栈就相当于一个容器,用来存放数据,而OGNL是一种快速查询数据的语言. 值栈:Value ...
 - Struts2框架学习(二) Action
		
Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器 ...
 - Struts2框架学习(一)
		
Struts2框架学习(一) 1,Struts2框架介绍 Struts2框架是MVC流程框架,适合分层开发.框架应用实现不依赖于Servlet,使用大量的拦截器来处理用户请求,属于无侵入式的设计. 2 ...
 - 第3章 Struts2框架--1、Struts2环境搭建
		
第3章 Struts2框架--1.Struts2环境搭建 搭建步骤: 1.从下载http://struts.apache.org 没找到Struts2.3.16版,就下载了2.3.29 2.拷贝后解压 ...
 - [ SSH框架 ] Struts2框架学习之四(自定义拦截器)
		
一.Struts2的拦截器 1.1 拦截器概述 拦截器,在AOP( Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作.拦截 ...
 - [ SSH框架 ] Struts2框架学习之一
		
一.Struts2框架的概述 Struts2是一种基于MVC模式的轻量级Web框架,它自问世以来,就受到了广大Web开发者的关注,并广泛应用于各种企业系统的开发中.目前掌握 Struts2框架几乎成为 ...
 - [ SSH框架 ] Struts2框架学习之二
		
一.Struts2访问Servlet的API 前面已经对 Struts2的流程已经执行完成了,但是如果表单中有参数如何进行接收又或者我们需要向页面保存一些数据,又要如何完成呢?我们可以通过学习 Str ...
 - struts2框架学习之第二天
		
day02 下面是在每个Action之前都会执行的拦截器,这段代码来自与struts-default.xml文件. <interceptor-stack name="defaultSt ...
 
随机推荐
- Markdown 常用语法总结
			
注意:Markdown使用#.+.*等符号来标记,符号后面必须跟上至少跟上 1个空格才有效! Markdown的常用语法 标题 Markdown标题支持两种形式. 1.用#标记 在标题开头加上1~6个 ...
 - Google Shell Style Guide
			
转自:http://google.github.io/styleguide/shell.xml Shell Style Guide Revision 1.26 Paul Armstrong Too m ...
 - C#第十三节课
			
冒泡排序 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System. ...
 - 常用rides命令
			
rides使用步骤 1.源代码构建安装 1.下载,Linux下命令wget http://redis.io/download下载redis的包 2.解归档Linux下命令tar -xvf redis- ...
 - Python之Django的Model2
			
一.创建数据库 创建数据库 进入数据库: mysql -uroot -p 创建数据库: CREATE DATABASE test1 CHARSET=utf8; 连接数据库 虚拟环境中安装数据库模块:p ...
 - 2013 - lost connection to mysql server at 'reading initial communication packet' 连接mysql报错
			
早上刚到公司,启动项目发现连接池初始化报错,于是我打开本地mysql管理工具,测试是否可以连接.报错2013代码: 现已解决. 重启服务器mysql服务就好. 因为我连接的是本地windows系统,所 ...
 - POJ - 3126 - Prime
			
先上题目 Prime Path Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9259 Accepted: 5274 D ...
 - HDOJ  题目5097 Page Rank(矩阵运算,模拟)
			
Page Rank Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 100000/100000 K (Java/Others) Tota ...
 - 【cl】找不到火狐Cannot find firefox binary in PATH
			
org.openqa.selenium.WebDriverException: Cannot find firefox binary in PATH. Make sure firefox is ins ...
 - JavaScript 和Ajax跨域问题
			
json格式: { "message":"获取成功", "state":"1", "result": ...