struts2的搭建和简单的例子(采用struts-2.5.2版本)
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版本)的更多相关文章
- JPA入门例子(采用JPA的hibernate实现版本) 转
JPA入门例子(采用JPA的hibernate实现版本) jpahibernate数据库jdbcjava框架(1).JPA介绍: JPA全称为Java Persistence API ,Java持久化 ...
- JPA入门例子(采用JPA的hibernate实现版本) --- 会伴随 配置文件:persistence.xml
JPA入门例子(采用JPA的hibernate实现版本) 分类: j2se2011-03-30 16:09 45838人阅读 评论(9) 收藏 举报 jpahibernate数据库jdbcjava框架 ...
- 【SSH】 之 Struts2环境搭建及简单应用开发
在上一篇文章中,我们一起了解了一下struts2的工作机制原理,接下来让我们进行一下简单应用的开发 (一)配置环境 1.建立web项目 2.导入jar包 其中struts2中有很多jar包,我们不需要 ...
- JPA入门例子(采用JPA的hibernate实现版本)
(1).JPA介绍: JPA全称为Java Persistence API ,Java持久化API是Sun公司在Java EE 5规范中提出的Java持久化接口.JPA吸取了目前Java持久化技术的优 ...
- Struts2入门(一)——环境搭建和简单例子(Struts2 2.5.2版本)
一.前言 1.了解三大框架 什么是框架? 框架是一种规范,一种规则,一种把技术组织起来的规则,这就是框架. 什么是三大框架(SSH),Struts.hibernate和spring的作用是什么? St ...
- 转载 初学者必看——最简单最清晰的Struts2项目搭建流程
https://blog.csdn.net/key0323/article/details/50773499 在项目中想要使用Struts2框架,我该怎么做?从哪里开始?这是我的疑惑,我想也是很多初学 ...
- 搭建一个简单struts2框架的登陆
第一步:下载struts2对应的jar包,可以到struts官网下载:http://struts.apache.org/download.cgi#struts252 出于学习的目的,可以把整个完整的压 ...
- 使用maven+eclipse搭建最简单的struts2的helloworld
使用maven+eclipse搭建最简单的struts2的helloworld 一.web分层结构简介 1.web[细]粒度分层结构: 按细粒度分层可以分为以下6种: 1).表现层:html/css/ ...
- Struts2的配置和一个简单的例子
Struts2的配置和一个简单的例子 笔记仓库:https://github.com/nnngu/LearningNotes 简介 这篇文章主要讲如何在 IntelliJ IDEA 中使用 Strut ...
随机推荐
- d3.js(v5.7)的attr()函数完善(添加obj支持)
因为习惯了jquery的attr(obj)批量添加属性,所以刚开始看到d3为dom添加属性要一个一个添加的时候真的是十分想吐槽,既然想实现attr(obj),根据传入对象的键值对批量添加dom属性,那 ...
- Java多线程编程实战指南(核心篇)读书笔记(二)
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76651408冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...
- git pull时出现vim窗口的解决办法
最近常用到git来push代码到origin development分支上,也出现了几次vim窗口,防止忘记还是记录下来比较好: 首先按ESC键退出编辑状态,然后按shift+;键,再按wq!保存退出 ...
- Mac怎么快速创建便签和发送附件的邮件
1.如何快速创建便签 在Mac的任意界面选中文字:shift+command+y 就能创建便签2.如何快速发送附件的邮件(网页界面) 在Safari网页界面 command ...
- PRML-Chapter3 Linear Models for Regression
Example: Polynomial Curve Fitting The goal of regression is to predict the value of one or more cont ...
- CF1114F Please, another Queries on Array?
CF1114F Please, another Queries on Array? 考虑用线段树维护取模后的区间积和真正的区间积所含有的质因子. 每次询问查得这两个值后,一乘一除,即可算出该区间积的欧 ...
- UI 设计中的视觉无障碍设计
我给博客改了主题色,从 这样的 改成了 这样的:然而我问小伙伴看看效果他却并没有发现改变. 红绿色盲在亚洲人中占比,男性约 5%,女性则小得多.也就是说,就算仅考虑为国内用户开发应用,这也是很大的一部 ...
- Django之tag标签和filter标签
1.Django的tag常见的标签,可以做一些简单的功能 {%if%} 的使用主要用于做判断,还可以包含{%elif%} 这样的用法,最后要跟上{% endif %}.可以使用你的and,or,not ...
- Beyond Compare3 注册密钥和添加到右键菜单
本人使用的是 Beyond Compare 3 ,版本 3.3.8(build 16340),密钥应收Beyond Compare 3都能够使用. 如想查看密钥,请参考本文末尾的隐藏内容 Beyond ...
- 【转】ubuntu 12.04 /sbin/ldconfig.real: /usr/local/lib/*.so.8 不是符号连接 解决办法
原文网址:http://blog.csdn.net/shulianghe/article/details/21176059 最近在ubuntu12.04下使用sudo apt-get install安 ...