目录
用idea中springmvc搭建一个简单的Demo详细步骤
项目源码:
github
(如果细心你会发现,下面截图是springmvc_01,但是源码里是springmvc_02,实际上这两个是一模一样,我只是重新再搭了一次,另取了一个名字)
用idea中springmvc搭建一个简单的Demo详细步骤
File—>new—–>project—->
接下来就是命名项目名称,idea自动下载springmvc需要的jar包,大概几分钟下载好,最后项目结构大概是这样
1,新建一个HelloControl.java
。代码如下(
这里有个深坑
)
package com.itheima.springmvc.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
//import org.springframework.web.portlet.ModelAndView;
//ModelAndView导入包错误,之前我导入的是注释掉的这个包,这是错的,应该是上面那个,坑爹,神坑,新手不知道啊
@Controller
public class HelloControl {
@RequestMapping("hello")
//RequestMapping这个用于绑定请求地址,请求地址就是hello,值就是下面的方法名hello
public ModelAndView hello(){
System.out.println("hello springmvc.");
ModelAndView mav = new ModelAndView();
//设置模型数据,用于传递到jsp
mav.addObject("msg","hello spring.........");
//设置视图名字,用于响应用户。响应一个视图,视图的位置
mav.setViewName("/WEB-INF/jsp/hello.jsp");//设置视图名字,是某一个jsp页面的路径
//返回
return mav;
}
}
2,在WEB-INF下创建文件夹jsp,在jsp中创建文件hello.jsp文件
。这个文件的名称需要与包com.itheima.springmvc.controller中,HelloController类的方法中的返回值”hello”一致。创建完成后结构如下所示:
修改hello.jsp内容
,代码如下:
<%--
Created by IntelliJ IDEA.
User: ee
Date: 2019/3/26
Time: 9:52
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>输出提示</title>
</head>
<body>
<!--下面是El表达式-->
${ msg}
</body>
</html>
3,修改dispatcher-servlet.xml, 配置@Controller处理器,代码如下:
<?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:p="http://www.springframework.org/schema/p"
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-4.0.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">
<!-- 配置@Controller处理器,包扫描器,com.itheima.springmvc.controller是要扫描的包的路径,
这里文件名称也可以改为springmvc.xml也可以不改
配置之后要加载该配置,加载它是在 web.xml 中加载它 -->
<context:component-scan base-package="com.itheima.springmvc.controller" />
</beans>
4,修改web.xml,
加载核心控制器dispatcher,代码如下:
<?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_4_0.xsd"
version="4.0">
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 配置核心控制器dispatcher,这里也可以用别的名字,比如springmvc,但是,这个名字,下面servlet-name的名字,还有-->
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/dispatcher-servlet.xml</param-value>
<!--这里我看的视屏教程里,classpath:WEB-INF/dispatcher-servlet.xml,他是这样干的,他用的是eclipse,
若我这样干,就错了,因为用classpath时,dispatcher-servlet.xml就要放到src目录下,否则就报错了-->
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!--让Spring MVC的前端控制器拦截所有请求-->
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<!--这里用/,之前我按照一个视频教程里的教的,用*.action,报错的时候会很麻烦,用/就会好很多-->
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
配置Tomcat(
tomcat下载安装配置
)
下面一步一不小心会出现一个深坑,你会发现没报错,但是
IDEA配置tomcat的后发现run是灰色(神坑)
别人的教程没说注意这点,结果坑的我欲仙欲死。
之后是这样的界面(配置tomcat的地址):
配置tomcat中jdk
配置Deployment
成功的结果:
并且,IDEA上会出现变化