个人错误日志

1、MYSQL

1.1 错误1-1
1、o.h.engine.jdbc.spi.SqlExceptionHelper   : Incorrect string value: '\xF0\xA4\x8B\xAE' for column 'student_name' at row 1
原因:向数据库中插入字符串带有特殊字符比如(🥁),而这些特殊是按照4个字节一个单位进行编码的,而我们使用的utf-8编码在mysql数据库中默认是按照3个字节一个单位进行编码,将该字段的编码修改为utf8mb4即可。
为避免出现这种错误,在设计数据库是,当字段类型为字符串类型时,应将字符集设置为utf8mb4

在这里插入图片描述
在这里插入图片描述

2、springboot

2.1 错误2-1
org.apache.catalina.connector.ClientAbortException: java.io.IOException: 您的主机中的软件中止了一个已建立的连接。
使用POI进行EXCEL导出时,需对null值字段进行处理,比如Integer处理为0,String处理为空白字符串;当出现大量null字段时,可能会导致导出失败。
2.2 文件上传
org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (16551122) exceeds the configured maximum (10485760)

添加配置

import org.springframework.boot.web.servlet.MultipartConfigFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.util.unit.DataSize;

import javax.servlet.MultipartConfigElement;

/**
 * @author zyq
 * @Description 配置上传文件的最大值
 * @createTime 2021年01月22日 17:33:00
 */
@Configuration
public class OssConfig {
    @Bean
    public MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        //单个文件最大值 48MB
        factory.setMaxFileSize(DataSize.ofMegabytes(48));
        // 设置总上传数据总大小
        factory.setMaxRequestSize(DataSize.ofMegabytes(96));
        return factory.createMultipartConfig();
    }

}

3、Mybatis-plus

3.1 乐观锁问题
当更新字段使用了BeanUtils方法时,version字段并不会自增。

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要实现 Django 项目的登录日志,可以按照以下步骤进行: 1. 新建一个模型类,用于存储登录日志信息。例如: ```python from django.db import models from django.contrib.auth.models import User class LoginLog(models.Model): user = models.ForeignKey(User, on_delete=models.CASCADE) login_time = models.DateTimeField(auto_now_add=True) ip_address = models.CharField(max_length=20) ``` 2. 在登录视图中添加记录登录日志的代码。例如: ```python from django.contrib.auth.decorators import login_required from django.contrib.auth import authenticate, login from django.shortcuts import render, redirect from django.utils import timezone from .models import LoginLog @login_required def profile(request): if request.method == 'POST': # 登录表单提交 username = request.POST['username'] password = request.POST['password'] user = authenticate(request, username=username, password=password) if user is not None: login(request, user) # 记录登录日志 LoginLog.objects.create(user=user, login_time=timezone.now(), ip_address=request.META['REMOTE_ADDR']) return redirect('profile') else: # 登录失败 return render(request, 'login.html', {'error_message': '用户名或密码错误'}) else: # 显示个人资料页面 return render(request, 'profile.html') ``` 3. 在管理后台中注册登录日志模型类,以便在后台管理界面中查看登录日志信息。例如: ```python from django.contrib import admin from .models import LoginLog admin.site.register(LoginLog) ``` 4. 在模板中显示登录日志信息。例如: ```html {% extends 'base.html' %} {% block content %} <h2>登录日志</h2> <table> <thead> <tr> <th>用户名</th> <th>登录时间</th> <th>IP地址</th> </tr> </thead> <tbody> {% for log in login_logs %} <tr> <td>{{ log.user.username }}</td> <td>{{ log.login_time }}</td> <td>{{ log.ip_address }}</td> </tr> {% empty %} <tr> <td colspan="3">暂无登录记录</td> </tr> {% endfor %} </tbody> </table> {% endblock %} ``` 这样就可以实现 Django 项目的登录日志功能了。当用户登录成功后,会记录登录时间和 IP 地址,管理员可以在后台管理界面中查看登录日志信息。同时,也可以在模板中显示登录日志信息,以便用户自行查看。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

it00zyq

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值