• springMVC 多方法controller


    1. 新建web project

    2. 加入jar包

    3. 写web.xml   

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="3.0" 
    	xmlns="http://java.sun.com/xml/ns/javaee" 
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
      <display-name></display-name>	
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
      
      <servlet>
      	<servlet-name>springMVC</servlet-name>
      	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      	<init-param>
      		<param-name>contextConfigLocation</param-name>
      		<param-value>classpath*:config/spring-servlet.xml</param-value>
      	</init-param>
      	<load-on-startup>1</load-on-startup>
      </servlet>
      <servlet-mapping>
      	<servlet-name>springMVC</servlet-name>
      	<url-pattern>/</url-pattern>
      </servlet-mapping>
      
    </web-app>
    

    4. 新建config包, 新建spring-servlet.xml  文件

        

    <?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:p="http://www.springframework.org/schema/p"    
        xmlns:context="http://www.springframework.org/schema/context"    
        xmlns:mvc="http://www.springframework.org/schema/mvc"    
        xsi:schemaLocation="     
               http://www.springframework.org/schema/beans     
               http://www.springframework.org/schema/beans/spring-beans-3.0.xsd     
               http://www.springframework.org/schema/context     
               http://www.springframework.org/schema/context/spring-context-3.0.xsd    
               http://www.springframework.org/schema/mvc     
               http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> 
        
        <context:component-scan base-package="com.tgb.web.controller" />     
        <bean name="/test1/multi" class="com.tgb.web.controller.MultiController">
        	<property name="methodNameResolver">
        		<ref bean="paramMethodResolver"/>
        	</property>
        </bean>
        
        <bean id="paramMethodResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
        	<property name="paramName" value="action"></property>
        </bean>
        	
        <!-- ViewResolver 视图解析器 --> 
        <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name="prefix" value="/WEB-INF/"/> 
            <property name="suffix" value=".jsp"/> 
        </bean>
         
    </beans>
    

    5. 写多个方法的controller   

    package com.tgb.web.controller;
    
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.springframework.web.servlet.ModelAndView;
    import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
    
    public class MultiController extends MultiActionController{
    	public ModelAndView add(HttpServletRequest request, HttpServletResponse response){
    		System.out.println("-add-");
    		return new ModelAndView("/multi","method","add");
    	}
    	public ModelAndView update(HttpServletRequest request, HttpServletResponse response){
    		System.out.println("-update-");
    		return new ModelAndView("/multi","method","update");
    	}
    }
    

    6. 写jsp文件, 在WEB-INF下   

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">    
        <title>My JSP 'welcome.jsp' starting page</title>
      </head>
      
      <body>
       	<h> 多方法controller</h> <br>
          	本次方法是${method }
      </body>
    </html>
    

    7. IE端查看  

    http://localhost:8080/springMVC2/test1/multi?action=update
    

     结果显示

       

    多方法controller 
    本次方法是update 
    

      

     

      

      

  • 相关阅读:
    clientWidth和offsetWidth区别 e.pageX和e.clientX区别
    vue笔记(七)组件的生命周期
    vue笔记(七)网络封装
    vue笔记(六)自定义消息弹出
    vue笔记(五)插槽. 路由
    组件中的样式问题,穿透和scale占位, 引入静态资源
    python基础-迭代器
    python基础-装饰器
    python基础-函数对象和闭包
    python基础-名称空间与作用域
  • 原文地址:https://www.cnblogs.com/wujixing/p/5594726.html
Copyright © 2020-2023  润新知