
java
文章平均质量分 87
java基本问题
咸鱼还是要有梦想的
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java String 格式的版本如何进行比较?
经常会遇到String格式的版本比对问题,一下代码可以方便的进行比对://String版本对比,仅适用于数字和.的版本 新版本大于老版本返回1,否则返回-1 相等返回0 public static int compare2(String newVersion,String standardVersion){ int i=0,j=0,x=0,y=0; int v1Len=newVersion.length(); int v2Len...原创 2020-12-15 20:04:45 · 514 阅读 · 0 评论 -
harbor https 客户端连接配置
harbor配置https后,从其他机器docker login登陆会报错:docker pull x509:certificate signed by unknown authority每个客户端都需要经过配置:配置方式1https://my.oschina.net/u/195080/blog/1647680修改配置:# vim /etc/docker/daemon...原创 2020-04-30 17:21:25 · 1276 阅读 · 0 评论 -
harbor修改自定义网络 docker network
存在问题:harbor安装完之后docker0和br-*****网桥可能会占用172.17或者18、19之类的网段,如果和公司内部地址有冲突就需要自定义进行修改了。docker0 自定义ipvim /etc/docker/daemon.json重启docker...原创 2020-04-30 17:15:49 · 1989 阅读 · 0 评论 -
Harbor 安装——存储空间修改
harbor默认存储为/data修改步骤如下修改harbor.cfgsecretkey_path 修改为需要的存储路径2.修改 docker-compose.yml修改原先所有默认为"/data"的volume的挂载路径A:B A为主机上的地址,B为容器中的地址,只修改A中的data为新路径即可。注:配置文件中有多处需要修改。3.重新部署容器3.1...原创 2020-04-30 17:10:59 · 3008 阅读 · 0 评论 -
Harbor安装配置
1.安装dockerhttps://blog.csdn.net/qq_26531719/article/details/1058654842.安装docker-compose2.1下载二进制文件curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname-s`...原创 2020-04-30 17:07:47 · 737 阅读 · 0 评论 -
git-远程分支和本地分支关联
git branch –vv 查看当前的本地分支与远程分支的关联关系git branch --set-upstream-to=origin/feature 通过此命令可以修改本地分支和远程分支的对应关系...原创 2020-04-26 10:17:27 · 596 阅读 · 0 评论 -
tomcat开启远程调试
设置bin/startup.sh 增加declare -x CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000" 设置/bin/catalina.sh CATALINA_OPTS="-server ...原创 2020-04-26 10:15:31 · 192 阅读 · 0 评论 -
postMan跳过https验证设置
原创 2020-01-02 18:16:04 · 10979 阅读 · 0 评论 -
DevOps究竟是什么?
DevOps的概念DevOps一次词的来自于Development和Operations的组合,突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、发布更加快捷、频繁和可靠。DevOps是为了填补开发端和运维端之间的信息鸿沟,改善团队之间的协作关系。不过需要澄清的一点是,从开发到运维,中间还有测试环节。DevOps其实包含了三个部分:开发、测试和运维。 ...原创 2019-12-07 10:29:10 · 460 阅读 · 0 评论 -
计算ip地址是否在同一网段
一、要判断两个IP地址是不是在同一个网段,就将它们的IP地址分别与子网掩码做与运算,得到的结果-->网络号,如果网络号相同, 就在同一子网,否则,不在同一子网。例:假定选择了子网掩码255.255.254.0,把IP地址和子网掩码转换为二进制,分别将上述两个IP地址分别与掩码做与运算,如下所示: 211.95.165.24 11010011 01011111 10100101...原创 2019-11-29 16:59:22 · 3076 阅读 · 2 评论 -
spring mvc 整合swagger2
1.在pom文件中增加新的依赖<!--swagger2 --><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</versi...原创 2019-11-29 16:53:50 · 384 阅读 · 0 评论 -
java通过Runtime执行linux命令带管道符失效
String command1 = "hadoop fs -du "+str +" |awk ' { SUM += $1 } END { print SUM/(1024*1024) }'" ; String[] command = { "/bin/sh", "-c", command1 }; try { Process exec = Runtime.getR...原创 2019-11-29 16:47:23 · 1370 阅读 · 0 评论 -
深度理解java中clone方法
Java中对象的创建:clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象。所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象。那么在java语言中,有几种方式可以创建对象呢?1 使用new操作符创建一个对象2 使用clone方法复制一个对象那么这两种方式有什么相同和不同呢? new操作符的本意是分配内存。程序执...原创 2019-10-12 09:52:22 · 166 阅读 · 0 评论 -
垃圾回收-垃圾收集算法
标记-清除算法 标记-清除算法为最基础的垃圾收集算法。首先分为标记和清除两个阶段,首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象。缺陷:1.效率问题:标记和清除两个过程效率都不高2.空间问题:清除之后会存在大量的不连续的内存碎片,碎片太多,导致需要存储较大对象时找不到连续的内存而不得不提前触发垃圾收集。复制算法:为了解决标记清除的效率问...原创 2019-10-12 09:49:45 · 322 阅读 · 0 评论 -
垃圾回收-如何判断是一个垃圾
判断垃圾-引用计数法判断一个对象是否存活:给这个对象增加一个引用计数器,当有一个地方引用他时就加1,当引用失效就减1,计数器为0的对象就是可以回收的。缺陷:很难解决对象之间循环引用的问题。如:objA.instance=objB,objB.instance=objA,除此之外这两个对象没有任何引用,但是因为他们彼此引用,导致无法回收。判断垃圾-可达性分析算法 找到一些gc Ro...原创 2019-10-12 09:48:01 · 504 阅读 · 0 评论 -
线程 的状态
1. 初始(NEW):新创建了一个线程对象,但还没有调用start()方法。2. 运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running)两种状态笼统的称为“运行”。线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获取CPU的使用权,此时处于就绪状态(ready)。就绪状态的...原创 2019-10-12 09:42:54 · 115 阅读 · 0 评论 -
Cpu指令重排
Cpu为了提高效率会对指令进行重排序,以适合cpu的顺序运行。但是指令重排会遵守As-if-serial的规则,就是所有的动作(Action)都可以为了优化而被重排序,但是必须保证它们重排序后的结果和程序代码本身的应有结果是一致的。所以这种情况在单线程中不会出现什么问题。而对于多线程,这个规则就失效了,所以可能会导致结果出现问题。 解决办法就是内存屏障,也叫内存栅栏。是一种屏...原创 2019-10-12 09:41:01 · 1987 阅读 · 1 评论 -
Spring boot 项目在url后输入什么后缀都可以访问
编写了一个/hello访问路径,不管是输入/hello还是/hello.html,还是/hello.xxx都能进行访问。启动类 中重写configurePathMatch方法;具体实现代码:上述可以配置所有的url,@RequestMapping("/page1/{aaa}.html")可以配置某个具体url的后缀...原创 2018-09-04 09:46:08 · 7094 阅读 · 2 评论 -
Spring boot 项目 配置https添加服务端客户端证书认证
Spring boot 项目 配置https进入cmd窗口,在jdk的bin目录下面执行keytool -genkey -alias tomcat -keyalg RSA -keystore ./server.keystore按照提示进行操作。然后在项目的配置文件中加入下面的配置server.port=443server.ssl.key-store=classpat...原创 2018-09-04 09:44:18 · 7324 阅读 · 0 评论 -
spring boot@Value和bean执行顺序问题
从配置文件中获取配置使用@value,当你在bean加载时调用@value时会出现空指针异常。因为bean加载完成后才会执行@value。 解决办法:spring boot 有两种获取配置文件值的方式第一种,@value(“${a.b}”)传属性名称第二种:使用Environment方式@AutowiredprivateEnvironmentenv;env...原创 2018-09-04 09:41:28 · 7567 阅读 · 1 评论 -
The driver is automatically registered via the SPI and manual loading of the driver class is general
Mysql版本过高,换低版本即可。原创 2018-05-10 09:47:18 · 8093 阅读 · 0 评论 -
Unexpected character '=' (code 61); expected a semi-colon after the reference for entity 'useUnicode
Xml文件中不能使用&,要使用他的转义&来代替。原创 2018-05-10 09:46:25 · 12209 阅读 · 3 评论 -
The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone.
mysql-connector-java这个jar包是最新的时候在配置datasource.url时不能简单的这样配:spring.datasource.url=jdbc:mysql://localhost:3306/chat需要加上一些必要的后缀信息(改成下面的配置就可以了):spring.datasource.url=jdbc:mysql://localhost:3306/chat?u...原创 2018-05-10 09:45:42 · 703 阅读 · 0 评论 -
时间复杂度
转载地址:https://blog.csdn.net/itachi85/article/details/54882603前言算法很重要,但是一般情况下做移动开发并不经常用到,所以很多同学早就将算法打了个大礼包送还给了老师了,况且很多同学并没有学习过算法。这个系列就让对算法头疼的同学能快速的掌握基本的算法。过年放假阶段玩了会游戏NBA2K17的生涯模式,没有比赛的日子也都是训练,...转载 2018-04-13 14:31:54 · 206 阅读 · 0 评论 -
log4j.properties配置详解与实例
转载地址http://blog.sina.com.cn/s/blog_5ed94d710101go3u.html#################################################################################①配置根Logger,其语法为:##log4j.rootLogger = [level],appenderN...原创 2018-03-21 16:31:34 · 196 阅读 · 0 评论 -
Spring boot 普通类获取spring容器管理的对象
@Componentpublic class SpringUtil implements ApplicationContextAware{ private static ApplicationContext applicationContext; @Override public void setApplicationContext(ApplicationContext a...原创 2017-12-28 09:38:40 · 3124 阅读 · 0 评论 -
shiro 报错chainName cannot be null or empty
chainName为功能表中的每一个功能的url,shiro要求不能为空原创 2017-12-28 09:36:23 · 6532 阅读 · 4 评论 -
Java 使用ftp的方式上传文件到linux,并实现删除,下载
连接条件:1.主机2.端口(注意端口不是22,22为ssh默认端口,一般为21,或者20)3.用户名和密码一切准备就绪,执行代码发现执行失败报530错误,拒绝连接错误分析:用户名或者密码错误 linux没有安装ftp,或者ftp没有启动。ps -ef | grep ftp linux默认root用户没有权限修改方式:1.vi /etc/vsftpd/ftpusers 将r...原创 2017-12-20 14:29:08 · 2891 阅读 · 0 评论 -
缓存identifier of an instance of com.topsec.tss.web.model.event.Event was altered from … to …
JPA外键关联,进行修改外键时出错identifier of an instance of …… was altered fromidentifier of an instance of A表 was altered from 2 to 3http://bbs.csdn.net/topics/390534402/ 问题分析帖子http://blog.csdn.net/aibisoft/ar...原创 2017-11-16 15:56:53 · 444 阅读 · 0 评论 -
Spring boot 表单提交失败Validation failed for object='book'. Error count: 2
在实体后加BindingResult原创 2017-11-16 15:53:38 · 8872 阅读 · 0 评论 -
springboot demo写好之后再去写一个controller,怎么也访问不到页面
由于版本差异,用SpringBoot 1.4.X以上版本开发时找不到@Controller定义的URL,于是在启动类加注解spring boot对于目录结构有相应的要求,修改完目录结构之后,发现还是不可以,最后在主类中要顶一个注解(@ComponentScan("hello.hello2")),告诉spring需要扫描哪些包下面的controller...原创 2017-11-16 15:49:45 · 2273 阅读 · 0 评论 -
封装excel的导出
达成的效果1.根据不同的实体生成不同的excel头2.根据实体相对的数据情况,生成有数据的字段的excel头 思路:1.如何根据字段获取到对应的中文信息自定义一个注解,在实体类的字段使用自己的注解。然后通过反射根据字段名获取注解2.如何让表格头信息随数据改变用反射获取所有的字段名,根据字段名执行相对应的get方法,获取到他们的值,判断值是否存在。遍历找出所有的有数据的字...原创 2017-11-16 15:47:22 · 516 阅读 · 0 评论 -
java用openoffice,poi+itext,jacob实现预览doc,xml的方法
要求:将doc,docx,xls,xlsx等文件上传并且实现预览功能。一、使用poi将文件转换为html 使用itext将html转换为word 缺点:1.转换成功的word文件,格式会和原来不一样 2.将excel转换为html可以成功,但是只能转换sheet1,其他的检测不到;转换为html以后有些内容显示不出来,格...原创 2017-08-30 10:59:12 · 1168 阅读 · 1 评论 -
getOutputStream() has already been called for this response
下载文件的时候,获得一个输出流,后台的action只能返回一个null,要不然就会报这个异常http://www.360doc.com/content/12/0612/13/1967709_217660151.shtml原创 2017-08-30 09:20:09 · 298 阅读 · 2 评论 -
java下载乱码问题
1.从数据库中取值没有问题,各方面的编码格式都是utf-82.如上图所示,下载的文件名在js中传到的后台,会产生乱码问题,究其原因应该是万恶的js在做了什么解决办法:第一步:在js中对下载的文件名进行两次编码第二步:后台接收时,进行一次解码将其格式在转换为utf-8是为了以防万一第三步:针对不同浏览器,对文件名进行不同的处理...原创 2017-08-30 09:15:29 · 557 阅读 · 1 评论 -
Comparison method violates its general contract!
这个错误是由Collections.sort进行排序时产生的。意思是不符合排序的一些规范。满足自反性、对称性和传递性;解决办法,考虑所有的情况。代码如下:下面的几个判断是必须的...原创 2017-08-30 09:00:21 · 326 阅读 · 0 评论 -
spring mvc后台redirect直接跳html页面乱码问题
后台加密方法前台解密方法引用js<scriptsrc="/res/plugin/jquery.base64.js"></script>JSON.parse($.base64.atob(decodeURI(username),true));原创 2017-08-29 17:48:40 · 1611 阅读 · 0 评论 -
Session失效的问题
问题发生的背景:1、拦截器使用的是spring的拦截器,在拦截的时候需要返回true or false2、前段框架为kendoui,编辑页面加载数据的方式为ajax3、当session失效后,重新刷新页面的时候,会进拦截器,判断session中没有相关信息之后被拦截,拦截之后需要进行页面跳转(登录页)4、由于是ajax请求,所以所有的返回都会被拦截,跳转不成功解决办法如下:...原创 2017-08-29 09:53:29 · 1602 阅读 · 1 评论 -
Failed to start bean 'eurekaAutoServiceRegistration'; nested exception is java.lang.NullPointerExcep
Fastjson 版本问题,导致jar包冲突,修改为最新的版本原创 2019-10-12 09:55:00 · 3346 阅读 · 0 评论 -
split丢失结尾空字符串的问题
这个函数还有另一种重载方式 :public String [] split (String regex, int limit) 看下说明limit 参数控制模式应用的次数,因此影响所得数组的长度。如果该限制 n 大于 0,则模式将被最多应用 n - 1 次,数组的长度将不会大于 n ,而且数组的最后一项将包含所有超出最后匹配的定界符的输入。如果 n 为非正,那么模式将被应用尽可能多的次数,而且...原创 2019-10-14 09:44:11 · 832 阅读 · 3 评论