Eclipse环境下 spring MVC 入门实例
实现一个spring 的登陆事例
1.在eclipse下新建动态网页工程springmvc
2.需要导入jar包.
aopalliance.jar;commons-beanutils.jar;commons-collections.jar;commons-dbcp.jar;commons-digester.jar;
commons-lang.jar;commons-logging.jar;commons-pool.jar;commons-validator.jar;freemarker.jar;jaxen-1.1-beta-7.jar;
jstl.jar;junit.jar;log4j-1.2.13.jar;servlet-api.jar;spring.jar;spring-aspects.jar;spring-mock.jar;spring-web.jar
standard.jar;xalan.jar;xercesImpl.jar;xml-apis.jar
3.修改web.xml
<web-app id="WebApp_ID" 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">
<display-name>
springmvc</display-name>
<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/Config.xml</param-value>
</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/jstl/core_rt</taglib-uri>
<taglib-location>/WEB-INF/tlds/c.tld</taglib-location>
</taglib>
</jsp-config>
</web-app>
其中jsp-config 定义引用 c.tld标签,所以需要在 WEB-INF目录下新建tlds目录后拷贝c.tld到tlds目录下.
4.对应 < param-value > /WEB-INF/Config.xml </ param-value >在WEB-INF下新建Config.xml
<!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>.ftl</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="net.oscar.action.LoginAction">
<property name="commandClass">
<value>net.oscar.action.LoginInfo</value>
</property>
<property name="fail_view">
<value>loginfail</value>
</property>
<property name="success_view">
<value>main</value>
</property>
</bean>
</beans>
5.在工程的src下新建Config.xml用到的 net.oscar.action.LoginAction和 net.oscar.action.LoginInfo的类
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;
}
}
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("msg1");
msgList.add("msg2");
msgList.add("msg3");
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("oscar".equalsIgnoreCase(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;
}
public String getSuccess_view() ...{
return success_view;
}
public void setSuccess_view(String success_view) ...{
this.success_view = success_view;
}
}
6.改动index.html文件(在WebContent目录下)
<html>
<head>
<title>Insert title here</title>
</head>
<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="提交" name="B1">
<input type="reset" value="重置" name="B2">
</p>
</form>
</body>
</html>
7.在WEB-INF下新建view目录用于存放jsp文件,loginfail.jsp和main.jsp
main.jsp
pageEncoding="ISO-8859-1"%>
<%...@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>
<html>
<head>
</head>
<body>
<p>Login Success!!!</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>
loginfail.jsp
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>
大功告成!在index.html中输入用户名:oscar 密码:123456就可以登陆了.
Eclipse环境下 spring MVC 入门实例相关推荐
- eclipse spring mysql,eclipse环境下的springboot框架+mybatis访问MySQL报错空指针
"/")public classTestController { @RequestMapping("/login")publicString login() { ...
- Spring MVC入门 —— 跟开涛学SpringMVC
2014-05-14 23:22:27 第二章 Spring MVC入门 -- 跟开涛学SpringMVC 浏览(84979)|评论(12) 交流分类:Java|笔记分类: 跟开涛学Spring ...
- Spring MVC 入门--Hello World
Spring MVC 学习 Hello world 步骤 添加jar包 在web.xml文件中配置DispatcherServlet 添加Spring MVC的配饰文件 编写处理请求的处理器,并且标识 ...
- Spring、Mybatis、Spring MVC整合实例
Spring.Mybatis.Spring MVC整合实例笔记 源码地址:https://gitee.com/name168/SSM_Demo 1.Maven web项目创建(IDEA) 2.SSM整 ...
- Spring oxm入门实例
O/XMapper是什么? Spring3.0的一个新特性是O/XMapper.O/X映射器这个概念并不新鲜,O代表Object,X代表XML.它的目的是在Java对象(几乎总是一个plainoldJ ...
- 关于在XP操作系统和IIS5.1环境下的MVC环境搭建之IIS错误
我们通常在XP操作系统中搭建IIS5.1环境下的webform模式应用程序和MVC模式的应用程序,但是我们知道,一个应用程序的环境搭建是首先要面临的一个问题.环境搭建,特别是第一次的搭建,这个看似并不 ...
- 解决eclipse环境下maven项目tomcat启动,未加载到项目的问题
解决eclipse环境下maven项目tomcat启动,未加载到项目的问题 参考文章: (1)解决eclipse环境下maven项目tomcat启动,未加载到项目的问题 (2)https://www. ...
- eclipse环境下如何配置tomcat
eclipse环境下如何配置tomcat 回到目录 eclipse环境下如何配置tomcat 很多初学,尤其自学JavaWeb的朋友首次在eclipse下配置tomcat时,总会有种难下手的感觉,在此 ...
- Spring MVC代码实例系列-06:Spring MVC配置Hibernate-Validator以及自定义校验注解
超级通道 :Spring MVC代码实例系列-绪论 本章主要记录,如何在Spring MVC中添加Hibernate-Validator以及自定义校验注解.本章主要涉及的技术点有: javax.val ...
最新文章
- java 折半插入排序_[Java代码] Java实现直接插入排序和折半插入排序算法示例
- python使用numpy中的np.mean函数计算数组的均值、np.var函数计算数据的方差、np.std函数计算数组的标准差
- 大学毕业后,我将何去何从?
- 编程之美初赛第一场--焦距
- 继鼎晖夹层完成80亿募集后,鼎晖夹层IDC基金首轮关账15亿
- 自由自在休闲食品以创新助80后女孩成功创业
- 在过滤器中设置一个应用范围内的路径
- jvav的 全局变量 和 局部变量
- 省选考试防爆0注意事项(PART1考试习惯)
- HDU 4359 Easy Tree DP? 组合数学+动归
- React—Native开发之 Could not connect to development server(Android)解决方法
- nohup方式 真正的后台不挂断运行程序
- 破B操作系统:(1)显示桌面图标
- 【Docker 那些事儿】如何安全地停止、删除容器
- 关于马克思《青年在选择职业时的考虑》的读书报告
- iOS--相册视频MOV转MP4
- GitLab CI/CD如何在docker in docker 模式下将流水线的产物存储到宿主机上?
- 量子计算机叠加算法,量子计算中的叠加
- 深入浅出Pairwise 算法
- UIButton水平居中、垂直居中按钮 image 和 title
热门文章
- 搭建subversion 服务器,并自动部署项目
- 学会使用JDK API
- 关于Cococs中的CCActionEase(下)
- Mac上使用中文Beamer添加各种格式的图片
- asp.net中涉及子文件夹的母版页和相对路径文件引用问题(一)
- Python-异常处理
- 如何解决分布式系统数据事务一致性问题(HBase加Solr)
- 【干货】2021年技术趋势:全球企业加速数字化转型-德勤.pdf(附下载链接)
- 【白皮书分享】2020新式茶饮白皮书:数字化进阶-奈雪.pdf(附下载链接)
- 【报告分享】2020年中国金融科技企业领袖观点洞察报告.pdf(附下载链接)