Struts1.x使用入门
Struts1框架是apache公司的开源子项目,是基于mvc逻辑分层的web层框架实现。是出现最早的web层框架,应用最广发。Struts1框架重点关注的是控制层,对于视图层只是提供了大量的标签;对于model层的影响微乎其微。
本文也是本人初学struts情况下写的,如有不足之外还希望能给我一点指点。
好了,下面就直接说使用实例吧。
1 Java的基本运行环境,就不多说了,我这里用的IDE是Eclipse Java EE IDE for Web Developers,Mars Release (4.5.0)。
2 因为本例中创建的是web项目,应用的运行需要安装好tomcat,并将其配置到eclipse中Server去。
配置过程是Window->Preference->Server->Server Runtime Environment->Add->选择tomcat版本->next->Browse(选择tomcat的安装路径)->Finished.
3 创建新项目
4 因为使用的不是Maven工程,所以需要的依赖需要自己手动导入,这里使用的struts的版本是struts-1.3.10,所用的jar包可以直接从官网上下载。
5 导入依赖,把需要加入的jar包拷进WebContent/WEB-INF/lib下,并项目Properties->Java Build Path->Add External Jar.
鉴于是初学,为避免不必要的麻烦,所以所有的jar都添加到项目的Build Path中去。
6 在WebContent下的WEB-INF下创建配置文件web.xml,struts_config.xml,其中web.xml可能会已存在,可以不必再次创建。
7 创建LoginForm,继承自ActionForm
package com.peace;import org.apache.struts.action.ActionForm;public class LoginForm extends ActionForm {private String userName = null;private String passWord = null;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;}}
8 创建LoginAction,继承自Action,并重写Action的exectue方法
package com.peace;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;public class LoginAction extends Action {@Overridepublic ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,HttpServletResponse response) throws Exception {// TODO Auto-generated method stubreturn super.execute(mapping, form, request, response);}}
上面的代码目前什么都没做,之后会修改其中的execute()方法的实现
9 修改配置文件web.xml和struts_config.xml.
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"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/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <!-- 配置ActionServlet --><servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class><!-- 指定struts配置文件 --><init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts_config.xml</param-value> </init-param> <!-- 最先运行 --><load-on-startup>0</load-on-startup> </servlet><!-- 指定ActionServlet可以处理哪些URL --><servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
</web-app>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config><form-beans><form-bean name="loginForm" type="com.peace.LoginForm"></form-bean></form-beans><action-mappings><action path="/login" type="com.peace.LoginAction" name="loginForm"><forward name="loginSuccessed" path="/loginSuccessed.jsp"/><forward name="loginFialed" path="/loginFailed.jsp"/></action></action-mappings>
</struts-config>
10 修改LoginAction中的exectue()方法
package com.peace;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;public class LoginAction extends Action {@Overridepublic ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,HttpServletResponse response) throws Exception {// TODO Auto-generated method stubLoginForm loginForm = (LoginForm) form;if(loginForm.getUserName().equals("test") && loginForm.getPassWord().equals("123")) {return mapping.findForward("loginSuccessed");} else {return mapping.findForward("loginFailed");}}}
11 添加3个简单的jsp页面,实现测试
login.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>
<!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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form action="<%= request.getContextPath() %>/login.do" method="post">UserName:<input type="text" name="userName"><br>PassWord:<input type="password" name="passWord"><br><input type="submit" value="Login">
</form>
</body>
</html>
loginSuccessed.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>
<!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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
Login Successed!
</body>
</html>
loginFailed.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>
<!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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
Login failed!!!
</body>
</html>
12 运行, 右键Run as->Run On Server
13 测试结果
总结:(抄个图说明一下struts的工作原理)
Struts1.x使用入门相关推荐
- java管理从程序员到CTO的Java技术路线图
查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧! 在技巧方面无论我们怎么学习,总感觉需要晋升自已不知道自己处于什么水平了.但如果有清晰的指示图 ...
- Java程序员职业生涯规划完整版:从程序员到CTO
查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧! 在技巧方面无论我们怎么学习,总感觉需要晋升自已不知道自己处于什么水平了.但如果有清晰的指示图 ...
- Java程序员职业生涯规划完整版:从程序员到CTO( 摘)
原文链接:https://blog.csdn.net/chunyufeiyun/article/details/11394575 查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的, ...
- struts1基础入门
1.struts1工作原理 a> 初始化: struts框架的总控制器ActionServlet是一个Servlet,它在web.xml中配置成自动启动的Servlet,在启动时总控制器会读取配 ...
- struts1.x心得1--struts入门介绍
1.讲解struts1主要介绍的内容 2.为什么使用struts 3.进一步介绍框架概念和struts概念 Framework:框架 layer:层,阶层:地层 flexible:活的:柔韧的 Rso ...
- Struts2入门这一篇就够了
前言 这是Strtus的开山篇,主要是引入struts框架...为什么要引入struts,引入struts的好处是什么,以及对Struts2一个简单的入门.... 为什么要引入struts? 既然Se ...
- java struts2 框架 入门简介
目录 一.Struts2框架执行流程 二.Struts2的快速入门 1.导入jar包 2.配置web.xml文件 3.配置struts.xml文件 4.创建Action来完成逻辑操作 三.Struts ...
- struts2教程--快速入门
Struts2框架介绍 1.三大框架 : 是企业主流 JavaEE开发的一套架构 Struts2 + Spring + Hibernate 2. 什么是框架?为什么要学框架 ? 框架 是 实现部分功能 ...
- Spring-MVC入门(一):入门实例
引言 1.MVC :Model-View-Control 框架性质的C 层要完成的主要工作:封装web 请求为一个数据对象.调用业务逻辑层来处理数据对象.返回处理数据结果及相应的视图给用户. 2. 简 ...
- Play Framework入门引导
偶然看到这篇文章,写的不错,拿来分享一下. 版权所有©转载必须以链接形式注明作者和原始出处 原文地址:http://freewind.me/blog/20120728/965.html ======= ...
最新文章
- C语言之typedef详解
- 软件工程 之 动物世界
- Windows安装配置tidevice
- Vue之vue-cli安装与简单调试
- MySQL修改数据表名
- rust go java 性能_Java,Go和Rust之间的比较 - Dexter
- 深入理解Oracle的并行操作
- 浅议gRPC的数据传输机制和回调机制
- 《人月神话》读后感一
- [DJANGO] excel十几万行数据快速导入数据库研究
- 03K个数或第k个数算法
- stc8a循迹小车程序编写实验:完成循迹功能,包括直角转弯,以及调头
- 计算机航嘉快捷启动键,win7 u盘启动快捷键是什么
- 计算机中的工作流程,计算机工作流程
- 使用JS快速读取TXT文件
- 1px dotted 在IE6下不支持
- 软件测试基础理论学习和小案例(一)
- 二叉树--二叉平衡树
- 【golang学习总结】10 golang中map用法
- Linux_centos版初学(基础命令)
热门文章
- vb 运行错误429 mysql_运行时错误429 ActiveX部件不能创建对象的终极解决方法
- 什么是serialVersionUID?serialVersionUID详解
- MySQL官方提供的日志分析工具_MySQL 日志分析的几款工具-Fun言
- 联想android手机驱动,Lenovo联想手机驱动
- MyEclipse10破解,亲测实用
- 初探机器学习之使用讯飞TTS服务实现在线语音合成
- 约瑟夫问题 c语言数组,约瑟夫问题的数组实现
- linux 迅雷 命令行,Linux小迅雷:uGet下载工具加速 | 薄荷开源网
- 英雄连2一直显示连接relic服务器,英雄连2联机时出现PleaseWait问题的解决方法_英雄连2PleaseWait问题的解决方法_牛游戏网...
- 网络工程师知识-盘点网工调试工具常用console线汇总