1、控制器Controller
- 控制器负责提供访问应用程序的行为,通常通过接口定义或注解定义两种方法实现。(一般用注解定义)
- 控制器负责解析用户的请求并将其转换为一个模型。
- 在Spring MVC中一个控制器类可以包含多个方法
- 在Spring MVC中,对于Controller的配置方式有很多种
2、有哪几种方法可以实现Controller
无论哪一种方法web.xml配置文件的编写是避免不了的
springmvc
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springmvc-servlet.xml
1
springmvc
/
第一种:
一编写springmvc的配置文件
服务器托管
二、实现Controller接口,编写一个Controller类
//定义控制器
//注意点:不要导错包,实现Controller接口,重写方法;
public class ControllerTest1 implements Controller {
public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
//返回一个模型视图对象
ModelAndView mv = new ModelAndView();
mv.addObject("msg","Test1Controller");
mv.setViewName("test");
return mv;
}
}
写完Controller类之后记得在去Springmvc配置文件中注册请求的bean;name对应请求路径,class对应处理请求的类
第二种:
1、web配置文件和第一种方式一样
2、配置springmvc配置文件
3、编写一个Controller并用注解开发
package com.kuang.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/HelloController")
// 也可以不加这个,直接用下面方法上的@RequestMapping("/hello")这样真实路径就是 项目名/hello
@RequestMapping("/hello")
publ服务器托管ic class HelloController {
//真实访问地址 : 项目名/HelloController/hello
@RequestMapping("/hello")
public String sayHello(Model model){
//向模型中添加属性msg与值,可以在JSP页面中取出并渲染
model.addAttribute("msg","hello,SpringMVC");
//web-inf/jsp/hello.jsp
return "test";
}
}
-
- @Controller是为了让Spring IOC容器初始化时自动扫描到;
- @RequestMapping是为了映射请求路径,这里因为类与方法上都有映射所以访问时应该是/HelloController/hello;
- 方法中声明Model类型的参数是为了把Action中的数据带到视图中;
- 方法返回的结果是视图的名称hello,加上配置文件中的前后缀变成WEB-INF/jsp/test.jsp。
创建视图层
在WEB-INF/ jsp目录中创建test.jsp , 视图可以直接取出并展示从Controller带回的信息;
Title
${msg}
可以通过EL表示取出Model中存放的值,或者对象;
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
微服务 概述 1.单体架构 2.分布式架构 3.微服务的架构特征: 服务拆分和远程调用 提供者与消费者 概述 1.单体架构 单体架构:将业务的所有功能集中在一个项目中开发,打成一个包部署。 单体架构的优缺点如下: 优点: 架构简单 部署成本低 缺点: 耦合度高…