博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java学习遇到的问题与处理
阅读量:3915 次
发布时间:2019-05-23

本文共 4064 字,大约阅读时间需要 13 分钟。

Java学习遇到的问题与处理

  1. 在maven中添加阿里云镜像后配置文件xmlns后的地址报红
  • 具体原因:URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs),即:统一资源标识符没有注册
  • 解决方法:settings——>Languages & Frameworks——>Schemas and DTDs点击“+”号,添加上报红的地址。
    问题如下:
    该引导类没有变成开关机标志:
    在这里插入图片描述
  • 解决:
    先把Java包右键Mark ——>resource root,然后maven工具栏直接双击install就行。(它要下载依赖什么的,有点久,多等会)
    在这里插入图片描述
    关于标注的作用
    https://www.cnblogs.com/hongchengshise/p/10489905.html

cmd/java用sql语句写中文在navicat中显示乱码问题

  • 我自己的是通过show variables like “%chara%”; 这个语句找到navicat中的——character_set_client——这个为latin1,所以出现在navicat或cmd(java中跟cmd一致的)中写中文,另一边查看会出现乱码问题。
  • 将MySQL关闭navicat也关闭,idea也是(老说我啥啥啥还在用,就都关了),然后重新打开navicat,点我自己连接的数据库(我的是localhost_3306),右键编辑连接,高级里面的编码设置为“自动”即可。

关于阿里云规范的修改,@author

  1. 我在设置里面修改不行,用不了,所以另一个方法:
  2. 在这里插入图片描述找到这个文件,然后最后一行加上这个。(idea.exe.vmoptions)

关于maven install时控制台乱码

