Java——后端开发经验总结(持续更新中)
目录
一、判断实体类
二、图片无法正常显示
三、图片路径存储问题
四、xml注释
五、常用快捷键使用
每日三问
重要配置
一、判断实体类
Assert.notNull: 断言某个值是否为空
- 优点:告别了if判断为空。
- 缺点:场景比较单一,基本使用在查询数据库后的实体类判断。
二、图片无法正常显示
情境导入:
部署前后端之后,网页中的图片无法正常显示,其他数据都是获取到了的
原因分析:
在排除前端路径没有写错之后,应该是后端的问题
随即发现后端开放的图片地址写错了!
总结:
- 在部署上线前,记得把这里的文件路径修改好
- 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——后端开发经验总结(持续更新中)相关推荐
- Java自学视频整理(持续更新中...)
1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播客) 张孝祥2010年贺岁视频:Java高新技术 ...
- 《LeetCode 热题 HOT 100》Java答案汇总版---持续更新中
<LeetCode 热题 HOT 100>Java答案汇总版-持续更新中 个人认为<LeetCode 热题 HOT 100>中的题目特别适合算法新手进行一个入门的刷题,而且作者 ...
- 后端开发规范(持续更新中...)
java 对于持久层的实体,使用包装类型,不使用基本类型,也不要设置默认值. 答:有些ORM框架中使用实体去更新字段,会将默认值更新到数据库中.然而数据库中是有有效值的. 设计中类尽量采用单一职责原则 ...
- Python和Scala和Java的语法对照表(持续更新中)
泛型 Scala Java def func1(a:String,b:Long): Tuple2[String,Long] = { val random=new Random() ...
- Java基础细节(持续更新中)
一.JDK 和 JRE 二.开发步骤 步骤: 1. 将 Java 代码编写到扩展名为 .java 的文件中. 2. 通过 javac 命令对该 java 文件进行编译. 3. 通过 java 命令对生 ...
- JAVA面试大全(持续更新中...)
本文旨在收集Java面试过程中出现的问题,力求全面,仅作学习交流,欢迎补充,持续更新中-,部分段落选取自网上,部分引用文章已标注,部分已记不清了,如侵权,联系本人 Java基础 1.面向对象的概述 面 ...
- 面试1:Java、微服务、架构常见面试题(持续更新中)
Java.微服务.架构常见面试题(持续更新中) 文章目录 Java.微服务.架构常见面试题(持续更新中) ==**Java**== 1.Java概述 (1)JVM.JRE和JDK (2)Java特点 ...
- 阿里最新面试必备项之Java的String类,持续更新中!
最新腾讯面试必备项之Java的String类,持续更新中! 1.1 String的特性 String类:代表字符串.Java程序中的所有字符串字面值(如"abc")都作为此类的实例 ...
- ③【Java 组】蓝桥杯省赛真题 [黄金连分数][马虎的算式]持续更新中...
个人简介:Java领域新星创作者:阿里云技术博主.星级博主.专家博主:正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ 蓝桥杯真题--持续更新中... ...
- 面试JAVA常被问到的问题(持续更新中)
引言 有的面试会被问到有没有写博客,这时候我尴尬,不知道怎么回答,所以这篇文章仅仅是把我面试JAVA的遇到的问题记录下来而已,也算是我写博客迈出的第一步,起码,以后被问到:有没有写博客?我可以回答,我 ...
最新文章
- netty服务器定时发送消息,netty+websocket+quartz实现消息定时推送
- Unable to load the Wrapper's native library because none of the following files及解决方法
- python functools import wraps_python装饰器中functools.wraps的作用详解
- 8月14日 上课截图
- “我来管管看”系列:如何提高生产计划的实际执行率?
- mysql导入dat文件_MySql导入和抽取大数量级文件数据
- 【安全牛学习笔记】缓冲区溢出
- sodp软件如何导入多个工作面信息_6款堪称业界良心的软件,好用到想为它们疯狂打call!...
- file Java 读取_Java读取文件方法汇总
- 电磁场有限元基本原理(5)
- 使用Photoshop去掉图片上的文字的几种方法
- 西电操作系统:进程程序复习
- 怎么使用oracle的加权平均数_加权平均数与算术平均数的区别,实例比较。
- java实现三进制转十进制
- [转载】中移物联网NB模组注册指令生成小工具-M5310/M5310_A
- android psensor测试,android传感器Gsensor和Psensor的使用举例
- Qt多线程使用 和 信号与槽传参 需要注意的问题
- SSL-ZYC 逃离洞穴
- 怎样把视频中的一小段制作成 GIF动图
- AGE-PERIOD-COHORT (APC) 连续变量和二分类变量分析全代码
热门文章
- 实操-微信小程序渲染html内容
- Linux 文件系统层级标准 Filesystem Hierarchy Standard (FHS)3.0 基本全章节中文翻译
- ETH-23TheDAO
- delta机器人 寸拳_阅读小说 第四十四章 连环寸拳-重生之功夫机器人内容-我就去小说网...
- YOLO 3/4/5/6/7/x、Efficient、MaskRcnn、FasterRcnn、FCOS、SSD、M2Det、Retina、CenterNet、PicoDet等系列数据模型汇总持续更新中
- linux计算字符串个数,Linux 统计某个字符串个数的方法
- 100%国产C2000,P2P替代TMS320F280049C,独立32位双核CPU,主频高达400MHz
- 尼采哲学语录35句,每一句都给人无限启迪
- sql 语句--输入 月份 查日期(年月日),输出 月份
- JS高级程序设计——阅读笔记四