
Java基础
文章平均质量分 50
分享的是Java基础内容
逸佳6
别在最能拼的年纪选择安逸
展开
-
IDEA编译报错:Error:java: 无效的源发行版: 17的根本原因
1.本机默认使用(编译)的jdk与该项目所使用的jdk版本不同。(造成这个原因就是因为在创建项目的时候,idea默认是使用的最新版本进行快速构建的)2.jdk版本不适用于这个Idea,很典型的一个例子就是使用的Idea是2020的,而你用到的jdk是17,jdk17是2021年推出的,所以你只能去安装新版本的idea。默认是当前最新的版本点击Settings按如下路径找到Java Compiler以下这两处改成8(我的jdk是1.8,如果你的是18,就改成18)启动成功原创 2023-04-07 23:25:03 · 8711 阅读 · 1 评论 -
idea找不到项目的war包,启动后台一直报错的解决方法
在跑时,发现这个JavaWeb项目找不到war-exploded包(非maven项目)。没有war包,后台会一直报error错误:error during artifact deployment.see server log for details。原创 2023-04-01 01:35:57 · 1453 阅读 · 0 评论 -
如何把与java相关的API设置到电脑右下角的工具栏
这里写自定义目录标题插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入这其实就是一个新建工具栏的问题,在工具栏上右键单击----->工具栏----->新建工具栏,找到你...原创 2020-04-26 18:20:14 · 842 阅读 · 0 评论 -
服务器上部署多个tomcat服务项目
首先下载tomcat安装包(tomcat官网:http://tomcat.apache.org/)我这里下载的是免安装的对下载好的tomcat进行解压到不同的文件夹中,这里以部署两个tomcat为例。配置环境变量:步骤:右击“我的电脑”-->“属性”-->“高级系统设置”-->“环境变量”新建环境变量:变量名:CATALINA_HOME,变量值:D:\apache-tomcat-9.0.8;变量名:CATALINA_HOME_8088,变量值:D:\apache原创 2021-11-04 09:12:20 · 377 阅读 · 0 评论 -
Map<String, Object> map=new HashMap<String, Object>()
HashMap你可以理解成是一对对数据的集合我暂时把List 改成String 你方便理解Map<String, String> map=new HashMap<String,String>(),map.put(key,value); key可以理解成房子 value 可以理解成 住户名(这儿假设一个大学宿舍只能住一个人)map.put("S301","张三");那就是说S301 这个房间 只有 张三这么个住户 map.put("S301","张三").转载 2021-11-05 13:27:38 · 566 阅读 · 0 评论 -
Mybatis动态SQL中使用foreach标签遍历集合、字符串入参
如题,foreach就是迭代遍历,和你我在spring里面面对集合对象、数组对象写for系列遍历的时候作用一样;而在SQL中,foreach遍历通常用在in这个关键词后面。如果是mybatis动态SQL,那就在in关键字后面用的标签,既然是标签,那就有它这个标签内置所需要的参数,也就是foreach元素的属性,主要有item、index、collection、open、separator、close这六种,xml中如下所示:<foreach collection="" close="" in.原创 2021-11-09 11:21:24 · 5677 阅读 · 0 评论 -
windows服务器部署代码时,后台报:协议处理器启动失败
部署项目的时候报错:The AJP Connector is configured with secretRequired=“true” but the secret attribute is either null or “”. This combination is not valid.根据错误提示,需要添加 secretRequired 和 secret 属性,如果 设置 secretRequired="" 则可以不用添加 secret 属性,配置正确之后即可正常启动。完善配置(编辑service.原创 2022-02-25 11:41:26 · 3396 阅读 · 2 评论 -
在MyBatis中使用max函数查询时, 返回类型为int,但是当查询结果为空NULL,报异常的解决方法
使用MyBatis查询 返回类型为int,但是当查询结果为空NULL,会报异常。例如:<select id="getPersonRecordId" parameterType="java.lang.String" resultType="int"> select role_id from p_person_role where stffe_id = #{stffeId,jdbcType=VARCHAR} </select>当记录不存在时会报以下原创 2022-01-10 10:39:00 · 3454 阅读 · 0 评论 -
java业务层发生异常,但是数据却没有回滚的几种常见情况
最近做项目写后台java代码,有人遇到了业务层的逻辑代码发生了错误,但是持久层的数据却没有回滚,这是非常不应该的,应为按照逻辑,发生异常,所有的数据就应该回滚,不然会产生非常多的脏数据。针对这个情况,产生这样的原因主要有以下几个方面的原因:后台采用SpringBoot框架,一般都会引用spring-boot-starter或者spring-boot-starter-web,而这两个起步依赖中都已经包含了对于spring-boot-starter-jdbc或spring-boot-starter-data原创 2022-05-24 18:15:31 · 4053 阅读 · 0 评论 -
项目展示的样式图标(展示方法)
webapp静态图标/图片。原创 2023-03-14 14:59:44 · 140 阅读 · 0 评论 -
【最详细】最全java面试题及答案
synchronized 锁升级原理:在锁对象的对象头里面有一个 threadid 字段,在第一次访问的时候 threadid 为空,jvm 让其持有偏向锁,并将 threadid 设置为其线程 id,再次进入的时候会先判断 threadid 是否与其线程 id 一致,如果一致则可以直接使用此对象,如果不一致,则升级偏向锁为轻量级锁,通过自旋循环一定次数来获取锁,执行一定次数之后,如果还没有正常获取到要使用的对象,此时就会把锁从轻量级升级为重量级锁,此过程就构成了 synchronized 锁的升级。原创 2023-03-19 01:38:49 · 5240 阅读 · 0 评论 -
论代码Review与文档的重要性
假设你换了家公司,新公司的业务流程和接口文档等资料都没有一个很好的规范管理的话,新人入职后,是会影响到工作快速上手熟悉的进度的。也影响后面其它功能接口的一个对接传参的情况。没有了代码Review的话评判一个人能力的指标就只能是开发速度,你做的慢就会给人感觉你的能力不行,但是事实是这样吗?有了代码Review,大家的代码都拿出来看看,一个人的能力一清二楚。让矜矜业业的老实程序员不会受到不公的待遇!为什么要进行代码Review?原创 2023-03-19 17:20:04 · 168 阅读 · 0 评论 -
mybatis if标签判断字符串是否相等
mybatis 映射文件中,if标签判断字符串相等,两种方式:因为mybatis映射文件,是使用的ognl表达式,所以在判断字符串sex变量是否是字符串Y的时候, <if test="sex=='Y'.toString()"><if test = 'sex== "Y"'>注意:不能使用 <if test="sex=='Y'">and 1=1</if>因为mybatis会把'Y'解析为字符,所以不能这样写 会报NumberFormatE.原创 2022-01-01 10:53:06 · 2328 阅读 · 0 评论 -
int类型的包装引用类型Integer,进行==号的比较
public static void main(String[]args){ Integer f1=100,f2=100,f3=150,f4=150; System.out.println(f1==f2); System.out.println(f3==f4);} 第一个结果为:true 第二个结果为:false原因:因为四个变量都是Integer对象引用,所以下面的==运算比较的不是值而是引用;而当我们给一个Integer对象赋一个int值的时候,会调用原创 2020-09-20 21:46:42 · 151 阅读 · 0 评论