ssm框架整合(项目步骤)下

简介: ssm框架整合(项目步骤)

8,Spring MVC框架中的数据格式转换


1.在添加用户功能中输入新增用户信息,点击保存之后系统报错

400状态码:客户端发送的请求格式不正确

控制台:BindException异常

16a21fd367d6226620f1f9335f6c629b_6b60b73859324a259551b6c2cd1ae0a1.png

在Spring MVC中时间数据无法实现自动转换绑定

解决方案

必须要手动配置自定义数据类型的绑定才能实现该功能

数据转换和格式化

72dff3aa9ecadf8dc7bc0bc9b309394a_2d956ed88de8418f8045f62364be7f60.png

2.DataBinder

数据绑定的核心组件

核心调度


3.ConversionService

Spring类型转换体系的核心接口

解决form表单中时间格式字符串转换为Date类型数据的问题


4.Validator:数据校验


5.BindingResult

包含已完成数据绑定的入参对象和相应的校验错误对象


配置mvc:annotation-driven/标签会注册一个默认的ConversionService实例,使得方法入参绑定能够支持注解驱动的功能,因此可以通过格式化注解来解决日期的转换问题


  1. 使用自定义的数据格式转换器实现日期类型数据绑定的功能
  2. Converter转换器

作用:把数据从一种类型转换成另一种类型

方法:convert()

  1. 实现步骤

创建自定义数据格式转换器

装配自定义的ConversionService

使用@InitBinder装配自定义编辑器

创建BaseController.java


@InitBinder
public void initBinder(WebDataBinder dataBinder){
    logger.info("进入BaseController的initBinder方法");
    dataBinder.registerCustomEditor(Date.class, new  CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true));
}


9,使用Spring MVC实现单文件上传


9.1,实现步骤

1.导入依赖jar包

<!-- commons 文件上传jar -->
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>1.4</version>
    </dependency>
    <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.3.1</version>
    </dependency>


2.配置MultipartResolver解析器

<!--  配置multipartResolver,用于上传文件,使用spring的CommonsMultipartResolver  -->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="maxInMemorySize" value="5000000"></property>
        <property name="defaultEncoding" value="UTF-8"></property>
    </bean>


3.编写Controller 层

@RequestMapping("/addsysUser")
    public String addsysUser(SysUser sysUser, HttpServletRequest request, MultipartFile photo){
        String fileType = photo.getOriginalFilename();
        int index = fileType.lastIndexOf(".");
        fileType = fileType.substring(index);
        String path = request.getSession().getServletContext().getRealPath("static"+ File.separator+"uploadfiles");
        long filename = System.currentTimeMillis();
        System.out.println(path);
        System.out.println(fileType);
        System.out.println(path+"\\"+filename+fileType);
        File file = new File(path+"\\"+filename+fileType);
        try {
            photo.transferTo(file);
        } catch (IOException e) {
            e.printStackTrace();
        }
        sysUser.setAvatar(filename+fileType);
        sysUserService.addSysUser(sysUser);
        return "redirect:/sysUserController/sysUser";
    }


4.编写jsp

<%--
  Created by IntelliJ IDEA.
  User: lenovo
  Date: 2023/6/29
  Time: 15:49
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<!--  一定要在from加enctype -->
<form method="post" action="/sysUserController/addsysUser" enctype="multipart/form-data">
    用户名<input type="text" name="userName"><br>
    昵称<input type="text" name="nickName"><br>
    密码<input type="text" name="password"><br>
    账号状态<input type="text" name="status"><br>
    邮箱<input type="text" name="email"><br>
    手机号<input type="text" name="phonenumber"><br>
    用户性别<input type="text" name="sex"><br>
    头像<input type="file" name="photo"><br>  // 注意用file
    用户类型<input type="text" name="userType"><br>
    创建人的用户id<input type="text" name="createBy"><br>
    创建时间<input type="text" name="createTime"><br>
    更新人<input type="text" name="updateBy"><br>
    更新时间<input type="text" name="updateTime"><br>
    删除标志<input type="text" name="delFlag"><br>
    <input type="submit">
</form>
</body>
</html>


0fd053e71a2efa2ed94395c53a922f5f_3bbb45f81bf1479da47301bac20ef234.png


结束!!!!


相关文章
|
2月前
|
Java 数据库连接 Maven
手把手教你如何搭建SSM框架、图书商城系统案例
这篇文章是关于如何搭建SSM框架以及实现一个图书商城系统的详细教程,包括了项目的配置文件整合、依赖管理、项目结构和运行效果展示,并提供了GitHub源码链接。
手把手教你如何搭建SSM框架、图书商城系统案例
|
1月前
|
Java 应用服务中间件 数据库连接
ssm项目整合,简单的用户管理系统
文章介绍了一个使用SSM框架(Spring、SpringMVC、MyBatis)构建的简单用户管理系统的整合过程,包括项目搭建、数据库配置、各层代码实现以及视图展示。
ssm项目整合,简单的用户管理系统
|
15天前
|
前端开发 Java 关系型数据库
【保姆级SSM教程】高并发朋友圈点赞项目设计
【保姆级SSM教程】高并发朋友圈点赞项目设计
23 0
|
15天前
|
SQL Java 数据库连接
快速搭建SSM项目【最全教程】~令狐小哥版
快速搭建SSM项目【最全教程】~令狐小哥版
18 0
|
2月前
|
Java 数据库连接 Spring
后端框架入门超详细 三部曲 Spring 、SpringMVC、Mybatis、SSM框架整合案例 【爆肝整理五万字】
文章是关于Spring、SpringMVC、Mybatis三个后端框架的超详细入门教程,包括基础知识讲解、代码案例及SSM框架整合的实战应用,旨在帮助读者全面理解并掌握这些框架的使用。
后端框架入门超详细 三部曲 Spring 、SpringMVC、Mybatis、SSM框架整合案例 【爆肝整理五万字】
|
1月前
|
XML Java 数据库连接
如何搭建SSM框架、图书商城系统
这是一份详尽的《Spring + SpringMVC + Mybatis 整合指南》,作者耗时良久整理出约五万字的内容,现已经全部笔记公开。此文档详细地介绍了如何搭建与整合SSM框架,具体步骤包括创建Maven项目、添加web骨架、配置pom文件以及整合Spring、SpringMVC和Mybatis等。无论是对初学者还是有一定基础的开发者来说,都是很好的学习资源。此外,作者还提供了项目源码的GitHub链接,方便读者实践。虽然当前主流推荐学习SpringBoot,但了解SSM框架仍然是不可或缺的基础。
26 0
|
2月前
|
Java 应用服务中间件 Maven
Mac使用Idea配置传统SSM项目(非maven项目)
Mac使用Idea配置传统SSM项目(非maven项目)
46 1
|
2月前
|
Java 数据库
使用ssm框架搭建的图书管理系统
本文介绍了使用SSM框架搭建的图书管理系统,包括图书信息管理、借阅记录管理、公告管理、出入库管理以及用户管理等功能。
使用ssm框架搭建的图书管理系统
|
4月前
|
前端开发 JavaScript Java
计算机Java项目|SSM智能仓储系统
计算机Java项目|SSM智能仓储系统
|
2月前
|
SQL Java 应用服务中间件
使用SSM搭建图书商城管理系统(完整过程介绍、售后服务哈哈哈)
这篇文章是关于如何使用SSM框架搭建图书商城管理系统的教程,包括完整过程介绍、常见问题解答和售后服务,提供了项目地址、运行环境配置、效果图展示以及运行代码的步骤。
使用SSM搭建图书商城管理系统(完整过程介绍、售后服务哈哈哈)