欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Springmvc Controller接口代码示例

时间:2021-01-09 11:15:26|栏目:JAVA代码|点击:

Spring MVC

Controller控制器,是MVC中的部分C,为什么是部分呢?因为此处的控制器主要负责功能处理部分:

收集、验证请求参数并绑定到命令对象;

将命令对象交给业务对象,由业务对象处理并返回模型数据;

返回ModelAndView(Model部分是业务对象返回的模型数据,视图部分为逻辑视图名)。

1. 继承该接口 Controller接口,重写对应方法,或者采用注解Controller,自定义映射文件

@Controller
@RequestMapping("/flight")
public class ControlFlight 
/*implements Controller*/
{
}

需要注意的是:

SimpleUrlHandlerMapping决定使用哪一个控制器。

其中对于prexf-servlet-.xml文件中使重定向方式:

1.第一种ModelAndView方式。

<!--基于URL映射器-->
    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
      <property name="mappings">
        <props>

          <prop key="start1.do">ControlFlight</prop>
          <prop key="buy.do">ControlFlight</prop>
          <prop key="flight.do">ControlFlight</prop>
          <prop key="result.do">ControlFlight</prop>
          <!--<prop key="start.do">loginController</prop>-->
        </props>
      </property>
    </bean>

   <!-- <bean id="loginController" class="org.springframework.web.servlet.mvc.ParameterizableViewController">
      <property name="viewName" value="buy"/>
    </bean>-->

  <bean id="ControlFlight" class="com.qunar.flight.control.ControlFlight"/>


  <!--ViewResolver映射-->
  <bean class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
    <property name="prefix" value="/WEB-INF/flight/"/>
    <property name="suffix" value=".jsp"/>
    <property name="order" value="1"/>
  </bean>

之后进入Controller中进行任务分派:

@RequestMapping(value = "/start.do", method = RequestMethod.GET)
   public ModelAndView BuyAirTicket() {
	return new ModelAndView("buy");
}

2 第二种采用

<!--基于URL映射器-->
    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
      <property name="mappings">
        <props>

          <prop key="start.do">loginController</prop>
        </props>
      </property>
    </bean>

    <bean id="loginController" class="org.springframework.web.servlet.mvc.ParameterizableViewController">
      <property name="viewName" value="buy"/>
    </bean>

然后和下面的部分代码实现URL拼接

<!--ViewResolver映射-->
  <bean class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
    <property name="prefix" value="/WEB-INF/flight/"/>
    <property name="suffix" value=".jsp"/>
    <property name="order" value="1"/>
  </bean>

还有另一种方法:

就是直接使用这个命令,但是前提条件是,请求URI的前缀(过滤掉.vm,.htm等)和转发的一样,则直接可以使用

<bean id="loginController" class="org.springframework.web.servlet.mvc.UrlFilenameViewController"/> 

3 继承AbstractControlle 接口,并实现相应的方法,次方法和Controller相同,但是对于如果想封装表单请求,可以直接使用CommandController,-->AbstractCommandController(3.0以上版本废弃)

4. 注解@RequestMapping("/path") -->在类级别上定义注解时,那么再用此方法注解方法method时,那么method下的路径是与类路径相对。

@PathVariable 该注释是用来指明URL路径里面取参数,这个注解可以多个使用,下面时使用一种的代码片段

@RequestMapping("/flight/{name}")
  public ModelAndView toAdd(@PathVariable("name") String name){

    ModelAndView mav = new ModelAndView("buy");
    return mav;
  }

总结

以上就是本文关于Springmvc Controller接口代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

SpringMVC接收复杂集合对象(参数)代码示例

SpringMVC拦截器实现监听session是否过期详解

SpringMVC开发restful API之用户查询代码详解

如有不足之处,欢迎留言指出。

上一篇:SpringBoot静态资源目录访问

栏    目:JAVA代码

下一篇:基于Java创建一个订单类代码实例

本文标题:Springmvc Controller接口代码示例

本文地址:http://www.codeinn.net/misctech/42728.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有