在idea中使用tomcat 和打war包

1,创建springmvc demo项目

  • a, 配置pom.xml依赖
  • b, 配置WEB-INF目录下的两个文件: web.xml, dispatcher-servlet.xml
  • c, 编写 index.jsp 页面和 controller代码

2, 在idea中配置tomcat ,测试

a, 发布web项目

在这里插入图片描述添加webapps目录
在这里插入图片描述

b, 在idea 里面配置tomcat

在这里插入图片描述
添加运行时server环境
在这里插入图片描述

c, 部署web项目到tomcat中

在这里插入图片描述点击运行,等待idea弹出index web页面
在这里插入图片描述在这里插入图片描述

d, 验证ok 后,打包web项目为war包

web项目打成war包
在这里插入图片描述

------------------- springmvc demo代码--------------------

1,配置pom.xml

new module --> java webapplication : 添加maven支持,配置pom.xml如下

<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <springframework.version>4.3.7.RELEASE</springframework.version>
    </properties>

    <dependencies>
    <!-- 解决JSP解析错误问题 -->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
    <!-- spring模块 -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${springframework.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>${springframework.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${springframework.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${springframework.version}</version>
    </dependency>
</dependencies>
<build>
<finalName>springMVC</finalName>
</build>

2, WEB-INF目录下: web.xml,dispatcher-servlet.xml

a, web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>

b, dispatcher-servlet.xml

<?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: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/context
        http://www.springframework.org/schema/context/spring-context-4.0.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">

    <!-- 标签将使用启动Spring MVC的注解扫描功能 -->
    <context:component-scan base-package="a" />

    <!-- 默认的注解映射的支持 -->
    <mvc:annotation-driven/>

    <!-- 配置视图解析器 如何把handler 方法返回值解析为实际的物理视图 -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name = "prefix" value="/WEB-INF/views/"></property>
        <property name = "suffix" value = ".jsp"></property>
    </bean>
</beans>

3, index.jsp 和 a.HelloController.java

index.jsp

<a href="hello"><h1>hello,click this!</h1></a>

a.HelloController.java

package a;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@Controller
public class HelloController {
    @RequestMapping(value = "/hello", method = {RequestMethod.GET})
    public ModelAndView successModel(HttpServletRequest request, HttpServletResponse reponse) {
        ModelAndView mav = new ModelAndView();
        request.setAttribute("message", "你好, hello springmvc !");
        mav.addObject("hello");
        return mav;
    }
}

猜你喜欢

转载自blog.csdn.net/eyeofeagle/article/details/86311138