前段时间搞了几天的SSH,用东北话说“贼郁闷”,今天看了一个Struts的视频,突然觉得思路清晰了不少,不再那么二了(确实前几天很二的)
一个菜鸟级的struts例子展示(实现登陆验证,暂不使用数据库,固定登录名和密码),所谓“麻雀虽小,五脏俱全”,若干这样的逻辑都必须基于它之上,所以写在这给自己一个参考。
前段时间搞了几天的SSH,用东北话说“贼郁闷”,今天看了一个Struts的视频,突然觉得思路清晰了不少,不再那么二了(确实前几天很二的)
一个菜鸟级的struts例子展示(实现登陆验证,暂不使用数据库,固定登录名和密码),所谓“麻雀虽小,五脏俱全”,若干这样的逻辑都必须基于它之上,所以写在这给自己一个参考。
*** 开发Struts应用步骤:
1.新建Web Project (这个不用多说,接触过WEB开发的人都知道)
2.为项目增加Struts相关类库与文件(这也不用多说,做过一遍都能记住,注意为各个包命名)
3.新建FormBean(名字,类型,需要的属性->)****我老搞错这一步****
Code
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans >
<form-bean name="loginForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="password" type="java.lang.String" />
<form-property name="username" type="java.lang.String" />
</form-bean>
</form-beans>
<global-exceptions />
<global-forwards >
<forward
name="fail"
path="/fail.jsp"
redirect="true" />
<forward
name="success"
path="/success.jsp"
redirect="true" />
</global-forwards>
<action-mappings >
<action
attribute="loginForm"
input="/login.jsp"
name="loginForm"
path="/login"
scope="request"
type="com.v512.example.struts.action.LoginAction" />
</action-mappings>
<message-resources parameter="com.v512.example.struts.ApplicationResources" />
</struts-config>
4.新建Action(这个不用担心,上一步自动生成)
5.新建Formword(Struts的逻辑视图,struts-config.xml的逻辑视图中)
***添加所要使用的.jsp页面。
6.编辑Action(一般会修改execute()方法)
Code
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.v512.example.struts.action;
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 org.apache.struts.action.DynaActionForm;
/**
* MyEclipse Struts
* Creation date: 08-03-2008
*
* XDoclet definition:
* @struts.action path="/login" name="loginForm" input="/login.jsp" scope="request" validate="true"
*/
public class LoginAction extends Action {
/*
* Generated Methods
*/
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
DynaActionForm loginForm = (DynaActionForm) form;
String username = (String) loginForm.get("username");
String password = (String) loginForm.get("password");
if (username.equals("liuwei") && password.equals("123456")) {
return mapping.findForward("success");
}
return mapping.findForward("fail");
}
}
7.部署,运行项目(部署web项目一样部署struts项目)