首页 > 其他分享 >知识点汇总

知识点汇总

时间:2024-01-14 20:14:51浏览次数:36  
标签:知识点 java 汇总 idea gradle compile token com

1.类名重复了:项目和子模块中存在类名相同的java类,启动项目的时候会报错。
Caused by: org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name 'MyPurchaseService' for bean class
[com.mytest.service.impl.MyPurchaseService] conflicts with existing,
non-compatible bean definition of same name and class [com.autoyol.insurance.service.pingan.MyPurchaseService]


2.idea创建gradle多模块使用方法,配置文件,扫描包
https://www.cnblogs.com/oktokeep/p/16965441.html
https://www.cnblogs.com/oktokeep/p/17629507.html


3.idea连接数据库,也可以生成代码


4.数据库的E-R图 实体关系图 mysql workbench


5.多数据库源的配置
Not loading a JDBC driver as driverClassName property is null. 解决,数据源的apollo配置。
spring.datasource.driver-class-name = com.mysql.jdbc.Driver
spring.datasource.mydatasourceTwo.driver-class-name = com.mysql.jdbc.Driver


6.子模块中运行没有找到配置文件,是因为缺少了Apollo配置。


7.数据库底层 操作日志表
扩展:对注解符号 io.swagger.annotations.ApiOperation 进行拦截,添加数据库日志。


8.token登录接口开发,postman测试 jwt(去掉~~) 赋值给公共的对象中来获取 当前的登录账号信息,引入redis


9.订单的定时任务,订单状态的流转 未支付/进行中/已完成


10.订单号规则,不能重复。redis去重


11.GlobalRequestExceptionHandler 全局异常类 it
LocalBusinessException 本地该异常类改名称了。 与BusinessException类同名,存在歧义。导致捕获的时候,需要根据Exception实际的classpath的类捕获。
拦截全局的异常信息 GlobalExceptionAdvisor 避免异常信息

12.分页的插件,jar版本的区别。注意gradle jar版本的区别


13.OpenFeign调用远程服务时用GetMapping调用接口时传参用@RequestBody注解 >> 导致yapi没有生成请求参数。 去掉@RequestBody解决
Get请求参数使用?a=1&b=2 接收参数可以使用对象来接收,不用注解@RequestBody 请求参数不能用Body json串的方式来传递。


14.
<T>指定类型,否则会报以下错误:
2024-01-03 11:28:59.464 [http-nio-1278-exec-4] [8d5d894dc1f69be8,8d5d894dc1f69be8] ERROR c.a.c.d.c.ScooterOrderController#submitInsureOrderCommon$original$x0C9yRwt [line:281] -
下单异常:java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to com.mytest.api.vo.res.ProductOnlinesaleVo
泛型对象接收的时候需要指定类型<T> 修改成 <ProductOnlinesaleVo>,这样在接收的时候不会报错。


15.ecodeException: JSON parse error: Can not deserialize instance of java.time.LocalDateTime out of START_ARRAY token; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.time.LocalDateTime out of START_ARRAY token
at [Source: java.io.PushbackInputStream@869d612; line: 1, column: 559] (through reference chain: com.autoyol.insurancedock.api.vo.ResponseVO["data"]->com.autoyol.insurancedock.api.vo.res.CpicCouponOnlinesaleVo["pkgCouponValidReceiveDate"])
加上jar compile ("com.fasterxml.jackson.datatype:jackson-datatype-jsr310")


16.mysql数据库字段扩容
ALTER TABLE auth_code MODIFY COLUMN `ticket_code` VARCHAR(50) DEFAULT NULL COMMENT '券码ID';


17.查看依赖
D:\git\version2\myManageService-service>gradle dependencies >> 1112.txt
排除依赖
项目:myManageService
compile('com.mytest.xxljob:xxljob-starter:2.0.1-SNAPSHOT'){
exclude module: 'xxl-job-core'
}
compile('com.xuxueli:xxl-job-core:2.0.1-SNAPSHOT'){
exclude module: 'jetty-server'
}

18.mysql bigint java用什么存储。 使用long或者BigInteger


19.
@RequestMapping(path = {"/test","/public/test"}) //请求地址支持多路径,字符串数组


