SpringMVC架构理论基础
SpringMVC 框架是一个基于 Java 的开源框架,属于 Spring 框架的一部分,旨在开 发基于 MVC 设计模式的 Web 应用程序。它的可扩展性、灵活性和可制定性使其在企业 级的开发中得到了广泛的应用。
在 SpringMVC 框架中,其核心组件是 Controller,即控制器。它负责接收来自客户端 的请求,并根据所请求的 URL 路径,将请求分发到相应的处理程序方法。这种映射关 系是通过配置文件或者注解来定义的。它的功能基本与之前使用过的 Servlet 有异曲同 工之处,但是比 Servlet 更加方便易用。除此之外,SpringMVC 还以 Controller 为核心, 提供了一系列支持组件来共同维护控制器的功能。 相较于其他 Web 框架,SpringMVC 框架具有许多优势。它具有高度的灵活性,可 以便捷地与 MyBatis、Hibernate 和 JSP 等其他技术进行集成,这使得开发人员可以根 据实际需求去选择最适合的方案,从而提高开发效率与质量。 SpringMVC 框架提供了多种视图解析器(View Resolver),清晰且高效地将处理 结果转换为各种格式,如 HTML、XML 或者 JSON 等。根据不同的要求,相关技术人 员可以返回不同的数据类型,用起来十分高效。 另外,它还具有强大的数据绑定与验证机制,可独立地将请求参数绑定到模型对 象中并对数据进行校验。这种操作不仅简化了开发人员的工作,同时也提升了系统的 安全性与健壮性。 SpringMVC 框架是一个功能强大且易于使用的 Web 开发框架,非常适合用于企业 级应用的开发。通过合理的配置和使用,其可以快速搭建高性能、高可靠性的 Web 应用 程序。
好了废话不多说,今天就来讲解运用ssm框架需要哪些配置。
1.pom文件
pom文件里主要用来导入一些架包,需要说明下,有些包是必须要导入的,要不然整个项目将无法运行,有些架包则根据自身情况,比如文件上传,实现验证码功能等。
下面是我导入的一些架包,用这些就够了,当然我这里未用到验证码,如果你想制作有验证码功能,则去官网复制相应包即可,这里我就不多说了。
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- javaweb集成包 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
<!-- mysql 驱动包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql-version}</version>
</dependency>
<!-- spring-spingmvc-mybatis 相关jar文件 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.9</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.7</version>
</dependency>
<!-- lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>RELEASE</version>
<scope>compile</scope>
</dependency>
<!-- 数据源 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.2.8</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.6</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.58</version>
</dependency>
<!-- 实现图片上传功能的依赖包-->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>mysql</groupId>-->
<!-- <artifactId>mysql-connector-java</artifactId>-->
<!-- <version>8.0.20</version>-->
<!-- </dependency>-->
<!-- 验证码-->
<dependency>
<groupId>com.github.penggle</groupId>
<artifactId>kaptcha</artifactId>
<version>2.3.2</version>
</dependency>
</dependencies>
2.resources路径下的文件配置
首先是db(后面再讲mapper),这里主要是写入数据库的相关配置,如下图
druid.driverClassName=com.mysql.jdbc.Driver
druid.url=jdbc:mysql://localhost:3306/ssm?characterEncoding=utf8&useSSL=false
druid.username=root
druid.password=1234
mybatis-config.xml,这个文件里不需要额外添加代码,默认的就行,不影响。
spring.xml里面要配置实体类和mapper扫描器,以至于程序在运行的时候可以扫描到这些文件。
具体配置如下
springmvc里面主要配置的是前端扫描驱动以及一些css前端样式。第一个代表找到web-inf下的jsp.第二个代表运行后再网页栏上输入的jsp页面名称,这里如果配置了,在网页上比如输入table.jsp页面时,则只需要输入table即可,后面不用加.jsp,否则会显示找不到。
样式配置
注:你要给项目装饰的所有样式均可放置在webapp目录下
sprinmvc2.xml是我单独创建的一个视图解析器,没什么影响,里面放置内容如下
好了,springmvc里面的大致配置就这么多,最后还有一个mapper,它里面呢主要是关于一些数据库配置,增删改查方面的,调用dao层来实现增删改查。
OK,看到这里你已经很棒了,如有讲的不正确的地方还请指教。重在实践,希望大家可以自己搭建一个小页面试试看。