一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Java

java -jar 中文乱码

java -Dfile.encoding=utf-8 -jar demo.jar 添加编码即可   from:https://www.cnblogs.com/provence666/p/10743551.html

龙生   22 Nov 2021
View Details

kaptcha谷歌验证码工具

Kaptcha 简介 Kaptcha 是一个可高度配置的实用验证码生成工具,可自由配置的选项如: 验证码的字体 验证码字体的大小 验证码字体的字体颜色 验证码内容的范围(数字,字母,中文汉字!) 验证码图片的大小,边框,边框粗细,边框颜色 验证码的干扰线 验证码的样式(鱼眼样式、3D、普通模糊、…) Kaptcha 详细配置表 kaptcha.border 图片边框,合法值:yes , no yes kaptcha.border.color 边框颜色,合法值: r,g,b (and optional alpha) 或者 white,black,blue. black kaptcha.image.width 图片宽 200 kaptcha.image.height 图片高 50 kaptcha.producer.impl 图片实现类 com.google.code.kaptcha.impl.DefaultKaptcha kaptcha.textproducer.impl 文本实现类 com.google.code.kaptcha.text.impl.DefaultTextCreator kaptcha.textproducer.char.string 文本集合,验证码值从此集合中获取 abcde2345678gfynmnpwx kaptcha.textproducer.char.length 验证码长度 5 kaptcha.textproducer.font.names 字体 Arial, Courier kaptcha.textproducer.font.size 字体大小 40px. kaptcha.textproducer.font.color 字体颜色,合法值: r,g,b 或者 white,black,blue. black kaptcha.textproducer.char.space 文字间隔 2 kaptcha.noise.impl 干扰实现类 com.google.code.kaptcha.impl.DefaultNoise kaptcha.noise.color 干扰 颜色,合法值: r,g,b 或者 white,black,blue. black kaptcha.obscurificator.impl 图片样式:<br />水纹 com.google.code.kaptcha.impl.WaterRipple <br /> 鱼眼 com.google.code.kaptcha.impl.FishEyeGimpy <br /> 阴影 com.google.code.kaptcha.impl.ShadowGimpy com.google.code.kaptcha.impl.WaterRipple kaptcha.background.impl 背景实现类 com.google.code.kaptcha.impl.DefaultBackground kaptcha.background.clear.from […]

龙生   07 Nov 2021
View Details

SPRING BOOT——[UNABLE TO START LIVERELOAD SERVER]解决方案

问题描述 在使用SpringBoot 热部署插件 devtools ,同时启动多个Application时,控制台会报这个警告:   问题分析 经查询,发现DevToolsProperties中配置了一个端口,默认是35729。

原因:多个端口冲突了,导致热部署插件不生效。   解决方案 在application.properties文件中加上以下配置

  参考文章 https://blog.csdn.net/xudc0521/article/details/85560221 https://blog.csdn.net/weixin_43852529/article/details/90369869   from:https://www.freesion.com/article/3170268716/

龙生   03 Nov 2021
View Details

docker部署springboot,并且查看运行日志

docker部署springboot(默认已经安装好docker) 第一步:构建镜像 创建Dockerfile文件,文件内容如下:

  其中 index-1.5.10.RELEASE.jar是你要发布的jar包。 然后把Dockerfile和index-1.5.10.RELEASE.jar建个文件夹,放到服务器上面。 cd进入你的文件夹,运行以下命令向docker中添加镜像:

  执行命令后,你的docker中就添加了名为jingxiangming的镜像。 查看镜像命令:

  第二步:启动容器

  关于上面的命令,我认为有必要具体讲解一下: -d: 后台运行容器,并返回容器ID; -p: 端口映射,格式为:主机(宿主)端口:容器端口;//意思是第一个访问服务器的端口,第二个8080是服务器本地占用访问的端口 jingxiangming:docker里面的镜像名称 当然除了上面基本的参数外,还有额外的参数,这个就需要大家自己去查阅资料了,我这里只列举比较重要的。   启动成功后,会返回一个容器id,然后就可以测试访问了!   日志查看 查看运行的容器日志:

 

  from:https://blog.csdn.net/qq_29611427/article/details/81534037

