欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java之struts框架入门教程

程序员文章站 2022-07-11 08:20:47
本教程主要讲述struts的简单入门操作 使用的是myeclipse工具 1.创建web项目 2.复制struts必要的jar包到 WebRoot/WEB-INF/lib 下 jar包列表如下: 导入后的项目结构如图 3.在 WebRoot/WEB-INF 下添加 web.xml 内容如下: 目录结 ......

 

本教程主要讲述struts的简单入门操作

使用的是myeclipse工具

 

1.创建web项目

java之struts框架入门教程

 

java之struts框架入门教程

 

2.复制struts必要的jar包到 webroot/web-inf/lib 下

jar包列表如下:

asm-3.3.jar
asm-commons-3.3.jar
asm-tree-3.3.jar
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
commons-lang3-3.1.jar
freemarker-2.3.19.jar
javassist-3.11.0.ga.jar
ognl-3.0.5.jar
struts2-core-2.3.4.jar
xwork-core-2.3.4.jar

导入后的项目结构如图

java之struts框架入门教程

 

 3.在 webroot/web-inf 下添加 web.xml 

内容如下:

<?xml version="1.0" encoding="utf-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="webapp_id" version="2.5">
  <display-name>01struts2_helloworld</display-name>
  <!-- struts2的核心过滤器配置 -->
  <filter>
      <filter-name>struts2</filter-name>
      <filter-class>org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter</filter-class>
  </filter>
  <filter-mapping>
      <filter-name>struts2</filter-name>
      <url-pattern>*.action</url-pattern>
  </filter-mapping>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>

 

目录结构如下:

java之struts框架入门教程

 

4.在src下添加java类来接收请求

public class helloaction {

    ////struts2的处理方法 都是 public string的  默认执行execute,并且处理方法没有参数
    public string execute(){
        system.out.println("请求被接收了...");
        return "success";
    }
}

 

5.在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="default" extends="struts-default" namespace="/">
        <action name="hello" class="cn.qm.action.helloaction">
            <result name="success">/index.jsp</result>
        </action>
    </package>
</struts>

 

注意:文件名需要是 struts.xml ,如果文件名拼写错误,

或者是struts.xml文件的路径错误,或者struts.xml内容有错误,

后面请求时都会报  "there is no action mapped for namespace / and action name" 错误

 

目录结构如下图:

java之struts框架入门教程

 

 6.修改请求时项目的映射路径

点击项目右键,选择 properties 

java之struts框架入门教程

 

输入web,找到context root ,并且修改web context-root 为 /hello ,如图

 java之struts框架入门教程

 

 7.配置项目到服务器

在servers下,tomcat 8.x 上右键 add deployment 

java之struts框架入门教程

 选择hellostruts项目

java之struts框架入门教程

 

 效果图

java之struts框架入门教程

 

8.点击上图绿色三角,运行

 

9.在浏览器输入 http://localhost:8080/hello/hello.action 检测是否接收到请求

效果如下

myeclipse的console中显示如下:

java之struts框架入门教程

浏览器效果

java之struts框架入门教程

10.为了是浏览器显示效果更明显,可以把this is my jsp page 替换为 hello struts 

index.jsp修改如下

注意:pageencoding 修改为 utf-8 的编码方式 

<%@ page language="java" import="java.util.*" 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">
<html>
  <head>
    <base href="<%=basepath%>">
    
    <title>my jsp 'index.jsp' starting page</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="this is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
  </head>
  
  <body>
    hello struts ... <br>
  </body>
</html>

  

效果图:

java之struts框架入门教程

 

 ok,本教程结束

因为参考的是之前的一些老的资料,所以操作方式相比现在回相对落后,

但是,这里只是为了帮助自己记录知识,以及回忆操作

后面如果有机会,会使用相对较新的方式来创建struts

这里附上

大致看了一下,这里用到了maven进行jar包管理,

并且其中对于jar使用方便了很多