SpringMVC的两个蝴蝶飞你好的简单开发(二)中

简介: SpringMVC的两个蝴蝶飞你好的简单开发(二)

四. 注解形式的SpringMVC的配置


上面 HelloAction 类必须实现 Controller 或者是 HttpRequestHandler 接口,重写里面的方法, 这样是不太好的。


故一般都是使用 注解进行配置开发。


四.一 SpringMVC 注解配置


<?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:context="http://www.springframework.org/schema/context"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.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.xsd
    http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop.xsd
        http://www.springframework.org/schema/tx
    http://www.springframework.org/schema/tx/spring-tx.xsd ">
  <!-- 配置的是注解的 -->
  <!-- 扫描哪个基本包,多个用,进行分开 -->
  <context:component-scan base-package="com.yjl.action"></context:component-scan>
  <!-- 处理器映射器 -->
  <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>
  <!-- 处理器适配器 -->
  <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>
  <!-- 视图解析器 -->
  <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  </bean>
</beans>


四.二 HelloAction的注解形式开发


package com.yjl.action;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
/**
@atuhor:yuejl
@Description: 类描述
*/
@Controller  //Controller注解放置在类上
public class HelloAction {
  @RequestMapping("/hello.action")
  public void hello(){
    System.out.println("你好,两个蝴蝶飞,注解形式");
  }
}


四.三 测试运行


输入网址, 访问为 hello.action

控制台输出:


20190729195658324.png


然而页面上却并没有展示任何东西。 显示 404, 这个是正常的。 因为没有配置页面


20190729195714132.png


五. 处理器映射器和处理器适配器简写


五.一 将映射器和适配器省略


上面注解形式时, 处理器映射器和处理器适配器 进行进行相应的简写,并且 在实际开发中也常常是简写的形式。


将这两句话:


<!-- 处理器映射器 -->
  <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>
  <!-- 处理器适配器 -->
  <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>


用下面的一句话进行代替


<!-- 适配器和映射器简写 -->
  <mvc:annotation-driven></mvc:annotation-driven>


注意,不要忘记添加 mvc的约束。


<?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:context="http://www.springframework.org/schema/context"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:tx="http://www.springframework.org/schema/tx"
  <!--mvc的约束-->
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.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.xsd
    http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop.xsd
        http://www.springframework.org/schema/tx
    http://www.springframework.org/schema/tx/spring-tx.xsd ">
  <!-- 配置的是注解的,重写视图解析器 -->
  <context:component-scan base-package="com.yjl.action"></context:component-scan>
  <!-- 适配器和映射器简写 -->
  <mvc:annotation-driven></mvc:annotation-driven>
  <!-- 视图解析器 -->
  <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/jsp/"></property>
    <property name="suffix" value=".jsp"></property>
  </bean>
</beans>


五.二 输出方法测试


@RequestMapping("/hello.action")
  public String hello(){
    //System.out.println("你好,两个蝴蝶飞,注解形式");
    System.out.println("你好,两个蝴蝶飞,简单注解形式");
    return null;
  }


五.三 测试运行


输入网址, 访问为 hello.action


2019072919574910.png

相关文章
SpringMVC的两个蝴蝶飞你好的简单开发(二)下
SpringMVC的两个蝴蝶飞你好的简单开发(二)中
196 0
SpringMVC的两个蝴蝶飞你好的简单开发(二)下
|
前端开发 Java Spring
SpringMVC的两个蝴蝶飞你好的简单开发(二)上
SpringMVC的两个蝴蝶飞你好的简单开发(二)
130 0
SpringMVC的两个蝴蝶飞你好的简单开发(二)上
|
6月前
|
设计模式 前端开发 JavaScript
Spring MVC(一)【什么是Spring MVC】
Spring MVC(一)【什么是Spring MVC】
|
5月前
|
设计模式 前端开发 Java
【Spring MVC】快速学习使用Spring MVC的注解及三层架构
【Spring MVC】快速学习使用Spring MVC的注解及三层架构
74 1
|
5月前
|
前端开发 Java 应用服务中间件
Spring框架第六章(SpringMVC概括及基于JDK21与Tomcat10创建SpringMVC程序)
Spring框架第六章(SpringMVC概括及基于JDK21与Tomcat10创建SpringMVC程序)
|
5月前
|
XML Java 数据格式
SpringMVC的XML配置解析-spring18
SpringMVC的XML配置解析-spring18
|
5月前
|
应用服务中间件
从代码角度戳一下springMVC的运行过程-spring16
从代码角度戳一下springMVC的运行过程-spring16
|
6月前
|
前端开发 Java 关系型数据库
基于ssm框架旅游网旅游社交平台前后台管理系统(spring+springmvc+mybatis+maven+tomcat+html)
基于ssm框架旅游网旅游社交平台前后台管理系统(spring+springmvc+mybatis+maven+tomcat+html)
|
前端开发 Java Go
Spring MVC 和 Spring Boot 的区别
Spring MVC 和 Spring Boot 的区别
217 0
|
6月前
|
移动开发 Java 测试技术
Spring MVC+Spring+Mybatis实现支付宝支付功能(附完整代码)
Spring MVC+Spring+Mybatis实现支付宝支付功能(附完整代码)
159 1