struts框架的概述:

  当2001年初,Struts的第一个版本在apache网站上发布,它提供了一种分离视图和业务应用逻辑的web应用方案。

  在Struts诞生之前,开发人员都是在jsp里写入处理业务逻辑的Java代码,尤其是涉及到数据库和页面Form表单数据之间交互的时候,开发人员在每个页面都要写入像链接数据库这样的Java代码,导致了大量的代码冗余,而且每个页面显示速度和性能都不是很好,这是因为页面中的存储数据的Java对象都需要从内存中读取,势必影响性能。所有当像Struts这种web应用方案一出现,每个开发人员都把它视为把自己从繁重的开发工作中解放出来的利器,大量的为企业做web应用系统的IT公司在项目架构中都采取struts作为开发中必须使用的框架 

一、在eclipse(开发工具)里创建web项目(项目名称:ssh_001),并生成web.xml文件

二、导入struts的lib包(struts2-showcase项目中的lib包)

  官方网站下载地址:http://struts.apache.org/download.cgi#struts252

  找到这个目录下的:struts2-showcase.war包,将war包导入到eclipse中就可以查看项目的内容了

  

  

 查看struts2-showcase下的lib里jar包,将其拷贝出来。

 把spring开头的删除
 把struts2-spring-plugin-2.5.2.jar删除
 把tiles开头的删除 

 注:此版本为struts2.5(jar包是自己struts2-showcase项目中的lib包拷贝的,可能还有一些是没有使用到的,但没关系,不影响运行!)

三、在配置文件web.xml配置一个struts2的过滤器

 <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<display-name>ssh_001</display-name>
<welcome-file-list>
<welcome-file>index.action</welcome-file>
</welcome-file-list>
<!-- 配置struts2过滤器 -->
<filter>
<filter-name>struts-prepare</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareFilter</filter-class>
</filter> <filter>
<filter-name>struts-execute</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsExecuteFilter</filter-class>
</filter> <filter-mapping>
<filter-name>struts-prepare</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> <filter-mapping>
<filter-name>struts-execute</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>

注:由于strus2.5版本比较新,在使用的过程中可能会出现许多的报错。

四、创建IndexAction类。

1.extends(继承) ActionSupport
2.返回的字符串用于结合配置文件进行跳转

 package ssh_001;

 import com.opensymphony.xwork2.ActionSupport;

 public class IndexAction extends ActionSupport {

     //1.每一个对外的方法,都是返回String类型
//2.返回的字符串,要跟配置文件一一对应,用于跳转
public String execute(){
System.out.println("我是action,被struts调用");
return "success";
} }

五、新建一个struts.xml配置文件。

<?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">
<!-- 上面的头,注意版本,从样例里复制过来
showcase.war\WEB-INF\src\java\struts.xml
--> <struts>
<!-- 第1步:先定义一个包 -->
<package name="mypck" extends="struts-default">
<!-- 第2步:定义一个action,配置跳转信息
name 类似于Servlet @WebServlet("/IndexServlet")
class 对应于自己写的Action类
当不写method属性时,默认调用的是execute
http://xxxx/xxx/Index.action
-->
<action name="Index" class="ssh_001.IndexAction">
<!-- 配置不同字符串,跳转到不同的页面
当Action中的execute方法,返回字符串success,就跳转到index.jsp
-->
<result name="success">index.jsp</result>
</action>
</package>
</struts>

六、创建index.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>
第一个struts2框架搭建成功!
</body>
</html>

七、运行结构。

页面显示:

控制台输出:

