SpringMVC(5.0)入门案例

项目源码下载:SpringMVC 提供Eclipse和MyEclipse的源码和war文件

一,创建项目

 打开Eclipse或MyEclipse创建Web项目SpringMVC,在lib目录下导入所需的基础jar包:


二,配置web.xml文件

 打开web.xml文件配置SpringMVC的servlet:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>SpringMVC</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  <!-- spring mvc 的servlet -->
  <!-- DispatcherServlet在初始化后会直接在/WEB-INF/下找springmvc.xml文件,
               servlet-name标签的参数定义要和XML文件对应 -->
  <servlet>
      <servlet-name>appServlet</servlet-name>
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc.xml</param-value>
        </init-param>
      <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
      <servlet-name>appServlet</servlet-name>
      <url-pattern>/</url-pattern>
  </servlet-mapping>
  
</web-app>

三,创建Controller

在src目录下创建包cn.itcast.controller,在该包下新建类LoginController

package cn.itcast.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

public class LoginController implements Controller{
	//   创建日志对象
	private static final Log logger = LogFactory.getLog(Controller.class);
	@Override
	public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception {
		//打印日志
		logger.info("handleRequest 被调用");
        // 创建准备返回的ModelAndView对象,该对象通常包含了返回视图的路径、模型的名称以及模型对象
        ModelAndView mv = new ModelAndView();
        // 添加模型数据 可以是任意的POJO对象  
        mv.addObject("message", "Success Login!");  
        System.out.println("username: "+arg0.getParameter("username")+"   password:"+arg0.getParameter("password"));
        // 设置逻辑视图名,视图解析器会根据该名字解析到具体的视图页面  
        mv.setViewName("/success.jsp"); 
       // 返回ModelAndView对象。
       return mv;
	}

}

四,配置springmvc.xml文件

在src目录下创建配置文件springmvc.xml文件,对应于web.xml当中配置的地址

<param-value>classpath:springmvc.xml</param-value> 默认根目录地址为src/

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
    	http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd     
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-4.2.xsd">

	<!-- 解析cn.itcast.controller包下的注解 -->
	<context:component-scan base-package="cn.itcast.controller"/>

    <!-- 配置Handle,映射"/login"请求 -->
    <bean name="/login" class="cn.itcast.controller.LoginController"/>   

    <!-- 处理映射器将bean的name作为url进行查找,需要在配置Handle时指定name(即url) -->
    <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>

    <!-- SimpleControllerHandlerAdapter是一个处理器适配器,所有处理适配器都要实现 HandlerAdapter接口-->
    <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>

    <!-- 视图解析器 -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"/>
	
</beans>

五,在WebRoot或WebContent下创建两个文件index.jsp,success.jsp

index.jsp:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>登录</title>
  </head>
  
  <body>
  	<form action="login" method="post">
  		<input type="text" name="username"/>
  		<input type="password" name="password"/>
  		<input type="submit" value="登录"/>
  	</form>
  </body>
</html>
success.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!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=UTF-8">
<title>Success</title>
</head>
<body>
	 ${requestScope.message}
</body>
</html>

六,运行

将项目部署到tomcat上后:



 输入用户名和密码:123 321


控制台打印:





发布了110 篇原创文章 · 获赞 76 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/qq_34731703/article/details/79251327