Struts 2框架搭建(Hello World)

原创 2007年09月12日 08:46:00

首先要介绍的是我们要使用struts2 那当然是要必须知道用它需要那些jar文件,一般可开源的框架都已经为您提供好了,在struts-2.0.9里如图:

   

struts2jar

 

当然我们也不需要每个项目都要这么多包,struts2struts-2.0.9的包里也提供了一个基本的struts2的应用所需的jar(apps/struts2-blank-2.0.9.war.解压)

如图:sdf

  

基本的struts2的应用所需的jar

 

好了我们明白了一个基础struts2应用的所需jar 我们就开始我们Struts2方式的hello world 呵呵J

 

Struts2 工程必须首先在web.xml文件里注册struts2的控制器(FilterDispatcher)如图:

这样就我们就给我们的应用配置好了struts2的分发器,(然后在任意请求就通过FilterDispatcher来分发每一个请求),

FilterDispatcher到底是怎样找每一个struts2Action呢?下面来我们来了解一下,

Struts2”骨架配置文件

  在正确的配置完web.xml文件之后,我们需要为struts2本身配置一个骨架配置文件,这个配置文件的名字为struts2.xml,而且要将它放置到WEB-INF/classes目录下(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.struts2.HelloWorld">

      <result name="input">HelloWorld.jsp</result>

      <result name="success">result.jsp</result>

    </action>

 </package>

</struts>

 

 

 

<package name="helloWorld" extends="struts-default">

Struts2提供了默认的配置为这个默认的配置在struts-default.xml里,注意你不需要自己创建这个文件,因为它在struts2-core-2.0.9.jar的里面。

 

 

 

 

<action name="hello" class="com.struts2.HelloWorld">

 

Action标签是给struts2里的一个 action的配置 name属性是指action 的名字 class action所对应类的完全类名

 

 

 

 

<result name="input">HelloWorld.jsp</result>

Result struts2的结果跳转字符串

Struts2 action 返回的字符串来与<resultname属性来确定 要调转到那个资源

明白了上面的配置我们来看看Struts2Action 是怎么写的吧!

 

package com.struts2;

 

import java.text.DateFormat;

import java.util.Locale;

 

import com.opensymphony.xwork2.ActionSupport;

 

public class HelloWorld extends ActionSupport {

 

    /**

     *

     */

    private static final long serialVersionUID = 1L;

    private String message;

    private String name;

 

    @Override

    public String execute() throws Exception {

       // TODO Auto-generated method stub

    if("".equals(name)|"".equals(message)| name==null|message==null)

       {

           return INPUT;

       }

       message=name+"at in "+DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG,Locale.CHINA).format(System.currentTimeMillis())  +" say: "+message+" ";

       return SUCCESS;

    }

 

    public void setMessage(String message) {

       this.message = message;

    }

 

    public void setName(String name) {

       this.name = name;

    }

 

    public String getMessage() {

       return message;

    }

 

    public String getName() {

       return name;

    }

   

}

Struts 2 简单之处在于他没有像Spring MVC的那么多Controller,他为用户提供了一个简单的Action基类ActionSupport它是struts2的核心类,它可以做struts2要做的99%的事。我们继承了ActionSupport来实现一个struts2式的helloworldName属性是用户输入的姓名,message是用户要传达的信息,上面的讲解也需有些模糊,下面我们来看看具体的jsp页面吧!

HelloWorld.jsp

<%@ page language="java"  pageEncoding="gb2312"%>

<%@ taglib prefix="s" uri="/struts-tags" %>

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

  <s:head/>

   <title>helloWorld</title>

  </head>

 

  <body>

   <s:form action="hello">

      <s:textfield label="User Name" name="name"/>

      <s:textarea label="Message" name="message"/>

      <s:submit/>

   </s:form>

  </body>

</html>