struts2的搭建和简单的例子(采用struts-2.5.2版本)的更多相关文章

  1. JPA入门例子(采用JPA的hibernate实现版本) 转

    JPA入门例子(采用JPA的hibernate实现版本) jpahibernate数据库jdbcjava框架(1).JPA介绍: JPA全称为Java Persistence API ,Java持久化 ...

  2. JPA入门例子(采用JPA的hibernate实现版本) --- 会伴随 配置文件:persistence.xml

    JPA入门例子(采用JPA的hibernate实现版本) 分类: j2se2011-03-30 16:09 45838人阅读 评论(9) 收藏 举报 jpahibernate数据库jdbcjava框架 ...

  3. 【SSH】 之 Struts2环境搭建及简单应用开发

    在上一篇文章中,我们一起了解了一下struts2的工作机制原理,接下来让我们进行一下简单应用的开发 (一)配置环境 1.建立web项目 2.导入jar包 其中struts2中有很多jar包,我们不需要 ...

  4. JPA入门例子(采用JPA的hibernate实现版本)

    (1).JPA介绍: JPA全称为Java Persistence API ,Java持久化API是Sun公司在Java EE 5规范中提出的Java持久化接口.JPA吸取了目前Java持久化技术的优 ...

  5. Struts2入门(一)——环境搭建和简单例子(Struts2 2.5.2版本)

    一.前言 1.了解三大框架 什么是框架? 框架是一种规范,一种规则,一种把技术组织起来的规则,这就是框架. 什么是三大框架(SSH),Struts.hibernate和spring的作用是什么? St ...

  6. 转载 初学者必看——最简单最清晰的Struts2项目搭建流程

    https://blog.csdn.net/key0323/article/details/50773499 在项目中想要使用Struts2框架,我该怎么做?从哪里开始?这是我的疑惑,我想也是很多初学 ...

  7. 搭建一个简单struts2框架的登陆

    第一步:下载struts2对应的jar包,可以到struts官网下载:http://struts.apache.org/download.cgi#struts252 出于学习的目的,可以把整个完整的压 ...

  8. 使用maven+eclipse搭建最简单的struts2的helloworld

    使用maven+eclipse搭建最简单的struts2的helloworld 一.web分层结构简介 1.web[细]粒度分层结构: 按细粒度分层可以分为以下6种: 1).表现层:html/css/ ...

  9. Struts2的配置和一个简单的例子

    Struts2的配置和一个简单的例子 笔记仓库:https://github.com/nnngu/LearningNotes 简介 这篇文章主要讲如何在 IntelliJ IDEA 中使用 Strut ...

随机推荐

  1. MySQL 不开启slave如何完成异地复制

    1,分批次通过远程的binlog来进行数据加载 业务新需求,线上数据库数据拉到本次,但是不允许开启slave服务,不建立直接外网的数据库账号,也不能打通数据库对外网的网络,所以我们测试环境无法通过普通 ...

  2. EasyRMS录播管理服务器项目实战:windows上开机自启动NodeJS服务

    本文转自EasyDarwin开源团队成员Penggy的博客:http://www.jianshu.com/p/ef840505ae06 近期在EasyDarwin开源团队开发一款基于EasyDarwi ...

  3. 06----fiter

    步骤一:渲染标签 双层for循环---- 步骤二:进行数据过滤 fiter_name=java 知识点: """ 改为生成器方式: def foo(): temp=[] ...

  4. linux 一些有用的命令

    新增软链接 ln -s /usr/local/python27/bin/python2.7 /usr/bin/python 新建目录/递归 mkdir ./{nginx,memcached,httpd ...

  5. librec库

    固定初始化矩阵值 net.librec.math.structure -> class DenseMatrix -> void init()

  6. linux下导入、导出mysql 数据库命令

    一.导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):1.导出数据和表结构:mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql#/usr/lo ...

  7. 自动化测试入门指南(3)-- 入门demo

    按照 自动化测试入门指南(2)-- 环境搭建搭建好环境后,我们继续一步步实现一个简单的入门例子 Step0. 安装Firefox浏览器(http://pan.baidu.com/s/1c00bw8g中 ...

  8. 轻量级KVO[译]

        在这篇文章中,我会实现一个自己用的简单KVO类,我认为KVO非常棒,然而对于我大部分的使用场景来说,有这两个问题: 1. 我不喜欢在observeValueForKeyPath:ofObjec ...

  9. Python学习-第三方库操作

    2018-05-04   12:03:19 Python安装模块,更新模块 #显示模块 pip list #显示过期模块 pip list --outdated #安装模块 pip install x ...

  10. python3.x 类和对象

    python同样支持类和对象.在python3.x中没有了经典类,只有新式类,默认创建的就是新式类.具体的新式类与经典类的不同在python3.x中已经没有意义了. 类的定义和实例化 python定义 ...