目录

一、判断实体类

二、图片无法正常显示

三、图片路径存储问题

四、xml注释

五、常用快捷键使用

每日三问

重要配置


一、判断实体类

Assert.notNull: 断言某个值是否为空

  1. 优点:告别了if判断为空。
  2. 缺点:场景比较单一,基本使用在查询数据库后的实体类判断。

二、图片无法正常显示

情境导入:

部署前后端之后,网页中的图片无法正常显示,其他数据都是获取到了的

原因分析:

在排除前端路径没有写错之后,应该是后端的问题

随即发现后端开放的图片地址写错了!

总结:

  • 在部署上线前,记得把这里的文件路径修改好
  • Windows与Linux路径不一样!!!

三、图片路径存储问题

情境导入:

存储图片路径到数据库的时候,mysql报错:data too long for colum....

问题分析:

MySQL数据库中的路径存储类型,我写的是varchar(100)

通过搜索得知:图片路径存储至少要varchar(255)以上

原因分析:

为了节省空间,所以当时给MySQL中的路径存储属性写了varchar(100)

总结:

以后的图片路径存储都设置为varchar(255)以上


四、xml注释

情境导入:

今天一个网友说:要准备删库跑路了!

询问之后,发现就是因为xml注释引发的灾难!

问题分析:

为了方便自己和公司的同事,网友好心在xml写上了如下注释:

原因分析:

  • 注释后面的条件没有换行,把其他条件也给注释了

  • 注释直接把分页的条件给注释掉了,相当于查全表

  • 100多w条数据放在内存里,就直接爆了

总结

  • 使用自动注释:Alt + /

  • xml注释有很多种,编译不会报错(Maven打包也不会报错)!

  • xml开放的注释(专门写SQL的xml)

  • /* 注释 */
    <!-- 注释 -->
    -- 注释

五、常用快捷键使用

功能 快捷键 冲突情况 特殊使用环境
注释代码 Ctrl+ / 当前页面
格式化代码 Ctrl+Alt+L 与QQ锁屏快捷键冲突 当前页面
大小写统一 Ctrl+ Shift + U 常量的命名
快速查找 Ctrl + F 当前页面
快速查看类的结构信息 Alt+7 当前页面

快捷键大全:http://t.csdn.cn/k3Eb3


六、MySQL设置utf8mb4后仍然无法保存emoji表情

情境导入:

今天有用户通过输入框,存储了emoji表情,导致SQL数据库报错:java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\x94'

原因分析:

  • UTF-8编码有可能是两个、三个、四个字节

  • Emoji表情或者某些特殊字符是4个字节

  • 但MySQL的utf8编码最多3个字节,所以数据插不进去

emoji表情:

