struts2入门(1)

struts2 是一种基于MVC模式的开发框架。采用struts可以简化MVC设计模式的Web应用开发,很好的实现代码重用。

MVC模式,Model:Model部分包括业务逻辑层和数据访问层,在java Web中业务逻辑一般由JavaBean或者EJB担任,Model部分就是业务流程或者状态的处理以及业务规则的制定,业务模型的设计是MVC最主要的组件。View:View部分一般由JSP,HTML以及其他试图技术构建也可以使用XHTML,XML,Applet,Javascript等,Control:Control部分由Servlet组成,当用户请求从V部分过来时,C调用M在控制器中进行业务的处理。

struts2的工作原理:

一个客户请求在struts2框架中处理的过程大概有 一下几个步骤:

  1. 客户请求提交到服务器
  2. 请求被提交到一系列的过滤器或者拦截器,最后到达FilterDispatcher
  3. FilterDispatcher读取配置文件struts.xml,根据配置信息调用某个Action来处理客户请求。
  4. Action处理后,返回处理结果,FilterDispatcher根据struts.xml的配置信息找到对应的页面跳转。

struts2框架的业务控制器不会对用户请求进行实质的处理,用户请求最终由模型组件负责处理,业务控制器只是提供处理场合,是负责调度模型组件的调度器。

下面一个简单的例子测试:

导入几个常用的jar包,

commons-fileupload-1.2.1.jar 
commons-io-1.3.2.jar

commons-logging-1.0.4.jar
freemarker-2.3.13.jar   
ognl-2.6.11.jar 
struts2-core-2.1.6.jar 
xwork-2.2.1.jar

文件结构如下:

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4"
         xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <filter>
        <!--struts2的核心控制器名称-->
        <filter-name>struts2</filter-name>
        <!--struts2的核心控制器类-->
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>
    <filter-mapping>
        <!--struts2的核心控制器名称-->
        <filter-name>struts2</filter-name>
        <!--拦截所有URL请求-->
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

login.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,welcome to here!!</h1>
<a href="login.jsp">Login</a>
</body>
</html>

success.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
    <%
    String path=request.getContextPath();
    String basePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
<!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><%=basePath %></title>
</head>
<body>
<h1>Success!!!</h1>
</body>
</html>

LoginBean.java

package mybean;

public class LoginBean {
private String userName;            //此处的userName名称必须和form定义的input 类型的 id=“userName"一样负责不能自动传值
private String passWord;            //会报pointerNull错误
public String getUserName() {
    return userName;
}
public void setUserName(String userName) {
    this.userName = userName;
}
public String getPassWord() {
    return passWord;
}
public void setPassWord(String passWord) {
    this.passWord = passWord;
}
public boolean login(String userName,String passWord) {
    boolean b=false;
    if(userName.equals("QQ")&&passWord.equals("123")){
        b=true;
        return b;
    }
    else
    {
        b=false;
        return b;
    }
}
}

LoginAction.java

package action;
import mybean.LoginBean;
public class LoginAction {
    private String userName;
    private String passWord;
    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }
    public String getPassWord() {
        return passWord;
    }
    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }
    public String execute() throws  Exception {
            LoginBean lb=new LoginBean();
        if(lb.login(userName, passWord)){
            return "success";
        }
        else {
            return "error";
        }
    }
}PS:开发环境Win7+Eclipse Luna
时间: 2024-10-06 01:19:45

struts2入门(1)的相关文章

STRUTS2入门笔记

1.1.开发Struts 2程序最少需要的JAR如下: struts2-core-2.x.x.jar :Struts 2框架的核心类库      xwork-core-2.x.x.jar :XWork类库,Struts 2在其上构建      ognl-2.6.x.jar :对象图导航语言(Object Graph Navigation Language),struts2框架通过其读写对象的属性      freemarker-2.3.x.jar :Struts 2的UI标签的模板使用FreeM

1.struts2入门程序

**Struts2的入门步骤(重点掌握开发的步骤,尤其要记住拷贝哪些配置文件)** 0. 需求:编写JSP的页面,超链接,点击超链接发送请求,让框架某个类中的某个方法执行了. 1. 步骤一:下载Struts2的开发包 * http://struts.apache.org/download.cgi 2. 解决struts-2.3.15.3-all.zip包 * 解压后会看到有包和一些文件,大家需要掌握包相关的信息 * apps -- Struts2框架提供了一些应用. * libs -- Stru