20.模糊查询在表数据量很大的时候会导致表的查询速度很慢,会导致崩溃。
payTrans_Id LIKE CONCAT(CONCAT('%',#{payTransId}))
payTrans_Id = #{payTransId}


21.idea的配置文件:gradle/wapper/gradle-wrapper.properties
//distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-bin.zip


22.fat1测试环境启动报错:
1.Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw excep
compile('org.redisson:redisson:3.5.0')
compile("io.netty:netty-all:4.1.13.Final") 缺少了这个依赖,需要对队出现
2.过滤文件 /out 过滤目录 idea中可以删除
3.本地idea clean 或者重新刷新编译


23.uuid创建
UUID.randomUUID().toString().replace("-", "");


24.支付退款金额按double存储,可以支持小数点


25.mybatis添加返回ID
keyColumn="id" keyProperty="id" useGeneratedKeys="true"
useGeneratedKeys="true" keyProperty="id"


25.Linux文件搜索
1.关键字“或”的搜索, -E 不能少。
grep -E "word1|word2|word3" file.txt
满足任意条件(word1、word2和word3之一)将匹配。

2.关键字“且”的搜索
grep word1 file.txt | grep word2 |grep word3
必须同时满足三个条件(word1、word2和word3)才匹配。
https://www.cnblogs.com/oktokeep/p/17918988.html


26.常量类
NumberUtils.INTEGER_ZERO
NumberUtils.INTEGER_ONE
常量可以统一都写到 Constants.java
代码中尽量避免魔法数字,
或者使用 NumberUtils.INTEGER_ZERO:0
NumberUtils.INTEGER_ONE:1


27.退款和退保幂等接口处理
//退保成功后,无需重复发起退保操作 + 幂等/异步操作


28.请求头 Authorization:123456789 //默认token:123456789模拟跳过,方法在接口测试的时候,可以跳过登录接口获取的token


29.二维码扫码支付测试,可以通过接口测试,qr码通过草料生成二维码,然后扫码支付,支付消息通过mq发送,可以模拟rabbitmq通过客户端来发送,
这样可以一次支付,多次通过rabbitmq来测试。使支付成功后的流程走顺。


30.角色,权限这套可以简化,比如:董事长,部门经理,员工。所以在最底层的员工表中,添加角色,权限的字段来控制。
因为董事长,部门经理本质上仍然是员工。所以在员工表中统一存储。如果涉及到登录账号的账号,密码。也可以在员工表中来存储。

标签:知识点,java,汇总,idea,gradle,compile,token,com
From: https://www.cnblogs.com/oktokeep/p/17964112

相关文章

  • [刷题技巧] 前缀和相关知识点汇总
    一、前缀和的作用前缀和技巧适用于快速、频繁地计算一个索引区间内的元素之和。二、前缀和的思路将原始数组进行预处理,将来需要查询数据的时候,只需要查询预处理的前缀和数组的某些值即可。前缀和的求解是【动态规划】。三、前缀和的定义四、前缀和数组的构造//int[]nums......
  • JS时间格式化方案汇总
    目前JS实现时间格式化有很多种方案,但具体采用哪一种需要看项目需求以及对应的技术栈。下面汇总常见的方式:Date对象APIDate对象是JavaScript处理日期和时间的基本工具。它提供了一系列方法来获取和设置日期时间的各个部分,以及进行日期和时间的计算。//*******************......
  • 各种语言版本的“Hello, world”程序汇总
    各种语言版本的“Hello,world”程序汇总 2017-05-1011:10“Hello,world”程序是指在计算机屏幕上输出“Hello,world”这行字符串的计算机程序,“hello,world”的中文意思是“世界,你好”。这个例程在BrianKernighan和DennisM.Ritchie合著的《TheCProgrammeLanguage......
  • 常见的传感器技术汇总简介
    传感器技术是现代信息技术的关键组成部分之一,涉及到物理学、化学、生物学等多个学科领域,传感器应用范围广泛,包括工业自动化、环境监测、医疗保健、智能家居等领域。下面将介绍一些常见的传感器技术:温度传感器:用于测量温度和温差。最常见的温度传感器有热敏电阻和热电偶,它们广泛应......
  • 【C/C++】知识点笔记
    1-联合体内嵌结构体初始化赋值union{struct{inti;floatf;char*p;};into;}obj3={1,2.2,"sk",4,9};printf("structinlayunion:%d,%f,%s,%d\n",obj3.i,obj3.f,obj3.p,obj3.o);输出:structin......
  • 滚动知识点
    functionpageChange(){//...页面滚动时,须要作的事情}window.addEventListener("scroll",pageChange,false);一、使用 window.addEventListener 和 document.addEventListener 来处理页面上的事件,区别仅仅在于:不一样事件模型上,处理的顺序不同。浏览器捕获,window......
  • Zabbix“专家坐诊”第223期问答汇总
    来源:广东乐维软件有限公司 乐维社区问题一Q:Zabbix 5.0安装完mysql之后怎么备份?忘记mysql当时创建的密码了,怎么样能查看设置的密码?A:mysql初始化密码在 /var/log/mysqld.log中可以看到,搜关键字temporary password。Q:备份完mysql之后怎么验证正常?通过哪里能看出来?能不能监测mysql......
  • 计算机体系结构之并行机制知识点总结
    cpu支持哪些指令集,是硬件结构决定的,还是软件方式实现的?CPU支持的指令集是由其硬件结构决定的。指令集是一组与硬件交互的底层机器指令,它定义了CPU能够执行的基本操作,包括算术运算、逻辑操作、内存访问等。不同的CPU架构具有不同的指令集。在硬件层面,CPU的设计决定了它支持......
  • vim知识点总结
    何为vimVim(ViIMproved)是一款强大的文本编辑器,是经典的Vi编辑器的增强版本。Vim支持多种编程语言和文件格式,具有高度的可定制性和强大的功能,被广泛用于程序开发、文本编辑等领域。以下是一些Vim的主要特点和用法:模式:普通模式(NormalMode):在这个模式下,按键用于移动光标、删......
  • 2023 | 美团技术团队热门技术文章汇总
    新年好!时光飞逝,我们告别了难忘的2023,迎来了充满希望的2024。再次感谢大家的一路相伴~~今天,我们整理了2023年公众号阅读量靠前的10篇技术文章,欢迎大家品阅。祝愿大家在新的一年里,幸福平安,行稳致远。01Code:美团代码托管平台的演进与实践作者:潘陶、费翔、丹丹、毛强美团代码托管平台......