idea 简单ssm工程搭建(1)
这次只是记录下自己的学习成长(1)。
搭建过程中我参考了https://www.jianshu.com/p/23e58ca14f1c
1:new ->project
2:填写GroupId,ArtifactedId
GroupId:是项目创建团体或组织的唯一标志符,通常是域名倒写,如com.baidu,我这笔创建的groupid是com.SpringMvc
ArtifactedId 是项目artifact唯一的基地址名.如study,study-project
我这次创建的工程名是SpringMvc
3: pom.xml文件添加
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
其中中添加
<spring.version>5.0.5.RELEASE</spring.version>
4:点击 import-changes
此时libraries添加进来了这几个jar包
5:新建main/java下新建com.springmvc 文件夹后新建controller文件夹
6:新建main/resource/下新建spring mvc两个配置文件 (mvc-dispatcher.xml【spring servelet的配置文件,名字可以自己命名】 和全局的spring mvc配置文件applicationContext.xml)
新建步骤如下图
新建好两个spring_mvc配置文件后我们暂不配置
7:webapp/WEB-INF/下新建views文件夹,
webapp/WEB-INF/web.xml 添加配置
<web-app>
<display-name>Archetype Created Web Application</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<!-- 引入了步骤6我们新建的applicationContext.xml-->
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<!-- 字符过滤器 传值乱码-->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!--配置前端控制器 进行请求分发 DispatcherServlet本质也是一个Servlet -->
<servlet>
<!--名字可以自定义-->
<servlet-name>SpringMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<!--引入了6步骤我们新建的mvc-dispatcher.xml文件-->
<param-value>classpath:mvc-dispatcher.xml</param-value>
</init-param>
<!--标记容器启动的时候就启动这个servlet-->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>SpringMVC</servlet-name>
<!--拦截所有-->
<url-pattern>/</url-pattern>
</servlet-mapping>
<!--配置欢迎页-->
<welcome-file-list>
<welcome-file>/index.jsp</welcome-file>
</welcome-file-list>
</web-app>
8:修改mvc-dispatcher.xml
标签中添加
<!-- 配置包扫描器 -->
<!-- 自动扫描该包,使SpringMVC认为包下用了@controller注解的类是控制器 -->
<context:component-scan base-package="com.cm.controller"/>
<!-- 配置注解驱动 -->
<mvc:annotation-driven/>
<!-- 视图解析器 -->
<!-- 定义跳转的文件的前后缀 ,视图模式配置-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!--前缀,对应于@controller注解修饰的类方法返回值目录-->
<property name="prefix" value="/WEB-INF/views/"/>
<!--后缀,对应于@controller注解修饰的类方法返回的后缀-->
<property name="suffix" value=".jsp"/>
</bean>
其中
定义视图解析器,其中包括前缀和后缀,这样到时候controller返回字符串的时候,就会去/WEB-INF/views/下面找对应字符串名字的jsp文件。所以需要在视图里面创建views路径。
9:com.springmvc.controller下新建MyController.java。
@Controller
@RequestMapping("/developer")
public class MyController {
@GetMapping(path = "/hxy")
public String getHello(){
// 这里的配置跟Mvc-dispatcher里面的视图解析器相呼应,return出去的"hxy" 即为WEB—INF/views/hxy.jsp
return "hxy"; //与9步骤的hxy.jsp相呼应
}
}
9:webapp/WEB-INF/views下新建hxy.jsp
添加
<body>
<h1>
woshi hxy
</h1>
10:运行 配置tomcat
点击Edit Configuration
点击fix 选择SpingMvc:war exploded
点击运行。在跳出的主页里面输入访问地址:http://localhost:8080/developer/hxy