这个jsp页面把用户输入的姓名,和信息提交个这个名为helloaction(<s:form>这些是struts的标签它是类似与产出一个表单,这些标签在这不做详细讲解)我们现在大概明白了上面action的作用了吧!我们看完了输入(Input page)的页,下面我们看看struts2(success page)吧!

result.jsp

<%@ page language="java"  pageEncoding="gb2312"%>

<%@ taglib prefix="s" uri="/struts-tags" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <title>My JSP 'result.jsp' starting page</title>

     <s:head/>

  </head>

  <body>

   Message: <s:property value="message"/>  

  </body>

</html>

这个jsp页面把用户输入的信息显示出来了。在我们的页面的编码都是用的GB2312struts2的默认编码是utf-8,这样我们的页面就可能产生乱码!那我们怎么解决这个问题呢!下面我们讲解struts2的运行时配置!

struts2的运行时配置

   struts2的分发层是filter那它的每个配置都是在FilterDispatcher类中做的,FilterDispatcherAction的每一类配置分成多个配置文件而每一个配置文件也相应的提供了默认的配置,这样很灵活也减轻了复杂度,那我们来讲解一下struts2的运行时配置文件struts.properties;

struts-default.properties

### Struts default properties

###(can be overridden by a struts.properties file in the root of the classpath)

###

 

### Specifies the Configuration used to configure Struts

### one could extend org.apache.struts2.config.Configuration

### to build one's customize way of getting the configurations parameters into Struts

# struts.configuration=org.apache.struts2.config.DefaultConfiguration

 

### This can be used to set your default locale and encoding scheme

# struts.locale=en_US

struts.i18n.encoding=UTF-8

 

 可以看到struts2的默认的编码是UTF-8了,我们只要把它该成 gb2312就解决了我们的中文乱码问题了,那我们怎么该呢?是在默认的struts-default.properties里该吗?答案是NO, 我们只需在WEB-INF/classes目录下新建一个名为struts.properties文件就可以了,它的配置就会自动的去覆盖默认的配置(配置如下:)

 

 

struts.properties

struts.i18n.encoding=gb2312

 

然后发布到tomcat上,在浏览器上输入http://localhost:8080/您的web应用名/helloworld.jsp就完成一个struts2式的helloworld了。

 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

springmvc框架搭建之hello world入门

介于新浪博客太垃圾了,不适合写技术博客,所以搬家到csdn,希望大家能喜欢 开发工具 myeclipse2013 (本人习惯intellij idea开发工具,但周围用eclipse比较多,故选m...

我的第一个Struts2框架开发-Hello World

 前面我简单总结介绍了一下Struts2框架开发,这里给大家讲解一下Struts框架开发的具体步骤,一个我第一次成功配置Struts2框架的小案例-Hello World(代码注释我都写的很详细...

第500篇---Struts 2框架实现的“Hello word”

第一步:为项目添加Struts 2支持 1.修改web.xml <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...

Struts2之struts-2.3.20开发环境的搭建并实现第一个Hello World小应用

搭建Struts2的开发环境,一般要做以下三个步骤: 1.找到开发Struts2应用需要使用到的jar文件,接下来介绍如何在网上下载Struts所需要的工具并找到开发Struts应用的jar文件: (...

Struts2 Hello World 实例

文章转载自:易百教程 [http:/www.yiibai.com] 本文标题:Struts2 Hello World 实例 本文地址:http://www.yiibai.com/struts_...

Struts 2 Hello World Annotation Example

In this tutorials, it will reuse the previous Strust 2 Hello World (XML version) example, and conver...

Struts 2 Hello World Example

In this example, we show you how to create a hello world example in Struts 2.The following libraries...

Struts 2 Hello World Annotation Example

Struts 2 Annotation ConceptThe Struts 2 annotation is supported by Struts 2 convention plugin, So, y...

Struts2 开发一个简单的Hello World

目录结构:

1.Hello World Using Struts 2

本系列文章均为自我学习而作,禁止转载 We use JSP,STRUTS2 to to create a "Hello World" example. you need to do fou...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)