Struts2学习笔记1_基本配置与登录

struts官方网址:[url=http://struts.apache.org]http://struts.apache.org[/url]

[b]1.新建web工程,导入基本的5个jar包:[/b]
[color=darkblue]commons-logging-1.0.4.jar
freemarker-2.3.8.jar
ognl-2.6.11.jar
struts2-core-2.0.14.jar
xwork-2.0.7.jar[/color]


[b]2.配置web.xml过滤器[/b]

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


[b]3.新建Action(LoginAction),它是一个POJO[/b]

package com.test.bean;

public class LoginAction {

private String username;
private String password;

// setter和getter ...

//Action中的处理方法
public String execute(){
if( "yueyan".equals(this.getUsername().trim()
&& "123".equals(this.getPassword().trim())) {
return "success";
}else{
return "error";
}
}
}


[b]4.在src目录下(运行时实际是WEB-INF/classes目录),新建struts.xml文件[/b]

<?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="struts2" extends="struts-default">
<action name="login" class="com.test.struts2.action.LoginAction">
<result >/success.jsp</result>
<result name="error">/error.jsp</result>
</action>
</package>
</struts>

<result>节点的name属性若不写,则默认为name="success"

[b]5.login.jsp页面[/b]

<form action="login.action" method="post">
用户名:<input type="text" name="username" /><br>
密码:<input type="password" name="password" /><br>
<input type="submit">
</form>

成功页面success.jsp 失败页面error.jsp 省略

[size=small][color=darkred][b]对登录进行改进:[/b][/color][/size]
[b]1.继承com.opensymphony.xwork2.ActionSupport,改善我们的Action类[/b]

package com.test.struts2.action;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction2 extends ActionSupport {

private String username;
private String password;

// setter和getter

/** 处理 */
@Override
public String execute(){
if( "yueyan".equals(this.getUsername().trim())
&& "123".equals(this.getPassword().trim()) ){
return "success";
}else{
return "error";
}
}

/** 验证 */
@Override
public void validate() {
if( "".equals(this.getUsername().trim()) ){
this.addFieldError("username", "用户名为空");//给字段添加错误信息
}
if( "".equals(this.getPassword().trim()) ){
this.addFieldError("password", "密码为空");
}
}
}


[b]2.struts.xml中添加一个新的action[/b]

<action name="login2" class="com.test.struts2.action.LoginAction2">
<result >/success.jsp</result>
<result name="error">/error.jsp</result>
<result name="input">/login.jsp</result>
</action>

<result name="input">/login.jsp</result>表示用login.jsp来显示验证所产生的错误信息

[b]3.login.jsp中使用struts2的标签[/b]
先导入标签库:
<%@ taglib prefix="s" uri="/struts-tags" %>

使用标签:
<s:form action="login2">
<s:textfield name="username" label="用户名" />
<s:password name="password" label="密 码" />
<s:submit label="提交" />
</s:form>


:)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值