后端开发总结
文章平均质量分 75
Hello_xzy_Word
学如逆水行舟,不进则退
展开
-
Spring Cloud 如何基于 Endpoint 以及 @Scope 实现的热刷机制?
Spring Cloud 如何基于 Endpoint 以及 @Scope 实现的热刷机制?为什么 Config 通过引入 Actuator 可以实现在不重启的情况下刷新配置?原创 2022-10-11 14:28:12 · 786 阅读 · 1 评论 -
RestTemplate使用:如何更优雅的接收泛型数据?
本文简单记录了 RestTemplate 接收泛型数据的方式原创 2022-03-30 10:49:36 · 2127 阅读 · 0 评论 -
基于 Docker 环境搭建 Zookeeper 集群
基于 Win10 + Docker 环境,搭建 Zookeeper 集群原创 2022-02-15 13:52:40 · 2623 阅读 · 0 评论 -
Docker 环境下的 Nacos 持久化
在 Win10 + Docker 环境下实现 Nacos 持久化原创 2022-01-27 13:03:38 · 2381 阅读 · 0 评论 -
Spring依赖注入之@Lookup注解
当一个单例Bean需要依赖一个原型Bean...原创 2021-12-25 23:38:24 · 812 阅读 · 0 评论 -
使用Redis官方镜像创建容器找不到配置文件问题解决
Redis容器添加配置文件问题描述使用官方Redis镜像,创建、启动Redis容器,找不到配置文件。docker run -itd --name redis-test -p 6379:6379 redis解决方案之所以找不到配置文件,是因为官方Redis镜像本来就没有配置文件。对此有以下两种解决方案:创建容器时从宿主机映射配置文件至容器使用Dockerfile定制自己的Redis镜像方案一:映射配置文件停止旧容器# 罗列当前docker container ls -a#原创 2021-08-26 16:58:23 · 4098 阅读 · 0 评论 -
为什么要避免使用 select * ?
为什么要避免使用 select * ?很少有需要同时获取所有字段数据的情况,此时使用 selec * 会将不需要的字段一并查出,浪费系统资源,降低查询效率。可读性低(无法直观的知道查询是为了获取哪些数据)更难使用到索引验证有tbl_student_card表:在card_id、student_id字段上创建复合索引:CREATE INDEX idx_cardid_studentid ON tbl_student_card(card_id,student_id)查询1:没有使用到索引原创 2021-05-12 10:58:41 · 1586 阅读 · 0 评论 -
Spring MVC form-date 日期传输问题
Spring MVC form-date 日期传输问题文章目录Spring MVC form-date 日期传输问题方法总结1. @DateTimeFormat注解 + 字符串2. @InitBinder3. 全局类型转换器问题重现接口测试1:发送时间戳接口测试2:发送字符串方法总结SpringMVC接收form-date中的日期数据时,系统抛出了格式转换异常,解决方式有如下几种:1. @DateTimeFormat注解 + 字符串后端使用@DateTimeFormat注解标注Date字段,for原创 2021-01-19 15:28:58 · 1674 阅读 · 0 评论 -
foreach + remove = ConcurrentModificationException
foreach + remove = ConcurrentModificationException问题:List<String> list = new ArrayList<>();list.add("0");list.add("1");list.add("2");list.add("3");for (String s : list) { if (条件语句) { list.remove(s); }}在上述代码的 if 语句中依次使原创 2021-01-05 22:34:31 · 153 阅读 · 2 评论 -
UNIX 与 WINDOWS 文本换行的差异
UNIX 与 WINDOWS 文本换行的差异闲来无事翻了翻《Java开发手册》,就看到了下面这条规约:【强制】IDE 的 text file encoding 设置为 UTF-8;IDE 中文件的换行符使用 UNIX 格式,不要使用 WINDOWS 格式。手册并未对该条规约进行解释,于是试着自己上网搜寻答案,下面是简单的记录与总结:在计算机出现之前,有一种叫做电传打字机(Teletype Model 33)的打字机器。这种设备每秒可以打10个字符,但是存在一个问题:每打完一行都需要花费0.2原创 2021-01-04 21:14:50 · 398 阅读 · 0 评论 -
Spring MVC 实体参数默认值设置
Spring MVC 实体参数默认值设置一、实体参数赋值过程Controller:@RestController@RequestMapping("test/")public class TestController { @PostMapping("post_test2") public Message postTest(@RequestBody QueryConditionsDTO qc) { return MessageBox.ok(qc);原创 2021-01-04 15:49:24 · 7264 阅读 · 5 评论 -
Spring MVC Unauthorized问题
Spring MVC Unauthorized问题接口源码:@RestController@RequestMapping("user/")@Api(tags = "用户管理")public class UserController { private final UserService userService; @Autowired public UserController(UserService userService) { this.userSer原创 2020-12-15 09:44:58 · 742 阅读 · 2 评论 -
ArrayList不同遍历方式的效率比较
遍历ArrayList的效率问题“如果需要遍历List集合元素,对于 ArrayList、Vector 集合,则应该使用随机访问方法(get)来遍历集合元素,这样性能更好。对于 LinkedList 集合,则应该采用迭代器(Iterator)来遍历集合元素”——《疯狂Java讲义》验证package com.learn.java;import java.util.ArrayList;import java.util.List;/** * @author xzy * @date 2020原创 2020-12-06 22:16:48 · 395 阅读 · 0 评论 -
Spring Data JPA 控制台打印格式化SQL语句
Spring Data JPA 控制台打印格式化SQL# 开启控制台SQL打印spring.jpa.show_sql = true# 开启SQL格式化spring.jpa.properties.hibernate.format_sql = true使用效果:Hibernate: select studentent0_.id as id1_2_, studentent0_.age as age2_2_, studentent0_.cre原创 2020-11-30 10:57:14 · 4077 阅读 · 0 评论 -
Oracle 日期格式化异常:无效数字
Oracle 时间格式化 无效数字字段名 类型 备注 flightDate varchar 格式:yyyy-mm-dd hh24:mi:ss 查询语句: select TO_CHAR(xxx.flightDate,'hh24:mi')from xxx 查询结果: SELECT TO_CHAR(HANDOVER_TIME,'hh24:mi') FROM "T_DOA_FLIGHT_BIZ" W...原创 2020-10-28 18:38:51 · 5527 阅读 · 0 评论 -
BigDecimal 类的 compareTo() 和 equals()方法
BigDecimal 类的 compareTo() 和 equals()方法1. compareTo()源码 /** * Compares this BigDecimal with the specified BigDecimal. * Two BigDecimal objects that are equal in value but have * a different scale (like 2.0 and 2.00) are considered equal原创 2020-09-08 15:59:23 · 1021 阅读 · 0 评论 -
Java Calendar 时间“误差”问题
使用Calendar计算日期需要注意的问题1. Calendar.getInstance()方法相关源码:Gets a calendar using the default time zone and locale. The Calendar returned is based on the current time in the default time zone with the default FORMAT locale.Returns: a Calendar.public static原创 2020-08-27 18:30:50 · 1280 阅读 · 0 评论 -
获取系统当前日期
获取系统当前日期有些时候,我们只需要获取当前的年月日信息,在一些老的系统中,可能使用如下语句:public class Main { public static void main(String[] args) { Date today = new Date(); today.setHours(0); today.setMinutes(0); today.setSeconds(0); }原创 2020-08-25 15:21:38 · 1438 阅读 · 0 评论 -
拼接String集合中的字符串_基于Stream
拼接String集合中的字符串现有字符串集合 “张三” 、“李四” 、“王五”、“”、null,现需要将集合中的字符串以逗号隔开,拼接成一个字符串。public class Main2 { public static void main(String[] args) { Set<String> studentNameSet = new HashSet<>(5); studentNameSet.add("张三"); stu原创 2020-08-18 10:55:45 · 1378 阅读 · 0 评论 -
Spring MVC 数据返回问题记录
Spring MVC 数据返回问题记录1. 返回值解析异常——“No converter found…”异常信息:Resolved [org.springframework.http.converter.HttpMessageNotWritableException: No converter found for return value of type: class com.example.demo.entity.Student]过程回顾:有一Student类,代码如下:/** *原创 2020-08-16 16:39:13 · 201 阅读 · 0 评论 -
实体转JSON时,值为null的字段的丢失问题
实体转JSON时,值为null的字段丢失问题有一实体类,其代码如下:@Datapublic class StudentEntity implements Serializable { private static final long serialVersionUID = 2127997065197153097L; private String name; private String sex; private Integer age; pri原创 2020-08-10 23:13:31 · 4519 阅读 · 0 评论 -
使用“流”抽取对象数据
抽取对象数据_流@Data@NoArgsConstructor@AllArgsConstructorpublic class Student{ private String studentId; private String studentName;}实例1:抽取学生IDList<Student> studentList = studentRepository.findAll();Set<String> studentIdSet = student原创 2020-07-06 18:40:48 · 208 阅读 · 0 评论 -
MySQL uuid()函数生成的UUID的长度问题
MySQL uuid()函数生成的UUID的长度问题错误重新有一user表,表结构信息如下:现在尝试执行以下SQL语句,向user表插入一条数据:INSERT INTO `user` VALUES ( UUID(),"肖zy",22 )上述SQL语句执行时产生以下错误信息:INSERT INTO `user` VALUES ( UUID(),"肖zy",22 )> 1406 - Data too long for column 'id' at row 1> 时间: 0s原创 2020-05-21 20:55:29 · 6715 阅读 · 0 评论 -
并发与并行
并发与并行如果某个系统支持两个或者多个动作(Action)同时存在,那么这个系统就是一个并发系统。如果某个系统支持两个或者多个动作(Action)同时执行,那么这个系统就是一个并行系统。在并发程序中可以同时拥有两个或者多个线程。这意味着,如果程序在单核处理器上运行,那么这两个线程将交替地换入或者换出内存。这些内存是同时“存在”的——每个线程都处于执行过程中的某个状态。如果程序能够并行执行,那么就一定是运行在多核处理器上。此时,程序中的每个线程都将分配到一个独立的处理器核上,因此可以同时运行。“并行原创 2020-05-17 15:34:00 · 155 阅读 · 0 评论 -
Spring Data Jpa 动态查询
在实际应用中,经常会有需要使用到动态查询的地方,如上图所示。以下将使用一个例子来说明我是怎么使用Spring Data Jpa 实现动态查询的。数据库中有student表:现需要实现student表的动态查询功能,可能的查询条件有:id、name、age、sex、address、phone。代码实现:1、student表对应的实体类package com....原创 2019-09-06 17:30:36 · 432 阅读 · 0 评论 -
Spring Data Jpa使用总结——使用@Query返回指定json格式的数据
数据库中有student表:表中有数据:现需要获取表中name和address字段的值,并以下列json格式返回:编写代码:1、student表对应的实体类package com.example.demo;import lombok.Data;import javax.persistence.Column;import javax.persist...原创 2019-09-05 21:30:57 · 4099 阅读 · 0 评论 -
好用的Message以及MessageBox工具类
package com.example.util.msg;import lombok.Data;@Datapublic class Message { /** * 状态码 1:成功, 0:失败 */ public static final int STATUS_OK = 1; public static final int STATUS_F...原创 2019-09-05 20:40:06 · 434 阅读 · 0 评论 -
SpringBoot配置文件实现数据库连接
spring: datasource: url: jdbc:mysql://127.0.0.1:3306/database1?useUnicode=true&characterEncoding=UTF-8&useSSL=false driver-class-name: com.mysql.jdbc.Driver username: root ...原创 2019-09-05 20:38:21 · 3883 阅读 · 0 评论