Spring MVC案例

文章目录

  • Spring MVC
  • 基于XML配置与注解的方式使用Spring MVC
    • 一、创建项目SpringMVCDemo01
    • 二、在pom.xml中添加依赖
    • 三、添加项目web功能
    • 四、创建登录页面、登录成功页面、登录失败页面
    • 五、创建登录控制器loginController
    • 六、创建Spring配置文件spring-config.xml
    • 七、创建Spring MVC配置文件spring-mvc-config.xml
    • 八、打开web.xml加载配置文件
    • 九、配置Tomcat服务器
    • 十、添加Tomcat依赖
    • 启动Tomcat服务器,测试登录功能
  • 实战练习
    • 一.设置首页
      • 1.注释web.xml中的首页设置
      • 2.在views下创建index.jsp并编写问候语
      • 3.在LoginController.java控制器里设置主页面
      • 启动服务器
    • 二、实现主页跳转到登录页面功能
      • 在index.jsp页面增加跳转到登录页面功能
      • 在LoginController.java中增加跳转到登录页面方法
      • 启动页面
      • 三、利用SpringMVC配置文件的视图控制器元素实现从主页跳转到登录页面
      • 注释“一、二”中LoginController.java新增的两个方法
      • 在spring-mvc-config.xml定义负责跳转的视图控制器
      • 在此启动服务器
    • 四、添加静态资源,让Spring MVC正确处理
      • 1.在WEB-INF里创建imgs目录并添加图片
      • 2.在spring-mvc-config.xml定义静态资源处理请求
      • 3.修改首页文件,图片源采用虚拟路径,由配置文件映射到真实路径
      • 启动服务器
    • 五、添加CSS样式表和JavaScript脚本文件
      • 1.在WEB-INF下创建css和js目录,并创建index.css和check.js文件
      • 2.在index.jsp中添加css外联index.css
      • 3.在login.jsp中添加js外联check.sj
      • 4.在spring-mvc-config.xml中添加js和css外联文件的路径映射
      • 5.在index.css里编写样式
      • 6.在check.js里编写输入框非空效验
      • 启动服务器
    • 六、请求服务器端返回的简单字符串
    • 1.1、创建获取字符串控制器 GetStringController.java
      • 启动服务器,访问http://localhost:8080/SpringMVCDemo01/getString
    • 七、请求服务器端返回的JSON数据
      • 1.创建用户实体类 - User.java
      • 2.创建获取JSON控制器 GetJsonController.java
      • 3.启动服务器查看结果
    • 八、请求服务器端返回的XML数据
      • 1.创建获取XML控制器 GetXmlController
      • 2.在pom.xml里添加支持
      • 3.将依赖输出到目录
      • 启动服务器查看结果
  • 基于Java配置与注解的方式使用Spring MVC
    • 一、创建Meven项目SpringMVCDemo02
    • 二、在pom.xml里添加依赖
    • 三、创建日志属性文件 log4j.properties
    • 四、创建index.jsp
    • 五、创建配置类SpringMvcConfig
    • 六、创建Web配置类 MyWebInitializer
    • 七、创建问候控制器 HelloController
    • 八、配置Tomcat服务器
    • 九、启动测试
    • 实战练习
        • 创建登录、登录成功、登录失败三个界面
      • 在首页增加跳转登录功能
        • 1.首页增加跳转链接
        • 2.定义视图控制器
        • 3.创建登录控制器 LoginController
      • 启动测试
      • 添加静态资源并显示在首页
        • 1.在imgs目录中 添加一张图片
        • 2.在Spring MVC配置文件里添加静态资源映射
        • 3.在首页里添加图片元素
        • 测试结果

Spring MVC

MVC模型:是一种架构的新模式,本身不引入新的功能,只是帮助我们将开发的结构组织的更加合理。使展示与模型分离,流程逻辑控制、业务逻辑调用与展示逻辑分离。

  • M(model模型):数据模型,包含要展示的数据和业务。
  • V(View视图):用户界面,在界面上展示模型数据。
  • C(Controller控制器):起调度作用,接收用户请求,调用业务处理请求,共享数据模型并跳转界面。

使用方式

  • 基于XML配置与注解的方式使用Spring MVC
  • 基于Java配置与注解的方式使用Spring MVC

基于XML配置与注解的方式使用Spring MVC

一、创建项目SpringMVCDemo01

二、在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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0modelVersion>

    <groupId>net.hw.springgroupId>
    <artifactId>SpringMVCDemo01artifactId>
    <version>1.0-SNAPSHOTversion>

    <properties>
        
        <spring.version>5.3.4spring.version>
    properties>

    <dependencies>
        
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-coreartifactId>
            <version>${spring.version}version>
        dependency>
        
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-beansartifactId>
            <version>${spring.version}version>
        dependency>
        
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-contextartifactId>
            <version>${spring.version}version>
        dependency>
        
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-testartifactId>
            <version>${spring.version}version>
        dependency>
        
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-webartifactId>
            <version>${spring.version}version>
        dependency>
        
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-webmvcartifactId>
            <version>${spring.version}version>
        dependency>
        
        <dependency>
            <groupId>javax.servletgroupId>
            <artifactId>jstlartifactId>
            <version>1.2version>
        dependency>
        
        <dependency>
            <groupId>javax.servletgroupId>
            <artifactId>javax.servlet-apiartifactId>
            <version>3.1.0version>
            <scope>providedscope>
        dependency>
        
        <dependency>
            <groupId>log4jgroupId>
            <artifactId>log4jartifactId>
            <version>1.2.17version>
        dependency>
        
        <dependency>
            <groupId>junitgroupId>
            <artifactId>junitartifactId>
            <version>4.13version>
            <scope>testscope>
        dependency>
    dependencies>
project>

三、添加项目web功能

  • ctrl+shift+alt+s打开界面
    Spring MVC案例_第1张图片
  • 单击右下角“Create Artifact”按钮

四、创建登录页面、登录成功页面、登录失败页面

  • 创建views子包
    Spring MVC案例_第2张图片
    login.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    用户登录
    


用户登录

账号
密码

success.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>


    登录成功


${username},登录成功!

failure.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>


    登录失败


${username},登录失败!

五、创建登录控制器loginController

  • 创建controller子包
    Spring MVC案例_第3张图片
package net.lj.spring.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

import javax.servlet.http.HttpSession;

/**
 * 登录控制器
 */
@Controller
public class LoginController {
   
    @RequestMapping("/login")
    public String login(@RequestParam("username") String username,
                        @RequestParam("password") String password,
                        HttpSession session) {
   
        //将从登录表单获取的用户名写入会话
        session.setAttribute

你可能感兴趣的:(SpringMVC,spring,java,web,mvc)