阶段十-物业项目

可能遇到的错误:

解决jdk17javax.xml.bind.DatatypeConverter错误

<!--解决jdk17javax.xml.bind.DatatypeConverter错误-->
        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.3.0</version>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-impl</artifactId>
            <version>2.3.0</version>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-core</artifactId>
            <version>2.3.0</version>
        </dependency>
        <dependency>
            <groupId>javax.activation</groupId>
            <artifactId>activation</artifactId>
            <version>1.1.1</version>
        </dependency>

jdk8日期类序列化问题

在实体类属性中设置注解

//解决jdk8日期序列化问题
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    @JsonSerialize(using = LocalDateTimeSerializer.class)

mapper映射文件对应失败

三个方面:

第一个方面:

mapper包扫描:

1.写在securityConfig上

2.写在springboot主方法上

@MapperScan("com.sh.wy.*.mapper")

第二个方面:

如果不使用在resources中使用xml

要在pom文件中设置资源映射

<resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.yml</include>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes> <include>**/*.yml</include>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
        </resources>

第三个方面:

application.yml中设置mybatis-plus:

权限集合无法进行序列化:

在授权时,我们不能直接序列化集合<SimpleGrantedAuthority>

可以在设置一个属性也存储权限信息,但是是字符串类型的,可以进行序列化

在redis中使用menus来存储授权信息

工具类补充:

Hutool工具类:

Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。

api链接:

入门和安装 (hutool.cn)

数据库相关:

Linux:安装redis,配置静态ip,运行redis

redis:可视化工具软件:

连接Linux

后端知识补充:

密码加密

加密总体分为三大类:

        摘要加密(常见的有MD5,SHA,16进制编码,Base64编码)

  • 摘要加密也经常配合其他加密方式使用

    • 不可逆

    • 没有密钥

    • 对原文按照一定方式生成密文,原文一样,密文一样,原文不同,密文不同。

  • 对称加密(常见的有:DES,AES)

    • 加密和解密的钥匙是同一个

    • 可逆运算,相对不安全

  • 非对称加密(常见的有数字签名,RSA)

    • 加密和解密用的钥匙不是同一个,是两个,且必须是同一对

    • 公钥加密,私钥解密;私钥加密,公钥解密。

前端知识补充:

前端缓存对象:

1.cookie cookie不支持跨域携带

2.sessionStorage 关闭浏览器自动销毁缓存

3.localStorage 关闭浏览器不会销毁缓存

es6导出语法:

直接导入(不需要导出),一般用于css文件,js文件导入直接运行

默认导出导入

export default {}  导入一个匿名对象

import 对象名字 from '上面匿名导出的文件名字'

按需导入导出

export function A

export function B

import {A,B} from '文件'

Less语法:

Less 快速入门 | Less.js 中文文档 - Less 中文网

中间在设置样式的时候使用到了less嵌套

举个例子:

css代码:

#header {
  color: black;
}
#header .navigation {
  font-size: 12px;
}
#header .logo {
  width: 300px;
}

less用法:

#header {
  color: black;
  .navigation {
    font-size: 12px;
  }
  .logo {
    width: 300px;
  }
}

登录功能:

后端功能:

springSecurity一套流程,详情见阶段十springSecurity复习

Jwt认证流程

前端页面:

element-Ui

Element - 网站快速成型工具

样式,布局官网都有,

这里用到了一个输入校验,红框所示

详细功能:

主页功能分析:

admin下拉退出登录,springSecurity中有

强调一下路由功能:

vue中主张单页面开发,通过路由功能可以实现

路由简单回顾:

路由配置,路由路径设置

各个功能 

这些基本都是增删改查

后端:

使用myBatis-plus就可实现

但对于一些业务需要自己封装方法

注意实体类的属性,有些实体类在数据库中并没有这些字段,但是业务需要,可设置

@TableField(exist = false)

前端:

element-UI : 表格 , 表单 , 分页  ,按钮 ,面包屑

封装方法时注意对应的事件,状态改变的事件

前端传递数据时,axios默认使用的json格式的数据,后端要接收时要使用

@RequestBody注解

前端封装请求方法时,async 可以实现同步方法,调用方法时使用await来调用

前端也可以封装工具类,通过按需导入使用其中的方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/269429.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用 fixture 机制重构 appium_helloworld

一、前置说明 在 pytest 基础讲解 章节,介绍了 pytest 的特性和基本用法,现在我们可以使用 pytest 的一些机制,来重构 appium_helloworld 。 appium_helloworld 链接: 编写第一个APP自动化脚本 appium_helloworld ,将脚本跑起来 代码目录结构: pytest.ini 设置: [pyt…

IntelliJ IDEA插件

插件安装目录&#xff1a;C:\Users\<username>\AppData\Roaming\JetBrains\IntelliJIdea2021.2\plugins aiXcoder Code Completer&#xff1a;代码补全 Bookmark-X&#xff1a;书签分类 使用方法&#xff1a;鼠标移动到某一行&#xff0c;按ALT SHIFT D

机器学习之实验过程01

import pandas as pd import numpy as np import matplotlib.pyplot as plt data_path /home/py/Work/labs/data/SD.csv # 请确保您的数据文件路径是正确的 df pd.read_csv(data_path) df.head() # 创建散点图 # 创建散点图 plt.figure(figsize(10, 6)) plt.scatter…

C语言字符串处理提取时间(ffmpeg返回的时间字符串)

【1】需求 需求&#xff1a;有一个 “00:01:33.90” 这样格式的时间字符串&#xff0c;需要将这个字符串的时间值提取打印出来&#xff08;提取时、分、秒、毫秒&#xff09;。 这个时间字符串从哪里来的&#xff1f; 是ffmpeg返回的时间&#xff0c;也就是视频的总时间。 下…

Go_defer详解

defer 1. 前言 defer语句用于延迟函数的调用&#xff0c;每次defer都会把一个函数压入栈中&#xff0c;函数返回前再把延迟的函数取出并执行。 为了方便描述&#xff0c;我们把创建defer的函数称为主函数&#xff0c;defer语句后面的函数称为延迟函数。 延迟函数可能有输入…

零基础入门网络安全必看的5本书籍(附PDF)

书中自有黄金屋&#xff0c;书中自有颜如玉。很多人学习一门技术都会看大量的书籍&#xff0c;经常也有朋友询问&#xff1a;零基础刚入门&#xff0c;应该看哪些书&#xff1f;应该怎么学&#xff1f;等等问题。今天就整理了5本零基础入门网络安全必看书籍&#xff0c;希望能帮…

WebGL开发地理和地球科学应用

使用WebGL开发地理和地球科学应用可以为学生提供交互式、沉浸式的学习体验&#xff0c;帮助他们理解地球表面的地理特征、地球科学原理以及环境变化。以下是开发地理和地球科学应用的一般步骤&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外…

微信小程序~如何设置页面的背景色

微信小程序~如何设置页面的背景色 众所周知&#xff0c;微信小程序每个页面由.json&#xff0c;.scss&#xff0c;.ts&#xff0c;.wxml这四个文件组成。 有的小伙伴会发现&#xff0c;需要给页面加背景色的时候&#xff0c;只需在此页面的.scss文件中写个page{background-colo…

Java设计模式-桥接模式

目录 一、手机操作问题 二、传统方法 三、基本介绍 四、原理类图 五、使用桥接模式解决手机问题 一、手机操作问题 现在对不同手机类型的不同品牌实现操作编程( 比如 : 开机、关机、上网&#xff0c;打电话等) &#xff0c; 如图: 二、传统方法 传统方案解决手机操作问题分…

2024如果创业适合干什么,普通人如何创业

五行学说是中国古代哲学中的一部分&#xff0c;将世界万物归纳为五种元素&#xff0c;分别是金、木、水、火和土。每个年份的五行组合不同&#xff0c;代表着特定的能量和属性。2024年什么生意好做。 一&#xff0c;物联网科技行业&#xff1a;庚子年的金属性与现代物联网科技的…

【JUnit技术专题】「入门到精通系列」手把手+零基础带你玩转单元测试,让你的代码更加“强壮”(夯实功底篇)

手把手零基础带你玩转单元测试&#xff0c;让你的代码更加“强壮” 前言介绍JUnit是什么&#xff1f;JUnit和xUnit之间的关系 JUnit的基本概念JUnit的特点什么是一个单元测试用例 JUnit的用法JUnit的最佳实践案例分析创建一个类创建 Test Case 类创建 Test Runner 类 JUnit总体…

第11章 GUI Page436 使用缓冲DC, wxBufferedPaintDC

所谓“缓冲DC”&#xff0c;是指将所有图元都先划到一个人眼看不到的“设备上下文”之上&#xff0c;最后再一次性复制到真正的屏幕DC之上&#xff0c;这样我们就看不到中间画的过程了&#xff0c;也就不会感到闪烁了。 注意&#xff0c;这时不能解除ScrolledWindow1的背景擦除…

千帆起航:探索百度智能云千帆AppBuilder在AI原生应用开发中的革新之路

千帆起航&#xff1a;探索百度千帆AppBuilder在AI原生应用开发中的革新之路 1.揭开帷幕&#xff0c;大模型第二次战役 自从 ChatGPT 横空出世后&#xff0c;一石激起千层浪&#xff0c;人工智能也正在从感知理解走向生成创造&#xff0c;这是一个关键里程碑。生成式大模型完成…

[x86汇编语言]从实模式到保护模式第二版

下载汇编器&#xff1a;https://www.nasm.us/pub/nasm/releasebuilds/2.16.02rc6/win64/ mov ax, 0x3f add bx,ax add cx,ax 编译&#xff1a; C:\Users\HP>cd D:\BaiduNetdiskDownload\01b站\lizhong\myasm C:\Users\HP>D: D:\BaiduNetdiskDownload\01b站\lizhong…

H.264宏块(Macroblock)概念(运动估计、变换编码、环路滤波)

参考文章&#xff1a;音视频高手课系列5-h264编码基础(宏块原理) 参考文章&#xff1a;切片slice与宏块&#xff0c;运动矢量 文章目录 使用videoEye分析视频宏块示例H.264宏块概念1. 宏块的定义2. 运动估计3. 变换编码4. 环路滤波5. 注意&#xff1a;宏块的概念既适用于帧内编…

智能优化算法应用:基于侏儒猫鼬算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于侏儒猫鼬算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于侏儒猫鼬算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.侏儒猫鼬算法4.实验参数设定5.算法结果6.…

虚拟机(centos)磁盘空间不够

磁盘空间不够 1.关机 2.打开设置-->硬盘 --> 扩展 3.搞定一半 4.开机进入终端 4.1 查看 lsblk 4.2 加起来 growpart /dev/sda 3 注1&#xff1a; 如果 growpart 提示没有的话需要安装一下 yum -y install cloud-utils-growpart 注2&#xff1a;3前面有个空格 4.3 再次…

java八股 redis

Redis篇-01-redis开篇_哔哩哔哩_bilibili 1.缓存穿透 2.缓存击穿 逻辑过期里的互斥锁是为了保证只有一个线程去缓存重建 3.缓存雪崩 4.双写一致性 4.1要求一致性&#xff08;延迟双删/互斥锁&#xff09; 延迟双删无法保证强一致性 那么前两步删缓和更新数据库哪个先呢&#xf…

实时数据获取:抖音API在电商中的应用与影响

在电商行业高速发展的今天&#xff0c;数据已经成为企业决策和创新的重要驱动力。抖音作为全球最大的短视频平台之一&#xff0c;其根据关键词取商品列表API为电商行业带来了前所未有的机遇和挑战。本文将深入探讨该API在电商行业中的关键作用&#xff0c;以及如何实现实时数据…

day48算法训练|动态规划part09

198.打家劫舍 1. dp数组&#xff08;dp table&#xff09;以及下标的含义 dp[i]&#xff1a;考虑下标i&#xff08;包括i&#xff09;以内的房屋&#xff0c;最多可以偷窃的金额为dp[i]。 2.递推公式 决定dp[i]的因素就是第i房间偷还是不偷。 如果偷第i房间&#xff0c;那么…