博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于XML配置方式使用Spring MVC——实战练习
阅读量:3972 次
发布时间:2019-05-24

本文共 7119 字,大约阅读时间需要 23 分钟。

文章目录

任务一、设置项目首页 - index.jsp

1、修改web.xml文件

  • 将设置启动首页注释
    在这里插入图片描述

2、创建首页文件index.jsp

在这里插入图片描述

<%@ page contentType="text/html;charset=UTF-8" language="java" %>    首页    

Hello, Spring MVC World!

3、修改登录控制器【LoginController】

在这里插入图片描述

4、启动服务器,查看效果

在这里插入图片描述

任务二、首页添加登录链接,单击可跳转到登录页面

  • 项目启动,跳转到首页,然后从首页跳转到登录页面,都是通过登录控制器里的跳转方法实现的,跳转方法里没有任何业务逻辑,只有return语句负责页面跳转

1、修改首页文件 【index.jsp】

在这里插入图片描述

2、修改登录控制器 【LoginController】

在这里插入图片描述

4、启动服务器,查看效果

在这里插入图片描述

在这里插入图片描述

  • 正确的用户名:admin 密码:12345
    在这里插入图片描述

在这里插入图片描述

任务三、利用Spring MVC配置文件实现快捷页面跳转

  • 任务二使用的是:项目启动,跳转到首页,然后从首页跳转到登录页面,都是通过登录控制器里的跳转方法实现的,跳转方法里没有任何业务逻辑,只有return语句负责页面跳转,现在我们使用更简单的方法取代,即利用Spring MVC配置文件实现快捷页面跳转

1、修改登录控制器 【LoginController】

  • 将前面添加的映射方法注释掉
    在这里插入图片描述

2、修改Spring MVC配置文件 【spring-mvc-config.xml】

在这里插入图片描述

任务四、添加静态资源,让Spring MVC正确处理

1、添加一张图片

在这里插入图片描述

2、修改首页文件,增加显示图片的元素

在这里插入图片描述

3、启动服务器,查看效果

在这里插入图片描述

4、修改Spring MVC配置文件,单独处理静态资源

在这里插入图片描述

5、 重启服务器,查看效果

在这里插入图片描述

课堂练习:添加CSS样式表和JavaScript脚本文件

任务1、通过css样式设置首页

  • 在WEB-INF里创建css目录,在里面创建样式文件index.css,负责首页的样式(元素全部居中,设置页面背景颜色,去掉超链接的下划线……)
    在这里插入图片描述
  • 编写css样式
    在这里插入图片描述
  • 在index.jsp中建立连接

在这里插入图片描述

  • 修改spring-mvc-config.xml代码
    在这里插入图片描述
  • 运行服务器,查看效果
    在这里插入图片描述

任务2、通过JavaScript脚本文件实现首页样式

  • 在WEB-INF里创建js目录,在里面创建脚本文件check.js,负责登录页面的非空校验(先进行用户名非空校验,后进行密码非空校验)
  • 待更新

任务五、请求服务器端返回的简单字符串

1、创建获取字符串控制器 【GetStringController】

在这里插入图片描述

package net.zjs.spring.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;/** * 功能:获取字符串控制器 * 作者:zjs * 时间:2021/4/12 */@Controllerpublic class GetStringController {    @RequestMapping(value = "/getString",produces = "text/plain;charset=utf-8")    @ResponseBody  //响应征文注解,表明返回字符而不是逻辑视图名    public String getString(){        return "Spring MVC真有意思!";    }}

2、启动服务器,查看结果

  • 访问http://localhost:8080/SpringMVCDemo01/getString

    在这里插入图片描述

  • 思考:字体变粗在此代码中可以实现吗?

    在这里插入图片描述

  • 运行服务器,查看结果,字体变粗了

    在这里插入图片描述

任务六、请求服务器端返回的JSON数据

1、创建用户实体类 【User】

在这里插入图片描述

package net.zjs.spring.bean;import java.util.Date;/** * 功能:用户实体类 * 作者:zjs * 时间:2021/4/12 */public class User {    private int id;    private String username;    private String password;    private String telephone;    private Date registerTime;    private int popedom;    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    public String getUsername() {        return username;    }    public void setUsername(String username) {        this.username = username;    }    public String getPassword() {        return password;    }    public void setPassword(String password) {        this.password = password;    }    public String getTelephone() {        return telephone;    }    public void setTelephone(String telephone) {        this.telephone = telephone;    }    public Date getRegisterTime() {        return registerTime;    }    public void setRegisterTime(Date registerTime) {        this.registerTime = registerTime;    }    public int getPopedom() {        return popedom;    }    public void setPopedom(int popedom) {        this.popedom = popedom;    }    @Override    public String toString() {        return "User{" +                "id=" + id +                ", username='" + username + '\'' +                ", password='" + password + '\'' +                ", telephone='" + telephone + '\'' +                ", registerTime=" + registerTime +                ", popedom=" + popedom +                '}';    }}

2、创建获取JSON控制器 - GetJsonController

在这里插入图片描述

package net.zjs.spring.controller;import net.zjs.spring.bean.User;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import java.util.ArrayList;import java.util.Date;import java.util.List;/** * 功能:获取JSON控制器 * 作者:zjs * 时间:2021/4/12 */@Controllerpublic class GetJsonController {    @RequestMapping    @ResponseBody    public User getJson() {        User user = new User();        user.setId(1);        user.setUsername("张三");        user.setPassword("12345");        user.setTelephone("12345678901");        user.setPopedom(1);        return user;    }    @RequestMapping(value = "/getJsonArray", produces = "application/json; charset=utf-8")    public @ResponseBody    List
getJsonArray() { List
users = new ArrayList
(); User user = new User(); user.setId(1); user.setUsername("萌萌哒"); user.setPassword("12345"); user.setTelephone("15889895678"); user.setRegisterTime(new Date()); user.setPopedom(1); users.add(user); user = new User(); user.setId(2); user.setUsername("李文霞"); user.setPassword("45678"); user.setTelephone("13978783456"); user.setRegisterTime(new Date()); user.setPopedom(1); users.add(user); user = new User(); user.setId(3); user.setUsername("郑智化"); user.setPassword("88888"); user.setTelephone("15890903456"); user.setRegisterTime(new Date()); user.setPopedom(1); users.add(user); return users; }}

3、在pom.xml文件里添加对json的支持

在这里插入图片描述

com.fasterxml.jackson.core
jackson-core
2.9.7
com.fasterxml.jackson.core
jackson-databind
2.9.7
com.fasterxml.jackson.core
jackson-annotations
2.9.7

4、启动服务器,查看结果

  1. 访问 http://localhost:8080/SpringMVCDemo/getJsonArray

在这里插入图片描述

  1. 访问 http://localhost:8080/SpringMVCDemo/getJson

在这里插入图片描述

任务七、请求服务器端返回的XML数据

1、创建获取XML控制器 【GetXmlController】

在这里插入图片描述

package net.zjs.spring.controller;import net.zjs.spring.bean.User;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import java.util.ArrayList;import java.util.Date;import java.util.List;/** * 功能:获取XML控制器 * 作者:zjs * 日期:2021年04月12日 */@Controllerpublic class GetXmlController {    @RequestMapping(value = "/getXml", produces = "application/xml; charset=utf-8")    public @ResponseBody    List
getXml() { List
users = new ArrayList
(); User user = new User(); user.setId(1); user.setUsername("萌萌哒"); user.setPassword("12345"); user.setTelephone("15889895678"); user.setRegisterTime(new Date()); user.setPopedom(1); users.add(user); user = new User(); user.setId(2); user.setUsername("李文霞"); user.setPassword("45678"); user.setTelephone("13978783456"); user.setRegisterTime(new Date()); user.setPopedom(1); users.add(user); user = new User(); user.setId(3); user.setUsername("郑智化"); user.setPassword("88888"); user.setTelephone("15890903456"); user.setRegisterTime(new Date()); user.setPopedom(1); users.add(user); return users; }}

2、在pom.xml文件里添加对xml的支持

在这里插入图片描述

com.fasterxml.jackson.dataformat
jackson-dataformat-xml
2.5.3

3、启动服务器,查看效果

  • 访问 http://localhost:8080/SpringMVCDemo01/getXml
  • 在这里插入图片描述

转载地址:http://bntki.baihongyu.com/

你可能感兴趣的文章
java 使用相对路径读取文件
查看>>
存储过程解锁
查看>>
v$db_object_cache
查看>>
Oracle约束的4种状态小结
查看>>
oracle-ora 各种sql异常描述
查看>>
oracle 基础语法
查看>>
oracle 创建dblink简介
查看>>
log4j配置样例
查看>>
ps 查看linux系统内存及cpu信息
查看>>
ls 详解
查看>>
oracle中TIMESTAMP与DATE比较
查看>>
ORA-00257: archiver error. Connect internal only, until freed
查看>>
JVM监控工具介绍jstack, jconsole, jinfo, jmap, jdb, jstat
查看>>
ssh 远程执行命令简介
查看>>
Java SSH远程执行Shell脚本实现
查看>>
shell入门的拦路虎:syntax error: unexpected end of file
查看>>
oracle之报错:ORA-00054: 资源正忙,要求指定 NOWAIT
查看>>
JAVA中重写equals()方法为什么要重写hashcode()方法?
查看>>
JAVA中运用数组的四种排序方法
查看>>
常见Map 及 ArrayList 是否有序总结
查看>>