您的位置:首页 > 编程语言 > Java开发

spring mvc简单实例的总结(夏昕的翻版)

2007-10-26 14:55 417 查看
1.web.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>Dispatcher</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/Config.xml</param-value>(其中我的Config.xml文件是建立在src文件夹里面)
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Dispatcher</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<jsp-config>
<taglib>
<taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/tld/c.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jsp/jstl/fmt</taglib-uri>
<taglib-location>/WEB-INF/tld/fmt.tld</taglib-location>
</taglib>
</jsp-config>(其中红颜色的代码表示是jstl的标签,注意其中必须导入两个jar 文件standard.jar和jst.jar文件,另外还要在src文件夹下建立一个tld文件夹存放jstl的tld文件)
</web-app>

2.Config.xml文件的配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass">
<value>
org.springframework.web.servlet.view.JstlView
</value>
</property>
<property name="prefix">
<value>/WEB-INF/view/</value>()
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>

<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/login.do">LoginAction</prop>
</props>
</property>
</bean>

<bean id="LoginAction" class="com.yuqiang.LoginAction">
<property name="commandClass">
<value>com.yuqiang.LoginInfo</value>
</property>

<property name="fail_view">
<value>loginfail</value>
</property>(其中是失败返回的视图)

<property name="successView">(只能为这个名字)
<value>main</value>
</property>(成功返回的视图)
</bean>
</beans>

3.LoginInfo.java

package com.yuqiang;

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;
}
}

4.LoginAction.java

package com.yuqiang;

import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;

public class LoginAction extends SimpleFormController{
private String fail_view;
protected ModelAndView onSubmit(Object cmd){//onSubmit不能写成onSubmit 或者 protected 不能写成public因为这个方法是重写SimpleFormController的方法
LoginInfo loginInfo=(LoginInfo)cmd;
if(login(loginInfo)==0){
HashMap result_map=new HashMap();
result_map.put("logininfo", loginInfo);
List msgList=new LinkedList();
msgList.add("msg1");
msgList.add("msg2");
msgList.add("msg3");
result_map.put("messages", msgList);
return new ModelAndView(this.getSuccessView(),result_map);//返回成功视图
}else{
return new ModelAndView(this.getFail_view()); //返回失败的视图
}

}
protected int login(LoginInfo loginInfo){
if("yuqiang".equals(loginInfo.getUsername())&&
"123456".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;
}

}

5.登录界面

<body>
<form method="post" action="login.do">
<p align="center">登录</p>
<BR>
用户名:
<input type="text" name="username">
<br>
密 码:
<input type="password" name="password">
<br>
<p>
<input type="submit" value="提交">
<input type="reset" value="重置">
</p>
</form>
</body>

以上是核心代码。具体配置的环境大致是这样的:src文件夹下存放了Config.xml java文件 WEB-INF下存放了lib文件夹 tld文件夹 view文件夹存放jsp文件的。(其中jsp文件必须存在这里面)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: