SpringMVC快速入门加登录流程分析

简介: SpringMVC快速入门加登录流程分析

😀前言

本文是SpringMvc专栏的SpringMVC快速入门加登录流程分析

🧑个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,您的满意是我的动力😉😉


💝SpringMVC快速入门加登录流程分析

💓SpringMVC-快速入门

● 需求说明: 完成一个最基本的测试案例,登录案例, 使用 SpringMVC完成

😀SpringMVC 登录流程分析

🥰SpringMVC 登录-代码实现

  1. 创建 springmvc web 工程并配置 tomcat, 前面我们学习过忘记了或者不知道的可以看我的发过的博客 链接
  2. 导入 SpringMVC 开发需要的 jar

创建 src/applicationContext-mvc.xml 文件

(就是 spring 的容器文件),文件名自己定

<!--配置自动扫描包-->
    <context:component-scan base-package="com.hspedu.web"/>
    <!--配置视图解析器[默认视图解析器]-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!--配置属性suffix 和 prefix-->
        <property name="prefix" value="/WEB-INF/pages/"/>
        <property name="suffix" value=".jsp"/>
        <!--调整优先级-->
        <property name="order" value="10"/>
    </bean>
配置 WEB-INF/web.xml
<servlet>
        <servlet-name>springDispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--解读
        1. 如果我们没有配置 contextConfigLocation
        2. 默认按照这样的位置去定位spring配置文件 /WEB-INF/springDispatcherServlet-servlet.xml
        -->
        <!--配置属性 contextConfigLocation, 指定DispatcherServlet 去操作的spring配置文件-->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:applicationContext-mvc.xml</param-value>
        </init-param>
        <!--在web项目启动时,就自动的加载DispatcherServlet-->
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>springDispatcherServlet</servlet-name>
        <!--说明
        1. 这里我们配置的url-pattern是 / ,表示用户的请求都经过 DispatcherServlet
        2. 这样配置也这次rest 风格的url请求
        -->
        <url-pattern>/</url-pattern>
    </servlet-mapping>
创建login.jsp

这里需要们回顾一下javaweb web工程路径专题

如果不知道或者忘记了 请看我之前写的博客 链接

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>登录</title>
</head>
<body>
<h3>登录页面</h3>
<%--后面我们再填写action
这里需要们回顾一下javaweb web工程路径专题
1. action="login" 表示的url 是 http://localhost:8080/springmvc/login
2. action="/login" 表示的url 是 http://localhost:8080/login
--%>
<form action="login">
    u:<input name="username" type="text"> <br/>
    p:<input name="password" type="password"><br/>
    <input type="submit" value="登录">
</form>
</body>
</html>
创建UserServlet.java类
  1. 如果我们使用了SpringMVC, 在一个类上标识@Controller
  2. 表示将该类视为一个控制器,注入到容器
  3. 比原生servlet开发要简化很多
@Controller
public class UserServlet {
    //编写方法,响应用户的请求
    @RequestMapping(value = "/login")
    public String login() {
        System.out.println("login ok.......");
        return "login_ok";
    }
}
解读
  1. login() 方法是用于响应用户的登录请求
  2. @RequestMapping(value = “/login”)

类似我们以前在原生的Servlet配置 url-pattern, 就是给方法配置一个url映射

  1. 即当用户在浏览器输入 http://localhost:8080/web工程路径/login 就能够访问到login()
  2. return “login_ok”;

表示返回结果给视图解析器(InternalResourceViewResolver), 视图解析器会根据配置,来决定跳转到哪个页面



根据上面的配置 return “login_ok”; 就是转发到 /WEB-INF/pages/login_ok.jsp

创建login_ok.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>登录成功</title>
</head>
<body>
<h1>恭喜 登录成功!</h1>
</body>
</html>
完成登录测试

🤗注意事项和细节说明

  1. 重点学习如何搭建一个 springmvc 项目,初步理解 springmvc 工作流程
  2. 这里的 UserServlet 需要注解成@Controller ,我们称为一个 Handler 处理器
  3. UserServlet 指定 url 时,还可以这样

  1. 关 于 SpringMVC 的 DispatcherServlet 的配置文件

如果不在 web.xml 指 定