在这里插入图片描述
解决在这里插入图片描述
关于maven重新打包控制台报错问题
在这里插入图片描述先解决我选中的:它说我不会覆盖,ok,那我就去掉@AutoWired好吧,去掉第二第三个就不存在了,但是我明明重写我自己的接口的,肯定要覆盖的啊,不过先不管。
解决第一个:Error:(19,8) java: cn.ahdeer.service.impl.MenuServiceImpl不是抽象的, 并且未覆盖cn.ahdeer.service.MenuService中的抽象方法getMenuTree()在这里插入图片描述原来代码编译正常,在升级新的依赖包后,打包提示“Error:(错误: xxx不是抽象的, 并且未覆盖xxx中的抽象方法”
经排查,是由于升级后,新依赖的包被继承的类多了一个抽象方法;报错的当前类继承了抽象类后没有重写多的那个抽象方法;
解决方法:
根据错误提示,找到抽象类新增的方法,在报错的类中进行重写,满足语法要求即可;
如果当前类未用到,返回值可以为nulll。

关于install时的一些错误

比如有找不到 符号,还有些别的在这里插入图片描述解决:我一般是先看看版本号对不对的上,jdk一般用的是8(project structure里面),还有就是rebuild一下,然后重新install,从父项目开始,一级一级往下找问题,最后找到我这样的是因为我这个项目是复制粘贴的,不知道为啥今天打开让我弄了几个设置,没仔细看,yes了,结果把我的artifactId改了!

关于controller层不走serviceImpl层并且install时说找不到符号在这里插入图片描述解决:其实很简单,不知道啥时候手残,右击了右边的module,选择了ignore,结果变成灰色的了!

sql语句执报错集合

1、sql语句执行不行,但是只要表改了个名字就可以执行?
在这里插入图片描述
我突然发现这个order是蓝色的。。。难道说?
在这里插入图片描述就知道。。。以前都不加 ` 就以为没事。
至于在Java里面执行,就这样在这里插入图片描述

maven无法自动导入(我是要用Today的框架的时候出现的)

解决:我是重装了idea,但是我记得我设置了全局settings啊!,然后拉他的代码,都无法用他自己的框架。结果同事一查,我就是全局没设置!服了!

jar包有,import路径也对,但是报红

  • 描述:这个问题应该是我特有的,我是在用Today的框架的时候出的问题。
  • 解决:原来是我随便在原有的A模块添加新的小模块,但是表面上是删除干净,其实文件夹里面还有导致的,可以打开File->Project Structure里面的modules里面找到,删除也就行了,因为这个A模块被我报红的类所处的模块依赖,而且,A模块的pom里面还有标签,里面还有我随手添加的模块的名称,并且在File->Project Structure删掉了,但是pom的标签没删,所以A的pom也报红,所以导致依赖A的模块的那个类的import报红。

cn.ahdeer.mall.business.product.manager.controller.AttributeGroupController#index(AttributeGroupQo, PageQo)

to {GET [/index]}: There is already ‘attributeDetailsController’ bean method
cn.ahdeer.mall.business.product.manager.controller.AttributeDetailsController#index(AttributeDetailsQo, PageQo) mapped.
(关于模糊映射的问题)

  • 在这里插入图片描述
  • 解决:因为我有好几个controller用的是同一个映射url所以出错。

Caused by: org.flywaydb.core.api.exception.FlywayValidateException: Validate failed: Migrations have failed validation

(迁移验证失败)

  • 解决:因为我两个项目用同一个数据库,所以flyway_schema_history里面的数据,是前一个项目生成的,因此会干扰到另一个用这个数据库的项目。

Duplicate entry ‘3’ for key ‘spu_category.PRIMARY’(执行插入操作出现的)

  • 解决:可能是识别错误吧?我将表格随便修改属性(我这里把自增取消又加上就行了)。

IDEA复制别人的项目时,import的路径存在且正确,但是却提示路径不在在这里插入图片描述

  • 解决:有这个提示,不过我一开始忘了用idea自带的提示了,这个应该是Project Structure里面设置的,但是我实在找不到哪里有区别!以后再说吧!

发送请求时的异常页面

  1. 404:这个是代表没有根据你的url找到对应的接口,是你的url写错了。
  2. 500:这个我自己是这样的,我的数据库的表的名字与我的实体类的名字不对应造成的。

git上传 / 拉取代码时候遇到的问题

  • fatal:unable to access ‘https : // github . com / runzhenghengbin / SpringBoot.git/’: Failed to connect to github.com port 443: Timed out:问题大概是我把github的url复制在git的bash上,克隆的时候,桌面上的文件夹都创建了,但是还是报这个错。具体原理及解决方法还不清楚。
  • 解决:env|grep -i proxy 输入这个就行了。(eg:env|grep oracle 这是一条UNIX/Linux的shell命令。env的意思是打印当前的环境变量,竖线“|”的意思是管道,即将env 命令所打印出来的东西传给竖线之后的命令处理。grep是正则表达式过滤命令。当遇到包含“oracle“的行时会显示该行。整个命令就是显示包含“oracle”关键字的环境变量。)

@Autowired注解下的接口报错未注入容器

  • 在这里插入图片描述
  • 解决:在mian方法里面加上@ComponentScan(basePackages = {“接口的路径”}),因为这个主方法扫描不到别的包里面的,我需要手动告诉它。

关于数据库操作时的错误

  1. BLOB/TEXT column ‘id’ used in key specification without a key length:在密钥规范中使用的BLOB / TEXT列“ id”,没有密钥长度。
  • 解决:这是我添加外键的时候出的错,我用cmd指令的,后来发现是因为,我两张表用的都是BIGINT类型的id,所以报错,改为INT就行,但是具体为什么不确定,而且我以后肯定要用BIGINT类型的。
  • 补充:原来Mysql数据库对于BLOB/TEXT这样类型的数据结构只能索引前N个字符。所以这样的数据类型不能作为主键,也不能是UNIQUE的。所以要换成VARCHAR,但是VARCHAR类型的大小也不能大于255,当VARCHAR类型的字段大小如果大于255的时候也会转换成小的TEXT来处理。所以也同样有问题。而我是设置为BIGINT长度很长的,但是INT就不会了,而我在cmd里面又不能指定INT/BIGINT的长度的所以cmd里面我设置INT玩玩也就行了,主要在navicat里面设置。

导入maven包的时候报连接不到xxx(我这里是私服地址)

  • 解决:settings设置肯定有问题,要不就是私服地址错了,要不就是本地仓库的地址配置错误,我就是本地仓库地址写错了。

idea打断点显示灰色,且灰色小圆点带有个斜杠

  • 解决:我自己是因为在打断点的时候修改了代码,所以修改的代码无效,重启一起那个主程序就行。

MybatisPlus的lambda表达式里面报错

  • 直接上图:不能从静态上下文中引用非静态方法在这里插入图片描述
  • 原因很简单,我没有定类型,要在前面的<类型>加上。
你可能感兴趣的文章
集成平台集群任务动态分派
查看>>
【.net core】电商平台升级之微服务架构应用实战
查看>>
【翻译】.NET 5 Preview 1 发布
查看>>
使用GUI工具Portainer.io管控Docker容器
查看>>
Abp vNext发布v2.3!
查看>>
.NET Core开发实战(第27课:定义Entity:区分领域模型的内在逻辑和外在行为)--学习笔记...
查看>>
BeetleX之vue-autoui自匹配UI插件
查看>>
.NET Core开发实战(第28课:工作单元模式(UnitOfWork):管理好你的事务)--学习笔记...
查看>>
如何用 Blazor 实现 Ant Design 组件库?
查看>>
DotNetCore Web应用程序中的Session管理
查看>>
从业务需求抽象成模型解决方案
查看>>
Kafka
查看>>
Magicodes.IE 2.2发布
查看>>
应用交付老兵眼中的Envoy, 云原生时代下的思考
查看>>
.NET 开源项目 StreamJsonRpc 介绍[上篇]
查看>>
.NET Core微服务开发选项
查看>>
探讨NET Core数据进行3DES加密或解密弱密钥问题
查看>>
Vue 3拖更,尤雨溪介绍最新进展
查看>>
如何利用.NETCore向Azure EventHubs准实时批量发送数据?
查看>>
WPF 框架全构建环境虚拟机硬盘分享
查看>>