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的两个蝴蝶飞你好的简单开发(二)中
131 0
SpringMVC的两个蝴蝶飞你好的简单开发(二)下
|
前端开发 Java Spring
SpringMVC的两个蝴蝶飞你好的简单开发(二)上
SpringMVC的两个蝴蝶飞你好的简单开发(二)
108 0
SpringMVC的两个蝴蝶飞你好的简单开发(二)上
|
5月前
|
设计模式 前端开发 JavaScript
Spring MVC(一)【什么是Spring MVC】
Spring MVC(一)【什么是Spring MVC】
|
2月前
|
Java Apache vr&ar
springmvc报错 nested exception is org.mybatis.spring.MyBatisSystemException:
springmvc报错 nested exception is org.mybatis.spring.MyBatisSystemException:
16 0
|
7月前
|
前端开发 Java Go
Spring MVC 和 Spring Boot 的区别
Spring MVC 和 Spring Boot 的区别
112 0
|
10月前
|
Java Spring
springmvc中spring提供的中文乱码解决问题
可以解决浏览器的乱码问题
44 0
|
5月前
|
设计模式 前端开发 Java
Spring Boot之Spring MVC的工作原理 以及使用eclipse开发Spring MVC的Web应用实战(附源码)
Spring Boot之Spring MVC的工作原理 以及使用eclipse开发Spring MVC的Web应用实战(附源码)
46 0
|
10月前
|
JSON 前端开发 Java
"《图书管理系统》利用SpringMvc$Spring$MyBatis (实操九)(一) "
"《图书管理系统》利用SpringMvc$Spring$MyBatis (实操九)(一) "
57 0
|
5月前
|
设计模式 前端开发 Java
8:Spring MVC-Java Spring
8:Spring MVC-Java Spring
72 0
|
9月前
|
前端开发 Java 应用服务中间件
SpringMVC(基于Spring 的Web 层MVC 框架)--SpingMVC 执行流程--@RequestMapping的使用
SpringMVC(基于Spring 的Web 层MVC 框架)--SpingMVC 执行流程--@RequestMapping的使用
99 0