IDEA配置SpringMVC

本文详细介绍了如何在IDEA中配置SpringMVC,从创建WEB工程、引入依赖到配置web.xml、创建spring配置文件,再到编写Controller和处理视图。同时,提到了可能遇到的8080端口被占用问题及其解决方法。

创建WEB工程,引入开发的jar包

 在pom文件输入

<!--版本锁定-->
<properties>
  <spring.version>5.0.2.RELEASE</spring.version>
</properties>

<dependencies>

  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>${spring.version}</version>
  </dependency>

  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-web</artifactId>
    <version>${spring.version}</version>
  </dependency>

  <!--SpringMVC-->
  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>${spring.version}</version>
  </dependency>

  <!--servlet API-->
  <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
    <scope>provided</scope>
  </dependency>

  <dependency>
    <groupId>javax.servlet.jsp</groupId>
    <artifactId>jsp-api</artifactId>
    <version>2.0</version>
    <scope>provided</scope>
  </dependency>

  <!--日志-->
  <dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.3</version>
  </dependency>

  <dependency>
    <groupId>org.thymeleaf</groupId>
    <artifactId>thymeleaf-spring4</artifactId>
    <version>3.0.9.RELEASE</version>
  </dependency>

</dependencies>

在web.xml文件替换上部

<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
   http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">

 在web.xml文件输入

<!--配置前端控制器,对浏览器发送的请求进行统一处理-->
<servlet>
  <servlet-name>dispatcherServlet</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  <!--加载springmvc.xml配置文件的位置和名称,配置的是Spring配置-->
  <init-param>
    <!--contextConfigLocation:上下文配置路径,固定值-->
    <param-name>contextConfigLocation</param-name>
    <!--classpath:类路径,值得是Java和resources文件夹-->
    <!--springmvc.xml:指的是配置文件的名称:需要配置springmvc.xml,在下面-->
    <param-value>classpath:springmvc.xml</param-value>
  </init-param>
  <!--配置启动加载-->
  <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
  <servlet-name>dispatcherServlet</servlet-name>
  <url-pattern>*.do</url-pattern>
</servlet-mapping>

在main文件夹中创建resources文件夹

在resources文件夹创建spring config文件,命名为springmvc.xml

 

<!--配置spring创建容器时要扫描的包-->
    <context:component-scan base-package="com.qcby"></context:component-scan>

    <!--处理映射器-->
    <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>

    <!--处理器适配器-->
    <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>

    <!--配置视图解析器-->
    <bean id="viewResolver" class="org.thymeleaf.spring4.view.ThymeleafViewResolver">
        <property name="order" value="1"/>
        <property name="characterEncoding" value="UTF-8"/>
        <property name="templateEngine" ref="templateEngine"/>
    </bean>
    <!-- templateEngine -->
    <bean id="templateEngine" class="org.thymeleaf.spring4.SpringTemplateEngine">
        <property name="templateResolver" ref="templateResolver"/>
    </bean>
    <bean id="templateResolver" class="org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver">
        <property name="prefix" value="/html/" />
        <property name="suffix" value=".html" />
        <property name="templateMode" value="HTML5"/>
    </bean>
    <!--配置spring开启注解mvc的支持  默认就是开启的 ,要想让其他组件(不包含映射器、适配器、处理器)生效就必须需要配置了-->
    <mvc:annotation-driven></mvc:annotation-driven>
<!--最后一行会报错,导入以mvc结尾的包-->

 在webapp文件夹下创建suc.html并编写

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
  <meta charset="UTF-8">

  <title>成功</title>
</head>
<body>
<h1>Hello <b th:text="${msg}"></b></h1>
</body>
<script>
</script>
</html>

在webapp文件夹下创建index.jsp并编写

<html>
<head>
    <meta charset="utf-8">
    <title>入门程序</title>
</head>
<body>
<h3>入门</h3><a href="/SpringMVCDemo/hello.do" >入门程序</a>
</body>
</html>

编写Controller类和方法

//把当前类交给IOC容器进行管理
@Controller
public class HelloController {
    /**
     * 处理超链接发送出来的请求
     * @param model
     * @return
     */
    @RequestMapping(path = "/hello.do")
    public String sayHello(Model model){

        System.out.println("入门方法执行了2...");
        // 向模型中添加属性msg与值,可以在html页面中取出并渲染
        model.addAttribute("msg","hello,SpringMVC");
        // 配置了视图解析器后,写法
        return "suc";

    }
}

配置tomcat

 

 

 启动

你可能会看到乱码,点击下面的

 看到下面的文字则成功

 注意

启动时可能会告诉你8080端口被占用,你可以使用win+r,输入cmd,输入netstat -ano找到占用8080端口号的进程的PID,在任务管理器上找到它,然后结束进程,在重启tomcat。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

licungeng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值