先以一个简单的登录例子说明,web允许过程:
1。web.xml ---- 基本不改动。只添加一个欢迎jsp:
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
这样运行起来项目时会首先看到这个页面。(这里我是一个简单的登录界面,用户名和密码输入,一个登录按钮)
2。
按钮所在jsp页面内容如下:
<body>
<!-- form标签库定义,以及调用哪个Action声明 -->
<s:form action="Login"><span style="white-space:pre"> </span>//这里声明这个表单交给action名为“Login”的过滤器
<table width="60%" height="76" border="0">
<!-- 各标签定义 -->
<s:textfield name="username" label="用户名"/>
<s:password name="password" label="密 码" />
<s:submit value="登录" align="center"/>
</table>
</s:form>
</body>
输入用户名和密码,点击登录按钮,会按照表单中写的过滤器名称去struts.xml中查找。
3。struts.xml相关部分如下:
<action name="Login" class="StrutsTest1file.loginin">
<result name="error">error.jsp</result>
<result name="success">success.jsp</result>
</action>
找到此=对应的过滤器,按照过滤器指定的java类,交给此java类中的 public String execute() throws Exception方法处理,
4。java部分代码:
public String execute() throws Exception{
if(username.equals("xsx") &&
password.equals("xsx127")){
msg = "登录成功,欢迎" + this.username;
return "success";
}else{
msg = "登录失败,用户名或密码错";
return "error";
}
}
注意,在这个类中,需要判断的变量一定要和jsp中声明一样的
username和password
java方法返回判断结果
5。struts.xml根据返回的结果
<result name="error">error.jsp</result>
<result name="success">success.jsp</result>
交给对应的jsp页面跳转