SpringMVC实现一个controller写多个方法
来源:互联网 发布:p2p对等网络监管 编辑:程序博客网 时间:2024/06/10 01:06
SpringMVC实现一个controller写多个方法
MultiActionController与ParameterMethodNameResolver
在一个Controller类中定义多个方法,并根据使用者的请求来执行当中的某个方法,相当于Struts的DispatcherAction。使用MultiActionController需要配个MethodNameResolver实例,默认使用ParameterMethodNameResolver,他会根据所给的网址中,最后请求的文件名称来判断执行Controller中的哪一个方法
1.控制器类继承MultiActionController
package com.ljq.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;/** * 实现一个controller写多个方法 * * @author Administrator * */public class MultiController extends MultiActionController { public ModelAndView add(HttpServletRequest request, HttpServletResponse response) { System.out.println("----add----"); return new ModelAndView("/multi", "message", "add"); } public ModelAndView update(HttpServletRequest request, HttpServletResponse response) { System.out.println("----update----"); return new ModelAndView("/multi", "message", "update"); } public ModelAndView query(HttpServletRequest request, HttpServletResponse response) { System.out.println("----query----"); return new ModelAndView("/multi", "message", "query"); }}
2.定义控制方法按如下格式
public ModelAndView add(HttpServletRequest request, HttpServletResponse response) { System.out.println("----add----"); return new ModelAndView("/multi", "message", "add"); }
3.在dispatcher-servlet.xml文件中引入多视图控制
<bean id="paramMethodResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver"> <property name="paramName" value="action"></property> </bean>
然后注入自己的控制器类
<bean name="/multi" class="com.ljq.web.controller.MultiController"> <property name="methodNameResolver"> <ref bean="paramMethodResolver"/> </property> </bean>
4.完善或者添加一个视图(multi.jsp),对应控制器类的跳转
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><!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>实现一个controller写多个方法</title> </head> <body> 本次调用方法是<b>${message }</b> </body></html>
5.部署,启动
访问路径:http://localhost:8083/springmvc/multi?action=addhttp://localhost:8083/springmvc/multi?action=updatehttp://localhost:8083/springmvc/multi?action=query
0 0
- SpringMVC实现一个controller写多个方法
- SpringMVC一个controller写多个方法
- springMVC(5) springMVC一个controller写多个方法
- SpringMVC-----4、SpringMVC一个controller写多个方法
- springMVC一个Controller实现多个方法
- SpringMVC中一个Controller多个方法
- springmvc学习笔记(三)一个Controller中实现多个方法
- SpringMVC拦截Controller方法
- springMVC中一个class(controller)中的多个方法
- springmvc中针对一个controller方法配置两个url请求
- springMVC学习笔记---controller中实现多个方法
- SpringMVC实现Controller的两种方法:配置和约定
- SpringMVC之Controller中多个方法
- SpringMVC的Controller方法参数
- 在springmvc中非controller类中调用service接口,以获取springmvc容器方法实现
- springMVC的一个controller方法怎么处理多个请求地址
- springmvc从一个controller跳转到另一个controller
- SpringMVC中Controller跳转到另一个Controller方法
- MyEclipse快捷键大全
- 关于Android中的四大组件(Service的开启与关闭)
- java 基础概念 -- 数组与内存控制
- linux 命令
- string get_telno(string &userid) 和 string get_telno(string userid) 有什么区别
- SpringMVC实现一个controller写多个方法
- swift 中的 Selector 类型
- POJ 1328 Radar Installation(区间贪心)
- 反转单链表
- vijos - P1319数列 (二进制 + 找规律 + python)
- 通知实现ios前后台切换管理
- 最长公共子序列LCS和字符串编辑距离
- Git fetch和git pull的区别
- 玩转Node.js - 04. 第一个异步 I/O!