Java——后端开发经验总结(持续更新中)相关推荐

  1. Java自学视频整理(持续更新中...)

    1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播客) 张孝祥2010年贺岁视频:Java高新技术 ...

  2. 《LeetCode 热题 HOT 100》Java答案汇总版---持续更新中

    <LeetCode 热题 HOT 100>Java答案汇总版-持续更新中 个人认为<LeetCode 热题 HOT 100>中的题目特别适合算法新手进行一个入门的刷题,而且作者 ...

  3. 后端开发规范(持续更新中...)

    java 对于持久层的实体,使用包装类型,不使用基本类型,也不要设置默认值. 答:有些ORM框架中使用实体去更新字段,会将默认值更新到数据库中.然而数据库中是有有效值的. 设计中类尽量采用单一职责原则 ...

  4. Python和Scala和Java的语法对照表(持续更新中)

    泛型 Scala Java def func1(a:String,b:Long): Tuple2[String,Long] =   {     val random=new Random()     ...

  5. Java基础细节(持续更新中)

    一.JDK 和 JRE 二.开发步骤 步骤: 1. 将 Java 代码编写到扩展名为 .java 的文件中. 2. 通过 javac 命令对该 java 文件进行编译. 3. 通过 java 命令对生 ...

  6. JAVA面试大全(持续更新中...)

    本文旨在收集Java面试过程中出现的问题,力求全面,仅作学习交流,欢迎补充,持续更新中-,部分段落选取自网上,部分引用文章已标注,部分已记不清了,如侵权,联系本人 Java基础 1.面向对象的概述 面 ...

  7. 面试1:Java、微服务、架构常见面试题(持续更新中)

    Java.微服务.架构常见面试题(持续更新中) 文章目录 Java.微服务.架构常见面试题(持续更新中) ==**Java**== 1.Java概述 (1)JVM.JRE和JDK (2)Java特点 ...

  8. 阿里最新面试必备项之Java的String类,持续更新中!

    最新腾讯面试必备项之Java的String类,持续更新中! 1.1 String的特性 String类:代表字符串.Java程序中的所有字符串字面值(如"abc")都作为此类的实例 ...

  9. ③【Java 组】蓝桥杯省赛真题 [黄金连分数][马虎的算式]持续更新中...

    个人简介:Java领域新星创作者:阿里云技术博主.星级博主.专家博主:正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ 蓝桥杯真题--持续更新中... ...

  10. 面试JAVA常被问到的问题(持续更新中)

    引言 有的面试会被问到有没有写博客,这时候我尴尬,不知道怎么回答,所以这篇文章仅仅是把我面试JAVA的遇到的问题记录下来而已,也算是我写博客迈出的第一步,起码,以后被问到:有没有写博客?我可以回答,我 ...

最新文章

  1. netty服务器定时发送消息,netty+websocket+quartz实现消息定时推送
  2. Unable to load the Wrapper's native library because none of the following files及解决方法
  3. python functools import wraps_python装饰器中functools.wraps的作用详解
  4. 8月14日 上课截图
  5. “我来管管看”系列:如何提高生产计划的实际执行率?
  6. mysql导入dat文件_MySql导入和抽取大数量级文件数据
  7. 【安全牛学习笔记】缓冲区溢出
  8. sodp软件如何导入多个工作面信息_6款堪称业界良心的软件,好用到想为它们疯狂打call!...
  9. file Java 读取_Java读取文件方法汇总
  10. 电磁场有限元基本原理(5)
  11. 使用Photoshop去掉图片上的文字的几种方法
  12. 西电操作系统:进程程序复习
  13. 怎么使用oracle的加权平均数_加权平均数与算术平均数的区别,实例比较。
  14. java实现三进制转十进制
  15. [转载】中移物联网NB模组注册指令生成小工具-M5310/M5310_A
  16. android psensor测试,android传感器Gsensor和Psensor的使用举例
  17. Qt多线程使用 和 信号与槽传参 需要注意的问题
  18. SSL-ZYC 逃离洞穴
  19. 怎样把视频中的一小段制作成 GIF动图
  20. AGE-PERIOD-COHORT (APC) 连续变量和二分类变量分析全代码

热门文章

  1. 实操-微信小程序渲染html内容
  2. Linux 文件系统层级标准 Filesystem Hierarchy Standard (FHS)3.0 基本全章节中文翻译
  3. ETH-23TheDAO
  4. delta机器人 寸拳_阅读小说 第四十四章 连环寸拳-重生之功夫机器人内容-我就去小说网...
  5. YOLO 3/4/5/6/7/x、Efficient、MaskRcnn、FasterRcnn、FCOS、SSD、M2Det、Retina、CenterNet、PicoDet等系列数据模型汇总持续更新中
  6. linux计算字符串个数,Linux 统计某个字符串个数的方法
  7. 100%国产C2000,P2P替代TMS320F280049C,独立32位双核CPU,主频高达400MHz
  8. 尼采哲学语录35句,每一句都给人无限启迪
  9. sql 语句--输入 月份 查日期(年月日),输出 月份
  10. JS高级程序设计——阅读笔记四