第一struts2程序

今天学习了第一个struts2程序

第一步建立一个java web程序

第二步 加入jar包

第三步 添加两个jsp文件 login.jsp和result.jsp文件

login.jsp

在body部分加入


<body>
<form action="login">
用户名:<input type="text" name="usename" /><br/>
密码: <input type="password" name="password" /><br/>
<input type="submit" value="登录"/>

</body>

result.jsp

在body部分加入

<body>
<!-- EL表达式 -->
usename: ${requestScope.usename } <br/>
password: ${requestScope.password }

</body>

第四步

添加struts.xml文件

在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="default" namespace="/" extends="struts-default">
<!-- name="login" 这个名字可以自己定义 要和 提交表单的那个action名字一致 -->
<action name="login" class="com.struts2.LoginAction">

<!-- name="success"
这个名字要和LoginAction.java 的 execute() 方法的返回值一致
-->
<result name="success">/result.jsp</result>

</action>

</package>

</struts>

第五步 新建一个com.struts2包,并加入登陆Action

package com.struts2;

public class LoginAction {
private String usename ;
private String password ;

public String getUsename() {
return usename;
}
public void setUsename(String usename) {
this.usename = usename;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}

//这个方法不可少
public String execute()
{
return "success" ;
}

}

第六步 配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
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">
<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>/*</url-pattern>
</filter-mapping>


<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

 文件结构为:

运行结果为:

posted @   leagueandlegends  阅读(164)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示