SSM框架 --- SpringMVC --- exercise1

1.创建Maven项目

2.导入依赖(导入SpringMvc与Servlet的坐标):

XML 复制代码
    <dependencies>
<!--servlet依赖的坐标-->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>
<!--springmvc依赖的坐标-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.3.33</version>
        </dependency>
    </dependencies>
<!--Tomcat的插件-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.1</version>
                <configuration>
                    <port>80</port>
                    <path>/</path>
                </configuration>
            </plugin>
        </plugins>
    </build>

servlet的作用:

Servlet主要用于处理客户端传来的Http请求,并返回一个响应。

Servlet是一种独立于平台和协议的服务器端Java技术,用于生成动态的Web页面。它通过创建一个框架来扩展服务器的能力,以提供在Web上进行请求和响应服务。当客户机发送请求至服务器时,服务器可以将请求信息发送给Servlet,并让Servlet建立起服务器返回给客户机的响应。Servlet的主要作用包括:

  1. 接收客户端的请求数据:专门用来接收客户端的请求数据,然后调用底层service处理数据并生成结果。
  2. 生成响应内容:根据客户端的请求,生成响应内容并将其传给服务器。
  3. 与其它服务器资源进行通信 :包括数据库和基于Java的应用程序,进行必要的通信和处理。
  4. 处理多个客户机的连接:接收多个客户机的输入,并将结果广播到多个客户机上,例如,可以作为多参与者的游戏服务器。
  5. 特殊处理:采用MIME类型过滤数据,例如图像转换和服务器端包括(SSI)。
  6. 提供定制处理:将定制的处理提供给所有服务器的标准例行程序,例如,修改如何认证用户。

Servlet的运行环境称为Servlet容器或Servlet引擎,它给发送的请求和响应之上提供网络服务。Servlet不能独立运行,必须被部署到Servlet容器中,由容器来实例化和调用Servlet的方法。Servlet容器在Servlet的生命周期内管理Servlet,如Servlet的创建、使用与销毁等。

3.创建SpringMvc的控制器类

在Controller包下创建UserController控制器类:

java 复制代码
//使用Controller来定义bean
@Controller
public class UserController {
    //设置当前操作的访问路径
    @RequestMapping("/save")
    //设置当前操作的返回值类型
    @ResponseBody
    public String save(){
        System.out.println("user save ...");
        return "'module' : 'springmvc'";
    }
}

4.初始化SpringMvc环境,设置SpringMvc加载对应的Bean

在Config包下创建SpringMvcConfig加载配置类

java 复制代码
//创建SpringMvc的配置文件,加载Controller对应的bean
@Configuration
@ComponentScan("com.itheima.Controller")
public class SpringMvcConfig {
}

5.初始化Servlet容器,加载SpringMvc环境,并设置SpringMvc技术处理的请求

在Config包下创建ServletContainersInitConfig类

java 复制代码
//定义一个servlet容器启动的配置类,在里面加载Spring的配置
public class ServletContainersInitConfig extends AbstractDispatcherServletInitializer {
    //加载SpringMvc容器配置
    @Override
    protected WebApplicationContext createServletApplicationContext() {
        AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
        ctx.register(SpringMvcConfig.class);
        return ctx;
    }
    //设置哪些请求归属SpringMvc处理
    @Override
    protected String[] getServletMappings() {
        return new String[]{"/"};
    }
    //加载Spring容器配置
    @Override
    protected WebApplicationContext createRootApplicationContext() {
        AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
        ctx.register(SpringConfig.class);
        return ctx;
    }
}
相关推荐
不会编程的懒洋洋22 分钟前
Spring Cloud Eureka 服务注册与发现
java·笔记·后端·学习·spring·spring cloud·eureka
赖龙27 分钟前
java程序打包及执行 jar命令及运行jar文件
java·pycharm·jar
U12Euphoria29 分钟前
java的runnable jar采用exe和.bat两种方式解决jre环境的问题
java·pycharm·jar
java小吕布1 小时前
Java Lambda表达式详解:函数式编程的简洁之道
java·开发语言
程序员劝退师_1 小时前
优惠券秒杀的背后原理
java·数据库
java小吕布1 小时前
Java集合框架之Collection集合遍历
java
一二小选手1 小时前
【Java Web】分页查询
java·开发语言
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ1 小时前
idea 弹窗 delete remote branch origin/develop-deploy
java·elasticsearch·intellij-idea
Code成立1 小时前
《Java核心技术 卷I》用户图形界面鼠标事件
java·开发语言·计算机外设
鸽鸽程序猿2 小时前
【算法】【优选算法】二分查找算法(下)
java·算法·二分查找算法