【SSM架构】博客系统开发(五)-搭建SpringMVC

1 项目框架的搭建

ssm架构 = spring + springmvc + mybatis

(1) 包结构

总览,以下是项目的文件骨架,接下来我们需要为项目生成画红框的5个文件

在这里插入图片描述

按照图片的目录形式创建文件结构

2 搭建springmvc环境

(1) 建pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
		  <modelVersion>4.0.0</modelVersion>
		  <groupId>com.highcom</groupId>
		  <artifactId>ssm-blog</artifactId>  //这个地方要改成自已的
		  <packaging>war</packaging>
		  <version>0.0.1-SNAPSHOT</version>
		  <properties>
				<spring.version>4.2.0.RELEASE</spring.version>
		  </properties>
		  <dependencies>
		 	    <!-- 添加servlet相关的支持 -->
		  	    <dependency>
		            <groupId>javax.servlet</groupId>
		            <artifactId>javax.servlet-api</artifactId>
		            <version>3.1.0</version>
		            <scope>provided</scope>
		        </dependency>
		         <!-- 添加jsp相关的支持 -->
				<dependency>
		            <groupId>javax.servlet.jsp</groupId>
		            <artifactId>javax.servlet.jsp-api</artifactId>
		            <version>2.3.1</version>
		        </dependency>
		        <!--添加标签库支持 -->
				<dependency>
		            <groupId>javax.servlet</groupId>
		            <artifactId>jstl</artifactId>
		            <version>1.1.2</version>
		        </dependency>
		        <dependency>
		            <groupId>taglibs</groupId>
		            <artifactId>standard</artifactId>
		            <version>1.1.2</version>
		        </dependency>  
		       <!-- 添加spring支持 -->
				<dependency>
		            <groupId>org.springframework</groupId>
		            <artifactId>spring-core</artifactId>
		            <version>${spring.version}</version>
		        </dependency>
		        <dependency>
		            <groupId>org.springframework</groupId>
		            <artifactId>spring-beans</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-context-support</artifactId>
		            <version>4.2.0.RELEASE</version>
		        </dependency>
		        <dependency>
		            <groupId>org.springframework</groupId>
		            <artifactId>spring-web</artifactId>
		            <version>${spring.version}</version>
		        </dependency>  
		   		<!--spring test支持-->
		        <dependency>
		            <groupId>org.springframework</groupId>
		            <artifactId>spring-test</artifactId>
		            <version>${spring.version}</version>
		        </dependency>
		         <!--spring mvc支持-->
		        <dependency>
		            <groupId>org.springframework</groupId>
		            <artifactId>spring-webmvc</artifactId>
		           <version>${spring.version}</version>
		        </dependency>
		        <!--spring 事务管理支持-->
		        <dependency>
		            <groupId>org.springframework</groupId>
		            <artifactId>spring-tx</artifactId>
		            <version>${spring.version}</version>
		        </dependency>		        
		        <!--spring jdbc操作支持-->
		        <dependency>
		            <groupId>org.springframework</groupId>
		            <artifactId>spring-jdbc</artifactId>
		            <version>${spring.version}</version>
		        </dependency>
		        <!--spring aop编程支持-->
		        <dependency>
		            <groupId>org.springframework</groupId>
		            <artifactId>spring-aop</artifactId>
		            <version>${spring.version}</version>
		        </dependency>
		        <dependency>
		            <groupId>org.springframework</groupId>
		            <artifactId>spring-aspects</artifactId>
		            <version>${spring.version}</version>
		        </dependency>
		  </dependencies>
		  <build>
		    <finalName>ssm-blog</finalName>		
		    <plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>3.8.1</version>
					<configuration>
						<source>1.8</source>
						<target>1.8</target>
					</configuration>
				</plugin>
		  	</plugins>
				  	
		  </build>
		</project>

(2) 建 spring-mvc.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/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd
		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.2.xsd">
	<!-- 开启自动扫描,把组件纳入spring管理 -->
	<context:component-scan base-package="com" />
	<!-- 开启注解驱动 -->
	<mvc:annotation-driven />
	<!-- 配置视图解析器 -->
	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/jsp/" />
		<property name="suffix" value=".jsp" />
	</bean>
</beans>

(3) 配置 web.xml

<?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" xmlns:mvc="http://www.springframework.org/schema/mvc"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
         http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">			
  <display-name>blog-douyuzhi</display-name>
  	<!-- 加载spring 容器 -->
	 <context-param>
	    <param-name>contextConfigLocation</param-name>
	    <param-value>
	      classpath:spring/spring-*.xml
	    </param-value>
	 </context-param>	 
	 <!-- 监听器,用来加载spring容器 -->
	 <listener>
	    <listener-class> org.springframework.web.context.ContextLoaderListener  </listener-class>
	 </listener>	 
	 <!-- springmvc 的前端控制器,作用就是把所有的请求交给spring框架去处理 -->
 	 <servlet>
	    <servlet-name>springmvc</servlet-name>
	    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
	    <init-param>
	      <param-name>contextConfigLocation</param-name>
	      <param-value>classpath:spring/spring-mvc.xml</param-value> 
	    </init-param>
	    <load-on-startup>1</load-on-startup>
	  </servlet>
	  <servlet-mapping>
	    <servlet-name>springmvc</servlet-name>
	    <url-pattern>/</url-pattern>
	  </servlet-mapping>
</web-app>

(4) 创建控制层TestController.java

package com.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class TestController 
{
	@RequestMapping("/test")
	public String test(ModelMap m) {
		System.out.println("来过控制层....领导接见了我...");
		
		m.put("msg", "我的springmvc流程走通了");
		m.put("dog", "我从控制层领回来一只叫tom的狗");
		
		return "index";  //==>  /jsp/index.jsp
	}
}

(5) 创建index.jsp

在index.jsp中添加:

<body>
   	<h1> 这是index.jsp</h1>  
    <hr />
    ${msg } <br/>
    ${dog }
</body>

(6) 访问

   从浏览器地址栏输入
   http://localhost:8080/blog-douyuzhi/test  

进行测试,如果能走到 index.jsp 并显示出内容,证明成功
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_35325539/article/details/106829781