struct2应用事例,完成学生信息的输入,提交显示输入的学生信息(1)

5)找到struct.xml配置中对应的视图结果,把xecute()方法的处理结果信息在浏览器中呈现出来

具体流程见下图:

1.创建工程

1)创建一个web project应用

2)选中工程名,按照如下图所示进行选择

3)src下面会自动创建一个struct.xml文件

2.业务控制器Action

1)action的相关说明

Action是struts中的一个抽象类,是Struts的心脏部分,ActionServlet和ActionForm进行过处理获取的请求和数据,都会到达Action中得到分发。

  1. 可以进行一些表单数据的检查,这里面的检查一般和页面的检查是不一样的,页面的检查都是客户端的一些数据格式规范的检查,这里的检查而与业务相关的检查一般放到这里面检查,比如与JavaBean相关的一些操作。也可以说它是一个业务逻辑的管理分发的地方。

  2. 执行必要的业务逻辑,不如存取数据库,调用实体bean等。它会直接调用业务逻辑层的javabean去处理数据库的操作,比如增删改查等。

  3. 根据处理的结果决定程序的去向,并以ActionForward对象的形式传递给ActionServlet,这样ActionServlet通过配置文件,决定返回的数据到达那个页面。

  4. Action是一个抽象类,必须实现以后才能执行,执行的方法是execute方法。

2)在src/actions文件夹下面创建Action类StudentInforAction,内容如下所示:

package actions;

import com.opensymphony.xwork2.ActionSupport;

public class StudentInforAction extends ActionSupport {

private String studentName;//定义学生信息

private String studentNo;

private String password;

public String getStudentName() {

return studentName;

}

public void setStudentName(String studentName) {

this.studentName = studentName;

}

public String getStudentNo() {

return studentNo;

}

public void setStudentNo(String studentNo) {

this.studentNo = studentNo;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

public String getMajor() {

return major;

}

public void setMajor(String major) {

this.major = major;

}

private String major;

public String execute(){//该方法是action默认的执行方法,根据Action的execute()方法的处理结果信息,找到struct.xml配置中对应的视图结果。并在浏览器中呈现

return SUCCESS;//返回逻辑视图SUCCESS,SUCCESS是Struts的内置常量

}

}

3.structs.xml配置

1)structs.xml配置的相关说明(structs.xml配置文件详解见:http://www.cnblogs.com/nayitian/p/3485167.html)

Action业务控制器定义完成后,必须在配置文件structs中配置后才能使用。在structs2中,所有的常量,Action和拦截器都在该文件中进行配置。

2)以下代码配置了2个Action。那么什么情况下action类会执行操作呢?有两种情况,一种是action类中的execute()自动调用,另一种方法是指定action类中的某一种方法来执行操作

<?xml version="1.0" encoding="UTF-8" ?>

/student/studentInforCollector.jsp

/student/studentInforShow.jsp

   

4.视图文件

在WebRoot/syudent文件夹下面创建2个视图,分别命名为studentInforCollector和studentInforShow。

1)studentInforCollector用来接受学生信息的输入

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!**

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值