(eclipse europa + tomcat 5.5+spring 2.06+lomboz S3.3RC1)
前期準備:
eclipse-java-europa-win32.zip
apache-tomcat-
tomcatPluginV31.zip
spring-framework-
org.objectweb.lomboz-and-prereqs-S-3.3RC1-200708181505.zip
Reference:
http://www.aygfsteel.com/pixysoft/archive/2007/08/29/141048.html
Quick Start
新建一個動態網頁項目:名稱為ShitSpring
得到的結構
在WebContent/WEB-INF/lib目錄下面導入以下包。這些包全部可以在spring的zip內找到。
在WEB-INF目錄下面新建一個目錄tlds,導入以下文件。可以在eclipse目錄下面搜索找到這2個文件。
修改WEB-INF目錄下面的web.xml文件為:





















































在WEB-INF目錄下面增加一個Config.xml,內容為:





















































在WEB-INF目錄下面增加一個文件index.html













































在WEB-INF目錄下面增加一個目錄為view,在view目錄下增加一個文件main.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>
<html>
<head>
</head>
<body>
<p>Shit! Spring!</p>
<p>Current User: <c:out value="${logininfo.username}" /><br>
</p>
<p>Your Current messages:</p>
<c:forEach items="${messages}" var="item" begin="0" end="9" step="1"
varStatus="var">
<c:if test="${var.index%2==0}">
*
</c:if>
${item}<br>
</c:forEach>
</body>
</html>
pageEncoding="ISO-8859-1"%>
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>
<html>
<head>
</head>
<body>
<p>Shit! Spring!</p>
<p>Current User: <c:out value="${logininfo.username}" /><br>
</p>
<p>Your Current messages:</p>
<c:forEach items="${messages}" var="item" begin="0" end="9" step="1"
varStatus="var">
<c:if test="${var.index%2==0}">
*
</c:if>
${item}<br>
</c:forEach>
</body>
</html>
在view目錄下面增加一個文件loginfail.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
Login Fail!
</body>
</html>
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
Login Fail!
</body>
</html>
在項目的src目錄下面增加2個類:LoginAction.java / LoginInfo.java
LoginAction.java
package net.oscar.action;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
public class LoginAction extends SimpleFormController
{
private String fail_view;
private String success_view;
protected ModelAndView onSubmit(Object cmd, BindException ex)
throws Exception
{
LoginInfo loginInfo = (LoginInfo) cmd;
if (login(loginInfo) == 0)
{
HashMap result_map = new HashMap();
result_map.put("logininfo", loginInfo);
List msgList = new LinkedList();
msgList.add("Shit");
msgList.add("Spring");
msgList.add("Quick Start!");
result_map.put("messages", msgList);
return new ModelAndView(this.getSuccess_view(), result_map);
} else
{
return new ModelAndView(this.getFail_view());
}
}
private int login(LoginInfo loginInfo)
{
if ("shit".equalsIgnoreCase(loginInfo.getUsername())
&& "shit".equals(loginInfo.getPassword()))
{
return 0;
}
return 1;
}
public String getFail_view()
{
return fail_view;
}
public void setFail_view(String fail_view)
{
this.fail_view = fail_view;
}
public String getSuccess_view()
{
return success_view;
}
public void setSuccess_view(String success_view)
{
this.success_view = success_view;
}
}
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
public class LoginAction extends SimpleFormController
{
private String fail_view;
private String success_view;
protected ModelAndView onSubmit(Object cmd, BindException ex)
throws Exception
{
LoginInfo loginInfo = (LoginInfo) cmd;
if (login(loginInfo) == 0)
{
HashMap result_map = new HashMap();
result_map.put("logininfo", loginInfo);
List msgList = new LinkedList();
msgList.add("Shit");
msgList.add("Spring");
msgList.add("Quick Start!");
result_map.put("messages", msgList);
return new ModelAndView(this.getSuccess_view(), result_map);
} else
{
return new ModelAndView(this.getFail_view());
}
}
private int login(LoginInfo loginInfo)
{
if ("shit".equalsIgnoreCase(loginInfo.getUsername())
&& "shit".equals(loginInfo.getPassword()))
{
return 0;
}
return 1;
}
public String getFail_view()
{
return fail_view;
}
public void setFail_view(String fail_view)
{
this.fail_view = fail_view;
}
public String getSuccess_view()
{
return success_view;
}
public void setSuccess_view(String success_view)
{
this.success_view = success_view;
}
}
LoginInfo.java
package net.oscar.action;
public class LoginInfo
{
private String username;
private String password;
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
}
public class LoginInfo
{
private String username;
private String password;
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
}
最后整個項目目錄變為:
鼠標右鍵點擊項目,選擇Run As / Run on Server
選擇tomcat服務器
輸入shit/shit。成功!