applicationContext-mvc.xml, 默认在 /WEB-INF/springDispatcherServlet-servlet.xml 找这个配置文件【简单看下 DispatcherServlet 的源码】。(推荐使用, 我们做下修改 , 并完成测试)

修改 web.xml, 注init-param 配置节点
<servlet>
        <servlet-name>springDispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--
        1. 如果我们没有配置 contextConfigLocation
        2. 默认按照这样的位置去定位spring配置文件 /WEB-INF/springDispatcherServlet-servlet.xml
        -->
        <!--配置属性 contextConfigLocation, 指定DispatcherServlet 去操作的spring配置文件-->
        <!--<init-param>-->
        <!--    <param-name>contextConfigLocation</param-name>-->
        <!--    <param-value>classpath:applicationContext-mvc.xml</param-value>-->
        <!--</init-param>-->
        <!--在web项目启动时,就自动的加载DispatcherServlet-->
        <load-on-startup>1</load-on-startup>
    </servlet>
剪切原 applicationContext-mvc.xml 到 /WEB-INF目录下,

文件名为:你配置的DispatcherSerlvet 名 字 -servlet.xml

😄总结

springMVc的置文件[applcationContet-mvcxmI因为sprineMVc是基于spring的,因此工作原理spring类似

文章到这里就结束了,如果有什么疑问的地方请指出,诸佬们一起来评论区一起讨论😁

希望能和诸佬们一起努力,今后我们一起观看感谢您的阅读🍻

如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞


目录
相关文章
|
8月前
|
设计模式 前端开发 JavaScript
【SpringMVC】工作流程及入门案例
【SpringMVC】工作流程及入门案例
25 0
|
25天前
|
前端开发 Java 定位技术
生活小事件(SpringMVC主要的组件及作用和执行流程)
Spring MVC 的主要组件包括 DispatcherServlet(核心,请求调度)、HandlerMapping(URL 映射到处理器)、HandlerAdapter(统一执行处理器)、Handler(处理业务逻辑,通常为 @Controller 类)、ViewResolver(视图解析)和 View(渲染输出)。通过这些组件的协作,Spring MVC 实现了从接收请求到返回响应的流程,类似于警察处理交通违规的协调过程。
|
6月前
|
JSON 数据格式 容器
SpringMVC运行流程分析之核心流程
SpringMVC运行流程分析之核心流程
17 0
|
4月前
|
前端开发 Java 应用服务中间件
SpringMvc拦截器和手写模拟SpringMvc工作流程源码详解
MVC是一种软件架构的思想,将软件按照模型、视图、控制器来划分。 M: Model,模型层,指工程中的JavaBean,作用是处理数据。 JavaBean分为两类: 1.实体类Bean:专门存储业务数据的,如Student User等 2.业务处理Bean:指Service或Dao对象,专门用于处理业务逻辑和数据访问。
|
5月前
|
开发框架 前端开发 Java
SpringMVC之入门:springmcx工作流程,springmvc的入门,静态资源处理器
SpringMVC之入门:springmcx工作流程,springmvc的入门,静态资源处理器
30 0
|
5月前
|
内存技术
SpringMVC运行流程分析之前置流程
SpringMVC运行流程分析之前置流程
28 0
|
8月前
|
前端开发 Java 数据库连接
【SpringMVC】JSR 303与interceptor拦截器快速入门
JSR 303是Java规范请求(Java Specification Request)的缩写,意思是Java 规范提案。是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求。任何人都可以提交JSR,以向Java平台增添新的API和服务。JSR已成为Java界的一个重要标准。 JSR-303 是JAVA EE 6 中的一项子规范,叫做Bean Validation,Hibernate Validator 是 Bean Validation 的参考实现 . Hibe
|
8月前
|
JSON 前端开发 Java
【SpringMVC】工作流程&入门案例的使用
【SpringMVC】工作流程&入门案例的使用
23 0
|
8月前
|
前端开发 Java 数据库连接
SpringMVC快速入门
SpringMVC快速入门
|
11月前
|
开发框架 前端开发 Java
初识SpringMVC -- SpringMVC快速入门保姆级教程(一)
初识SpringMVC -- SpringMVC快速入门保姆级教程(一)