龙生   03 Nov 2021
View Details

Linux部署SpringBoot项目jar包,输出日志到文件并追踪

本文小秋熊介绍在Linux中使用命令启动SpringBoot生成的jar包,并且查看日志的方法。 1.首先将SpringBoot项目打包成JAR包,通过xFTP或者其他工具将JAR包上传到Linux上,然后执行如下命令启动项目: java -jar xxx.jar 该命令启动jar,一旦Xshell窗口关闭,JAR就停止运行了. 如果想让项目在后台一直运行,通过如下命令启动JAR: nohup java -jar xxx.jar > consoleMsg.log 2>&1 & 上面的2 和 1 的意思如下: 0 标准输入(一般是键盘) 1 标准输出(一般是显示屏,是用户终端控制台) 2 标准错误(错误信息输出) 注意:consoleMsg.log文件要先创建,执行命令: touch consoleMsg.log 查看项目运行日志: 1、tailf consoleMsg.log | grep --line-buffered findUserList 实时跟踪日志,这里是只要findUserList 这个方法被运行,就会将它的日志打印出来,用于跟踪特定的日志运行。 --line-buffered 是一行的缓冲区,只要这一行的缓冲区满了就会打印出来,所以可以用于实时监控日志。 2、 tailf -n 500 consoleMsg.log 打印最后500行日志,并且持续跟踪日志。 tail -n 2000 consoleMsg.log | less   分页查看最后2000行日志,并可以使用pageUp,pageDn滚动 3、tail -f consoleMsg.log (常用)直接查看日志末尾,有新日志会实时滚动更新。ctrl + c 退出 其它举例: (1)nohup java -jar xxx.jar >/data/log.log 2>/data/err.log & 解释:标准日志输出到/data/log.log文件,错误日志输出到/data/err.log文件。 (2)nohup java -jar xxx.jar >/data/log.log 2>&1 & 解释:标准日志输出到/data/log.log文件,错误日志重定向也输出到/data/log.log文件。 (3)nohup java -jar xxx.jar >/dev/null 2>/data/err.log & 解释:标准日志输出到/dev/null,也就是不输出标准日志,错误日志输出到/data/err.log文件。 一般采用上面(3)只输出错误日志就可以了,有需要的按照(1)、(2)进行输出。 命令后面加的 & ,可让命令在后台执行,否则关闭会话会停止程序。 […]

龙生   03 Nov 2021
View Details

转载Java NIO中的Files类的使用