Struts2入门(1)

---恢复内容开始--- 一丶Struts2基础学习总结 Struts2是在WebWork2的基础开发而来,它相比于Struts1的优点在于以下几点: 1.Strust2没有像Struts1那样跟Servlet API耦合度很高. 2.Struts2提供了拦截器,利用拦截器可以进行AOP编程. 3.Struts2提供了很强大的类型转换. 4.Struts2提供了多种表现层技术,虽然常用的只有JSP. 5.Struts 2 的输入校验可以指定方法进行校验. 6.Struts 2 提供了全局范围.包

Struts2入门(一)——配置文件

一.前言 1.了解三大框架 什么是框架? 框架是一种规范,一种规则,一种把技术组织起来的规则,这就是框架. 什么是三大框架(SSH),Struts.hibernate和spring的作用是什么? Struts主要负责层的显示,spring利用IOC和AOP来处理控制业务(负责对数据库的操作),hibernate主要作用是数据的持久性到数据库. Struts的处理流程: 在Struts 2下载文件Struts-core-2.5.2.文件中(注意:不同jarStruts核心控制器的名称不同),Str

struts2入门程序

1.搭建struts2环境开发的步骤 搭建struts2环境时,我们一般需要做一下几个步骤的工作: 1.  创建javaweb工程 2.  找到开发struts应用所需要使用的jar 3.  创建jsp文件 4.  创建action文件 5.  编写struts2的配置文件 6.  在web.xml中加入struts2 MVC框架启动配置 开发struts2中需要使用的基本jar包: 关于struts2的提示: 我的myeclipes默认的struts2提示只到2.1,如果需要有2.3的提示,有

Struts2入门这一篇就够了

前言 这是Strtus的开山篇,主要是引入struts框架...为什么要引入struts,引入struts的好处是什么,以及对Struts2一个简单的入门.... 为什么要引入struts? 既然Servlet能够完成的事,我们为啥要用框架呢?? 框架帮我们封装了很多常用的功能 把Web带过来的参数自动封装到JavaBean中[以前,我们刚开始学的时候是单个单个来获取参数的,后来我们又使用了BeanUtils写工具方法来帮我们封装].现在,我们使用了Struts2的话,那么框架内部就能帮我们封装

struts2入门---ActionContext

1.开发环境搭建 2.简单应用 我们在index.jsp里面这样写: <a href="TestActionContext.action?name=zhoujing&age=21">Test ActionContext</a> <% if(application.getAttribute("date") == null) application.setAttribute("date", new Date())

struts2入门之拦截器

1.拦截器的执行时间:在action对象创建之后,在具体的方法执行之前: 2.拦截器底层实现原理:用到AOP思想和责任链模式:AOP:面向切面编程,通俗的讲就是当某个功能模块要增加某一项功能时,尽可能不去修改源代码而是通过其他的方式来达到相同的效果,比如通过配置文件等方式:责任链模式和过滤链模式有点相似,过滤链模式是指比如,一个请求由多个过滤器进行过滤,每个过滤器进行放行之后才能到下一个过滤器,最后实现目的:但是责任链模式,比如要执行多个操作,有添加,修改,删除三个操作,首先执行添加操作,添加操

简单的谈一下struts2入门(一)

Struts2的配置文件: 下面是它的配置顺序 web.xml Default.properties Struts-default.xml Struts-plugin.xml Struts.xml <package name="one-package" extends="struts-default"> <action name="one" class="cn.struts2.action.OneAction"

简单的谈一下struts2入门

1:Struts的由来 Struts1 - > 2000~2007 火,第一个非常成功的MVC框架 . 高耦合.高度的依赖于Servlet容器. 2003开始就有了很多的其他的MVC框架 Webwork  - struts2 Jsf - SUN springmvc 记住关键的一个概念就是Struts2是webwor升级版本 下载struts2 http://struts.apache.org/ Apache Struts is a free, open-source, MVC framework