1.框架简介

采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架,用于快速开发Java Web应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。。目前为止,有Struts1和Struts2,用户可以根据自己的需求进行选择。

2.所需的lib包

可以去网上下载所有Struts需要的包,我这边是基于1.2的。有以下的包:antlr.jar,commons-beanutils.jar,commons-digester.jar,commons-fileupload.jar,commons-logging.jar,commons-validator.jar,freemarker-2.3.8.jar,jakarta-oro.jar,jstl.jar,ognl-2.6.11.jar,standard.jar,struts.jar,xalan-2.4.0.jar,xwork-2.0.4.jar。

把这些包放置到WebRoot/WEB-INF/lib下面.

3.创建Struts-config.xml.

4.在WEB-INF/web.xml中配置

5.创建Form

package com.babybus.sdteam.vo;

import org.apache.struts.action.ActionForm;

public class User  extends ActionForm {

	/**
* 默认序列化ID
*/
private static final long serialVersionUID = 1L; // 用户名
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;
}
}

6.创建ActionForm

package com.babybus.sdteam.action;

import java.util.List;

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; import com.babybus.sdteam.bo.ManageServlet;
import com.babybus.sdteam.vo.Student;
import com.babybus.sdteam.vo.User; public class LoginAction extends Action{ /**
* 序列号
*/
private static final long serialVersionUID = 1L; @Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception { String path = "success";
User user = (User)form; // 用户名
String userName = user.getUsername();
// 密码
String passWord = user.getPassword();
// 设置属性
request.setAttribute("userName", userName);
ManageServlet manageservlet = new ManageServlet();
// 获取全部列表
List<Student> resultlist = manageservlet.getStudentByCondition(null);
// 设置List
request.setAttribute("students", resultlist); return mapping.findForward(path); } }

7.配置Struts-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd"> <struts-config>
<data-sources />
<form-beans >
<form-bean name="User" type="com.babybus.sdteam.vo.User">
</form-bean>
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings >
<action path="/login" type="com.babybus.sdteam.action.LoginAction" name="User" scope="request">
<forward name="success" path="/UserList.jsp" />
</action>
</action-mappings>
<message-resources parameter="com.babybus.sdteam.struts.ApplicationResources" />
</struts-config>

8.最后看下页面代码,配置Form的Action

<form action="login.do" method="post" style="height: 100%">
<table width="100%" height="100%" cellpadding="0" cellspacing="0" >
<tr>
<td align="center" valign="middle" />
<table>
<tr>
<td>用户名:</td>
<td><input type="text" id = "username" name="username"/></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="password" id = "password" /></td>
</tr>
<tr>
<td colspan="2" align="center"> <input type="submit" value="登录"/>
<input type="reset" value="重置"/>
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>

9.配置到此就结了,更复杂的进一步了解。

结语

  • 受益,掌握了Struts1的初级应用

本站文章为宝宝巴士 SD.Team原创,转载务必在明显处注明:(作者官方网站:宝宝巴士)

转载自【宝宝巴士SuperDo团队】 原文链接: http://www.cnblogs.com/superdo/p/4608474.html

