解决:GitHub将Java项目判断为JavaScript项目
原因GitHub判断项目类型,主要是通过分析什么类型的文件占比最高,例如:如果JavaScript文件占比最高则GitHub就会认定项目为JavaScript项目
解决办法
在本地仓库新建一个名称为.gitattributes的文件,文件内容如下:
1234*.js linguist-language=java*.css linguist-language=java*.html linguist-language=java*.jsp linguist-language=java
然后push到GitHub即可
PS.不要直接在GitHub仓库新建这个文件,不然后期提交会造成:远程仓库和本地仓库的内容不一致(报错:Push to origin/master was rejected),这个报错的解决办法查看博客:idea 提交代码到 GitHub 报错:Push to origin/master was rejected | LeDao 的博客 (zoutl.cn)
IntelliJ IDEA提交代码到GitHub报错:Push to origin/master was rejected的解决办法
报错原因远程仓库和本地仓库的内容不一致
解决办法
打开Git Bash命令,进入本地仓库对应的项目文件夹(即:.git文件夹所在目录,右击项目文件夹选择Git Bash Here)
输入以下命令:(可能会打开一个文件,输入:q并按回车键退出即可)
1git pull origin master --allow-unrelated-histories
然后重新push到GitHub即可
PS.这个错误是可以避免的,只要不直接修改远程库的文件即可。如果要修改就去修改本地仓库的文件,然后push到远程库
IntelliJ IDEA配置远程调试
概述所谓远程调试,是指将Java项目打包成war或者jar包并且部署后,在idea中进行调试
实现过程idea配置远程JVM调试
打开添加配置界面
选择Remote JVM Debug
填写相关配置
Name随意填写,Host填运行Java项目的服务器IP,Post填项目所在端口号,Use moudule classpath选择调试的项目模块,其它的配置和下图一样即可
配置远程调试接口Java项目打包有两种方式:①war包 ②jar包,所以配置方式也不同
当项目打包成war包
修改Tomcat的bin文件夹的catalina.sh,在下图的位置添加以下代码:(调试端口为5005,记得开放防火墙的5005端口,如果是云服务器还需要配置安全组规则)
1JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"
当项目打包成jar包,使用以下命令部署项目
1java -jar -agentlib:jdwp=transport= ...
Java获取程序运行时间
问题描述有时候我们需要获取某段代码的运行时间,以便和修改后的代码对比,看看新代码的性能是否得到提升
解决办法具体解决方法为,在执行该段代码前获取当前时间,执行完该段代码后再次获取当前时间,后面的时间减去前面的时间即可得到程序运行的时间,时间单位越小越精确
获取当前时间一般有两种方式:
以毫秒为单位
使用System.currentTimeMillis()
以纳秒为单位
使用System.nanoTime()
代码实现以毫秒为单位
Java代码
123456789101112131415161718package com.ledao;/** * @author LeDao * @company * @create 2021-12-15 2:59 */public class Test { public static void main(String[] args) { long startTime = System.currentTimeMillis(); for (int i = 0; i < 10000; i++) ...
Java数组排序
升序排序
使用Arrays工具类的sort方法,只有一个参数,参数为要排序的数组
12345678910111213141516171819package com.ledao;import java.util.Arrays;/** * @author LeDao * @company * @create 2021-12-15 2:59 */public class Test { public static void main(String[] args) { int[] nums = new int[]{2, 1, 6, 3, 9}; Arrays.sort(nums); for (int num : nums) { System.out.print(num + " "); } }}
降序排序
使用Arrays工具类的sort方法,有两个参数,参数一为要排序的数组,参数二为比较器(Collect ...
Java上传图片到又拍云
引入依赖123456<!-- https://mvnrepository.com/artifact/com.upyun/java-sdk --><dependency> <groupId>com.upyun</groupId> <artifactId>java-sdk</artifactId> <version>4.2.3</version></dependency>
代码实现获取又拍云的配置信息要获取云存储的服务名称、操作员的用户名、操作员的密码,获取方法查看博客:实现 Typora 自动上传图片到又拍云 | LeDao 的博客 (zoutl.cn)
Java代码12345678910111213141516171819202122package com.ledao;import com.upyun.RestManager;import java.io.File;/** * @author LeDao * @company * @create 2021-12 ...
Java压缩图片
引入依赖123456<!-- https://mvnrepository.com/artifact/net.coobird/thumbnailator --><dependency> <groupId>net.coobird</groupId> <artifactId>thumbnailator</artifactId> <version>0.4.16</version></dependency>
代码实现Java代码12345678910111213141516171819package com.ledao;import net.coobird.thumbnailator.Thumbnails;import java.io.File;import java.io.IOException;/** * @author LeDao * @company * @create 2021-12-15 2:59 */public class Test { ...
实现Typora自动上传图片到又拍云
问题描述我使用Typora写博客,使用的图床是又拍云云存储。博客用到的图片就需要先把图片上传至又拍云(打开又拍云上传的过程很繁琐),然后在博客中使用。如果可以在使用Typora写博客引用本地图片时,直接上传至又拍云就很方便了
实现过程安装和配置PicGo
下载与安装
下载地址为:PicGo (molunerfinn.com),下载完成后,直接安装到指定位置即可
PicGo配置又拍云存储路径
需要配置的PicGo参数如下图所示,前4个必须设置,最后一个为存储图片的路径(如果不设置就上传根目录),这些参数的获取步骤继续看下面的步骤
创建自己的云存储服务,下图的服务名称就是设定存储空间名,本步骤可以获取设定存储空间名和设定加速域名
打开云存储服务的配置后,选择存储管理标签页,在页面的最下面添加云存储的操作员,操作员的权限只选择可写入即可,本步骤可以获取操作员以及操作员密码
步骤一:
步骤二:
指定存储路径不填就上传到云存储服务的根目录,如果是根目录下的文件夹就填文件夹名称/,如果是根目录文件夹内的文件夹就填文件夹名称/文件夹名称/,以此类推,此步骤可以获取指定存储路径
...
Java将Markdown转化为HTML
引入依赖123456<!-- https://mvnrepository.com/artifact/com.atlassian.commonmark/commonmark --><dependency> <groupId>com.atlassian.commonmark</groupId> <artifactId>commonmark</artifactId> <version>0.12.1</version></dependency>
Java代码123456789101112131415161718192021222324package com.ledao.util;import org.commonmark.node.Node;import org.commonmark.parser.Parser;import org.commonmark.renderer.html.HtmlRenderer;/** * @author LeDao * @company ...
Elasticsearch的head插件基本操作
增加索引在复合查询页添加查询链接填:http://192.168.0.116:9200/student/,192.168.0.116是虚拟机的IP地址,9200是Elasticsearch对外开放的端口,student是索引的名称
提交方式选择:PUT
最后点击提交请求按钮即可
在索引页添加在索引页点击新建索引按钮,在弹出框输入索引名称、分片数、副本数,然后点击OK键即可
删除索引在概览页的指定索引的动作中选中删除,然后在弹出框输入删除,然后确定即可
关闭索引在概览页的指定索引的动作中选中关闭
给索引添加和修改文档在复合查询页的查询选项输入链接:http://192.168.0.116:9200/book/java/3/,提交方式选择POST,链接详解如下表:
字段
说明
192.168.0.116
虚拟机IP
9200
Elasticsearch对外开放的端口号
book
索引名称
java
索引类型
3
文档的id
如果文档id在Elasticsearch中不存在就添加文档,存在就是修改文档
添加或修改的文档内容应当使用JSON格式,如下:( ...