Java NIO中的Files类(java.nio.file.Files)提供了多种操作文件系统中文件的方法。 Files.exists() Files.exits()方法用来检查给定的Path在文件系统中是否存在。 在文件系统中创建一个原本不存在的Payh是可行的。例如,你想新建一个目录,那么闲创建对应的Path实例,然后创建目录。 由于Path实例可能指向文件系统中的不存在的路径,所以需要用Files.exists()来确认。 下面是一个使用Files.exists()的示例:

  这个示例中,我们首先创建了一个Path对象,然后利用Files.exists()来检查这个路径是否真实存在。 注意Files.exists()的的第二个参数。他是一个数组,这个参数直接影响到Files.exists()如何确定一个路径是否存在。在本例中,这个数组内包含了LinkOptions.NOFOLLOW_LINKS,表示检测时不包含符号链接文件。 Files.createDirectory() Files.createDirectory()会创建Path表示的路径,下面是一个示例:

  第一行创建了一个Path实例,表示需要创建的目录。接着用try-catch把Files.createDirectory()的调用捕获住。如果创建成功,那么返回值就是新创建的路径。 如果目录已经存在了,那么会抛出java.nio.file.FileAlreadyExistException异常。如果出现其他问题,会抛出一个IOException。比如说,要创建的目录的父目录不存在,那么就会抛出IOException。父目录指的是你要创建的目录所在的位置。也就是新创建的目录的上一级父目录。 Files.copy() Files.copy()方法可以吧一个文件从一个地址复制到另一个位置。例如:

  这个例子当中,首先创建了原文件和目标文件的Path实例。然后把它们作为参数,传递给Files.copy(),接着就会进行文件拷贝。 如果目标文件已经存在,就会抛出java.nio.file.FileAlreadyExistsException异常。类似的吐过中间出错了,也会抛出IOException。 覆盖已经存在的文件(Overwriting Existing Files) copy操作可以强制覆盖已经存在的目标文件。下面是具体的示例:

  注意copy方法的第三个参数,这个参数决定了是否可以覆盖文件。 Files.move() Java NIO的Files类也包含了移动的文件的接口。移动文件和重命名是一样的,但是还会改变文件的目录位置。java.io.File类中的renameTo()方法与之功能是一样的。

  首先创建源路径和目标路径的,原路径指的是需要移动的文件的初始路径,目标路径是指需要移动到的位置。 这里move的第三个参数也允许我们覆盖已有的文件。 Files.delete() Files.delete()方法可以删除一个文件或目录:

  首先创建需要删除的文件的path对象。接着就可以调用delete了。 Files.walkFileTree() Files.walkFileTree()方法具有递归遍历目录的功能。walkFileTree接受一个Path和FileVisitor作为参数。Path对象是需要遍历的目录,FileVistor则会在每次遍历中被调用。 下面先来看一下FileVisitor这个接口的定义:

  FileVisitor需要调用方自行实现,然后作为参数传入walkFileTree().FileVisitor的每个方法会在遍历过程中被调用多次。如果不需要处理每个方法,那么可以继承他的默认实现类SimpleFileVisitor,它将所有的接口做了空实现。 下面看一个walkFileTree()的示例:

  FileVisitor的方法会在不同时机被调用: preVisitDirectory()在访问目录前被调用。postVisitDirectory()在访问后调用。 visitFile()会在整个遍历过程中的每次访问文件都被调用。他不是针对目录的,而是针对文件的。visitFileFailed()调用则是在文件访问失败的时候。例如,当缺少合适的权限或者其他错误。 上述四个方法都返回一个FileVisitResult枚举对象。具体的可选枚举项包括: CONTINUE TERMINATE SKIP_SIBLINGS SKIP_SUBTREE 返回这个枚举值可以让调用方决定文件遍历是否需要继续。 CONTINE表示文件遍历和正常情况下一样继续。 TERMINATE表示文件访问需要终止。 SKIP_SIBLINGS表示文件访问继续,但是不需要访问其他同级文件或目录。 SKIP_SUBTREE表示继续访问,但是不需要访问该目录下的子目录。这个枚举值仅在preVisitDirectory()中返回才有效。如果在另外几个方法中返回,那么会被理解为CONTINE。 Searching For Files 下面看一个例子,我们通过walkFileTree()来寻找一个README.txt文件:

  Deleting Directies Recursively Files.walkFileTree()也可以用来删除一个目录以及内部的所有文件和子目。Files.delete()只用用于删除一个空目录。我们通过遍历目录,然后在visitFile()接口中三次所有文件,最后在postVisitDirectory()内删除目录本身。

    from:https://www.cnblogs.com/liangblog/p/8920579.html

龙生   02 Nov 2021
View Details

Java NIO系列教程(十 五)Java NIO Path

原文链接  译者:章筱虎 Path接口是java NIO2的一部分。首次在java 7中引入。Path接口在java.nio.file包下,所以全称是java.nio.file.Path。 java中的Path表示文件系统的路径。可以指向文件或文件夹。也有相对路径和绝对路径之分。绝对路径表示从文件系统的根路径到文件或是文件夹的路径。相对路径表示从特定路径下访问指定文件或文件夹的路径。相对路径的概念可能有点迷糊。不用担心,我将在本文的后面详细介绍相关细节。 不要将文件系统的path和操作系统的环境变量path搞混淆。java.nio.file.Path接口和操作系统的path环境变量没有任何关系。 在很多方面,java.nio.file.Path接口和java.io.File有相似性,但也有一些细微的差别。在很多情况下,可以用Path来代替File类。 创建Path实例 为了使用java.nio.file.Path实例,必须首先创建它。可以使用Paths 类的静态方法Paths.get()来产生一个实例。以下是示例:

请注意例子开头的两个import语句。想要使用Paths类和Path接口,必须首先引入相应包。其次,注意Paths.get(“c:\\data\\myfile.txt”)的用法。其使用了Paths.get方法创建了Path的实例。它是一个工厂方法。 创建绝对路径Path 调用传入绝对路径当做参数的Paths.get()工厂方法,就可以生成绝对路径Path。示例如下:

示例中的绝对路径是c:\data\myfile.txt。有两个\字符的原因是第一个\是转义字符,表示紧跟着它的字符需要被转义。\\表示需要向字符串中写入一个\字符。 上文示例的path是windows下的路径。在Unix系统(Linux,MacOS,FreeBSD等)中,上文中的path是这样的:

/home/jakobjenkov/myfile.txt就称作绝对路径。 如果把以/开头path的格式运行在windows系统中,系统会将其解析为相对路径。例如:

将会被解析为路径是在C盘。对应的绝对路径是: C:/home/jakobjenkov/myfile.txt 创建相对路径Path 相对路径指从一个已确定的路径开始到某一文件或文件夹的路径。将确定路径和相对路径拼接起来就是相对路径对应的绝对路径地址。 java NIO Path类也能使用相对路径。可以通过Paths.get(basePath, relativePath)创建一个相对路径Path。示例如下:

第一个例子创建了一个指向d:\data\projects文件夹的实例。第二个例子创建了一个指向 d:\data\projects\a-project\myfile.txt 文件的实例。 当使用相对路径的时候,可以使用如下两种特别的符号。它们是: . .. .表示当前路径。例如,如果以如下方式创建一个相对路径:

创建的Path实例对应的路径就是运行这段代码的项目工程目录。 如果.用在路径中,则其表示的就是当前路径下。示例: Path currentDir = Paths.get(“d:\\data\\projects\.\a-project”); 对应的就是如下路径 d:\data\projects\a-project ..表示父类目录。示例: Path parentDir = Paths.get(“..”); Path对应的路径是当前运行程序目录的上级目录。 如果在path中使用..,表示上级目录的含义。例如:

对应的绝对路径地址为: d:\data\projects\another-project 在a-project目录后面的..符号,将指向的目录修改为projects目录,因此,最终path指向another-project目录。 .和..都可以在Paths.get()的双形参方法中使用。示例:

下面介绍NIO 的Path类有关相对路径的其他使用方法。 Path.normalize() Path 的normalize()方法可以标准化路径。标准化的含义是路径中的.和..都被去掉,指向真正的路径目录地址。下面是Path.normalize()示例:

上文示例,首先创建了一个包含..字符的路径地址。之后输出此路径。 之后,调用normalize方法,返回一个新的path对象。输出新对象的路径。 输出结果如下:

如你所见,标准化后的路径不再包含 a-project\..部分,因为它是多余的。   from:https://ifeve.com/java-nio-path-2/

龙生   02 Nov 2021
View Details

SpringBoot读取resource中的文件

  from:https://www.cnblogs.com/yang-xiansen/p/13529568.html

龙生   28 Oct 2021
View Details

IDEA 停止在 Synchronizing output directories

重新Rubuild Project   停止在   运行时错误:     试着的解决方式    运行clean 、install  、运行。 运行正常!!   解决方法 删除 .idea ,重新打开项目 ,重新建立工程Rebuild Project ,信息如下: java: /E:/JPADemo/src/main/java/com/example/jpademo/JpaDemoApplication.java使用了未经检查或不安全的操作。 要取消这种告警信息,可在 public class JpaDemoApplication 类面前加@SuppressWarnings("unchecked")   原因:JAVA是一门安全性比较高的语言,它在编译之类要进行类型等一系列的检查。如果你使用了注解就可以告诉编译器不用检查,这样子就可以避过编译时期间的安全检查,这样子的效率会提高 。但同时 安全性就大打折扣了。 但是运行正常!!   from:https://www.cnblogs.com/wfy680/p/15014376.html

龙生   24 Oct 2021
View Details
1 25 26 27 62