[JavaWeb基础] 006.Struts1的配置和简单使用的更多相关文章

  1. [JavaWeb基础] 007.Struts2的配置和简单使用

    1.框架简介 采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架,用于快速开发Java Web应用.Struts实现的重点在C(Controller), ...

  2. [JavaWeb基础] 005.Hibernate的配置和简单使用

    1.Hibernate简介 Hibernate是一个基于Java的开源的持久化中间件,对JDBC做了轻量的封装.采用ORM映射机制,负责实现Java对象和关系数据库之间的映射,把sql语句传给数据库, ...

  3. [JavaWeb基础] 008.Spring初步配置

    框架简介: Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Develop ...

  4. [JavaWeb基础] 016.Struts2 国际化配置

    如果一个软件想要让其受众是全球或者是几个国家的人,那么这个软件就需要支持多种语言,那么我们就需要软件的国际化去对一些文字信息进行国际化处理.web也一样,当外国人打开我们的网站,要是看到满屏幕的中文, ...

  5. [JavaWeb基础] 004.用JSP + SERVLET 进行简单的增加删除修改

    上一次的文章,我们讲解了如何用JAVA访问MySql数据库,对数据进行增加删除修改查询.那么这次我们把具体的页面的数据库操作结合在一起,进行一次简单的学生信息操作案例. 首先我们创建一个专门用于学生管 ...

  6. Android零基础入门第73节:Activity初入门,创建和配置如此简单

    Activity是Android应用的重要组成单元之一,也是Android应用最常见的组件之一.前面看到的示例通常都只包含一个Activity或一个AppCompatActivity,但在实际应用中这 ...

  7. Struts1入门实例(简单登录)

    Struts1入门实例(简单登录) 现在开始加入公司的核心项目,但由于项目开发比较早,所以使用的技术不是很新潮,前台用的还是struts1. 虽然不是什么新技术,但仍可以从中学到好多东西的.花了一个晚 ...

  8. JavaWeb基础知识总结

    JavaWeb基础知识总结.   1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Internet上供 ...

  9. 超详细的Java面试题总结(四 )之JavaWeb基础知识总结

    系列文章请查看: 超详细的Java面试题总结(一)之Java基础知识篇 超详细的Java面试题总结(二)之Java基础知识篇 超详细的Java面试题总结(三)之Java集合篇常见问题 超详细的Java ...

随机推荐

  1. SQLite使用(一)

    简单介绍SQLite常用API: int sqlite3_open( const char *filename, /* Database filename (UTF-8) */ sqlite3 **p ...

  2. 模块(类)之间解耦利器:EventPublishSubscribeUtils 事件发布订阅工具类

    如果熟悉C#语言的小伙伴们一般都会知道委托.事件的好处,只需在某个类中提前定义好公开的委托或事件(委托的特殊表现形式)变量,然后在其它类中就可以很随意的订阅该委托或事件,当委托或事件被触发执行时,会自 ...

  3. 选择结构(if、switch)

    3.2  用if语句实现选择结构 什么是选择结构 单分支if语句 双分支if语句 多分支if语句 1.什么是选择结构? 选择结构又称为分支结构,是根据给定的条件是否成立来决定程序的执行流程. 用if语 ...

  4. HTTP接口测试

    HTTP接口测试 1.1 get接口 请求URL http://api.nnzhp.cn/api/user/stu_info 请求方式 get 请求参数 参数名 必选 类型 说明 stu_name 是 ...

  5. Linux 内核工作队列之work_struct 学习总结

    前言 编写Linux驱动的时候对于work_struct的使用还是很普遍的,很早之前就在阅读驱动源码的时候就看到了它的踪影,根据其命名大概知道了它的具体作用,但是仍然不知所以,同时,伴随出现的还有de ...

  6. 明解JAVA 第三章答案

    练习3-1 package candle1220; import java.util.Scanner; public class Nightwatch { public static void mai ...

  7. Arrays.binarySearch的返回值

    如果查找的值包含在数组中,返回搜索的第一个值的下标: 如果查找的值不在数组中,返回(-插入点-1):插入点即为第一个大于此查找值的元素下标 插入点 为将该值插入数组的那一点:即第一个大于此键的元素下标 ...

  8. flink入门学习

    Flink学习笔记 一.简介 1.定义: ​ 针对流数据和批数据的分布式处理引擎.它主要是由 Java 代码实现.. 2.应用场景: ​ 流数据:把所有任务当成流来处理,处理观察和分析连续事件产生的数 ...

  9. onmouseenter,onmouseleave,onmouseover,onmouseout的区别

    首先,这四个事件两两配对使用,onmouseenter.onmouseleave一对,onmouseover.onmouseout一对,不能混合使用. onmouseenter 和 onmousele ...

  10. 轻量级熔断降级框架 alibaba sentinel 应用

    一.简介: wiki:https://github.com/alibaba/Sentinel/wiki 选择: ♥ 开源,成熟(功能完备.实际应用),活跃(功能维护及拓展) ♥ 更轻量:依赖资源少:a ...