第一个springMVC程序
程序员文章站
2022-06-02 15:15:06
...
首先我们需要引入插件
除了spring插件之外我们还需要引入如下两个插件
<!-- https://mvnrepository.com/artifact/org.springframework/spring-web -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.1.15.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.1.15.RELEASE</version>
</dependency>
springMVC的有一个调度服务器(dispatcherServlet),dispatcherServlet会拦截所有的请求并将请求分发给相应的controller 中的方法。
首先我们需要在web.xml配置文件中配置一个dispatcherServlet类。
这里我们的web.xml需要3.0 的版本如果不会更改版本大家可以参考我的博客
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
<display-name>day11</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>app</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- dispatcherServlet要读取的配置文件的路径 -->
<!-- disapcherServlet 读取配置文件之后会创建一个ApplicationContext -->
<!-- applicationContext为一个spring容器,spring容器就会扫描app-context.xml配置文件 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/app-context.xml</param-value>
</init-param>
<!-- 容器启动的时候建立DispatcherServlet -->
<load-on-startup>1</load-on-startup>
</servlet>
<!--dispatcherServlet会拦截所有的请求并将请求分发给相应的controller 中的方法 -->
<servlet-mapping>
<servlet-name>app</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
然后创建一个xml配置文件,下面是springMVC的配置文件,此配置文件需要和dispatcherServlet配置里面的地址相匹配
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/mvc
https://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd">
<!-- 扫描@component、@controller、@service、@repository 注解-->
<context:component-scan base-package="jee.pk1"></context:component-scan>
<mvc:annotation-driven/>
</beans>
书写控制器
package jee.pk1;
import org.apache.catalina.tribes.membership.McastService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
//此注解表示此类是控制器
@Controller
public class HelloController {
//此方法绑定了url:/hello
@RequestMapping("/hello")
public ModelAndView hello() {
System.out.println("hello");
ModelAndView mv=new ModelAndView();
mv.addObject("name","张三");//将键值对放入模型中
mv.setViewName("/WEB-INF/jsp/hello.jsp");//设置试图名
//spring 会将model 中的数据放入到view 中,然后将view渲染返回给浏览器
return mv;
}
}
关于springMVC的配置文件信息大家可以在spring官方文档中寻找。