java
文章平均质量分 66
东心十
做一个实现梦想的自由人!!Java软件开发十年老兵!!
展开
-
jenkins使用webhook实现自动部署
最近有这样一个需求,git仓代码频繁提交,服务器需要同步更新,每天jenkins jobs要更新个十来次,容易打断手上正在做的事情。如果git代码提交和服务器代码更新两个动作可以联动,那会非常省事。1、jenkins安装Webhook Trigger插件安装完成之后会有如下效果:2、git仓新建一个勾子。3、jenkins job中设置勾子触发器,信息如图中所示。4、效果如下:...原创 2022-04-19 08:47:51 · 5407 阅读 · 0 评论 -
解秘java中native方法如何实现:手把手带你实现java native方法
1、新建Operation.java文件public class Operation { public native int add(int a, int b);}2、使用javah生成.h头文件javah -jni Operation生成的Operation.h文件内容:/* DO NOT EDIT THIS FILE - it is machine generated */#include <jni.h>/* Header for class Operation原创 2022-04-18 14:03:22 · 2323 阅读 · 7 评论 -
springboot入门
一、Spring Boot 入门1、Spring Boot 简介简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合;J2EE开发的一站式解决方案;2、微服务2014,martin fowler微服务:架构风格(服务微化)一个应用应该是一组小型服务;可以通过HTTP的方式进行互通;单体应用:ALL IN ONE微服务:每一个功能元素最终都是一个可独立替换和...原创 2019-10-16 11:51:49 · 737 阅读 · 0 评论 -
JD笔试两道题复盘
合唱队的N名学生站成一排且从左到右编号为1到N,其中编号为i的学生身高为Hi。现在将这些学生分成若干组(同一组的学生编号连续),并让每组学生从左到右按身高从低到高进行排列,使得最后所有学生同样满足从左到右身高从低到高(中间位置可以等高),那么最多能将这些学生分成多少组?输入第一行包含一个整数N,1≤N≤105。第二行包含N个空格隔开的整数H1到HN,1≤Hi≤109。输出输出能...原创 2019-08-25 09:14:12 · 1194 阅读 · 4 评论 -
B站笔试两道题
1、输入一组逗号分割的数,将这组数组合成为一个最小的数。如输入:123,22,32输出:1232232输入:210,21,11,12输出:111221021做题的时候很容易想到把第一位数小的数字放到前面,第一位数大的数字放到后面。关键的问题来了,第一位数字相同怎么办,很容易想到把小的数字放前面,比如”12,11“组成1112完全没有问题,当遇到“30,3"这样带”0“的数就有问...原创 2019-08-20 21:29:47 · 6685 阅读 · 0 评论 -
一篇文章将java中String搞懂、搞透
在读本文之前先想想以下几行代码会输出什么结果。public class StringDemo{ private static final String MESSAGE="taobao"; public static void main(String [] args) { String a ="tao"+"bao"; String b="tao"; String...原创 2019-08-22 21:41:53 · 1574 阅读 · 2 评论 -
增强版A*算法
本代码是读了《漫画算法》一书中的A*算法之后稍微做了一点改进,不同点在于原来的算法只能在地图内找最小路径,改进后的算法除了在地图内找最小路径,还可以通过穿透找最小路径,比如当路径来到最左边的时候,可以从最右边出来,当到达最下边的时候,可以从最上边出来,最后给了一个演示的例子,看图很容易懂。import java.util.ArrayList;import java.util.List;imp...原创 2019-09-04 09:17:21 · 656 阅读 · 0 评论 -
深度优先遍历(dfs)-leetcode51:经典的八皇后问题
The n-queens puzzle is the problem of placing n queens on an n×n chessboard such that no two queens attack each other.Given an integer n, return all distinct solutions to the n-queens puzzle.Each s...原创 2019-09-07 10:37:28 · 861 阅读 · 0 评论 -
广度优先搜索(BFS)--leetcode200:求孤岛个数
200.Number of IslandsGiven a 2d grid map of '1’s (land) and '0’s (water), count the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or vert...原创 2019-09-07 12:04:27 · 911 阅读 · 0 评论 -
一文搞懂java中方法锁、对象锁、类锁、静态锁
synchronized关键字,我们一般称之为“同步锁”,用它来修饰需要同步的方法和需要同步代码块,默认是当前对象作为锁的对象。在用类修饰synchronized时(或者修饰静态方法),默认是当前类的Class对象作为锁的对象,故存在着方法锁、对象锁、类锁这样的概念。先给出以下代码感受下代码执行的时候为什么需要同步?代码可能比较枯燥,配上业务理解起来就会舒服很多,学生军训,有三列,每列5人,...原创 2019-08-23 22:41:55 · 5099 阅读 · 0 评论 -
图解、手撕十大排序算法[思路清晰版]
package rank;import java.util.ArrayList;import java.util.Collections;public class CehRank { //1.冒泡排序<时间复杂度O(n*n),空间复杂读O(n),稳定排序> public static void maopao(int[] data) { int len = data...原创 2019-08-02 22:47:50 · 2044 阅读 · 1 评论 -
java多线程之生产者消费者经典问题
package com.thread;/** * 此程序不仅可以加深对多线程的理解,并且可以加深对面向对象编程的理解 * 此程序并非是一个很完善的程序,阅读代码的过程中要发现发生死锁的原因以及找到解决问题的方法 * * cehkongfu:2015.1.28 */class Factory { private int i = 0; private boolean c原创 2015-01-28 20:32:50 · 459 阅读 · 0 评论 -
学Java还是Python?一张图告诉你!
Java 和 Python 一直都是两种很火很强大的编程语言,对于刚开始起步学习编程的同学来说,会迷惑且最经常问的问题是,我该学 Java 还是 Python,是不是 Python 容易学,或是应该先学什么编程语言等等这样的问题。作为一名 Java 程序员,肯定会建议你先学 Java,然后再学 Python,但如果你问一个 Python 程序员,可能会得到一个完全相反的答案。与此同时,Pyth...转载 2018-09-15 13:15:27 · 14764 阅读 · 0 评论 -
log4j参数配置详解
Log4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可接key=value格式的设置或xml格式的设置信息。通过配置,可以创建出Log4J的运行环境。配置文件Log4J配置文件的基本格式如下:#配置根Loggerlog4j.rootLogger = [ level ] , appenderName1 , appenderN...转载 2018-10-10 09:14:02 · 828 阅读 · 0 评论 -
6大最常用的Java机器学习库一览
导读:机器学习是目前盛行于世的技术之一,这几年一时风头无两。虽然在机器学习中,Python是人工智能从业者使用最多的编程语言,但是,Java 在项目开发中仍然发挥着不可替代的作用,而且许多流行的机器学习框架本身就是 Java编写的。Python 的资料到处都是,而 Java 相关的资料就相对少了很多。今天我们翻译了 Fatema Patrawala&amp;gt; 撰写的《六大最常用的 Java 机器学...翻译 2018-11-19 10:20:29 · 32281 阅读 · 2 评论 -
getRequestDispatcher转发造成的一个网络安全漏洞-web.xml文件被访问
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;今天早上收到老师转的一封邮件,是关于我们实验室网站的一个安全漏洞的,光看邮件笔者第一时间看不太懂。后来打电话咨询才搞清楚是怎么一回事。&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;这幅图的意思是通过一个非法链接访问我们实验室的网站,可以查看系统文件web.xml原创 2018-12-13 21:40:14 · 1372 阅读 · 2 评论 -
leetcode 454 - 4Sum II
紧跟着leetcode 18题目刷454题,题目类似。 此题简单的是不用输出具体结果,只用将所有结果的数量给出来即可。下面给出了两个代码,第二个代码实在第一个代码的基础上改进的,从思路上来讲第一个更好理解一点。package no451_500;import java.util.HashMap;import java.util.Map;public class subject454 ...原创 2019-05-07 20:38:38 · 342 阅读 · 0 评论 -
Kafka原理篇
1 Kafka简介 Kafka是分布式发布订阅消息系统。他最初由Linkedin公司开发,之后成为Apache项目的一部分。Kafka是一个分布式的可划分的冗余备份的持久性的日志服务。它主要用于...转载 2019-06-01 22:05:21 · 481 阅读 · 0 评论 -
漫画:有趣的海盗问题 (完整版)
————— 第二天 —————海盗分金币问题:有5个海盗,获得了100枚金币,于是他们要商量一个方法来分配金币。商议方式如下:1. 由5个海盗轮流提出分配方案。2. 如果超过半数海盗(包括提出者)同意该方案,则按照该方案分配。3. 如果同意该方案的人数(包括提出者)小于等于半数,则提出者要被扔到海里喂鱼,剩下的海盗继续商议分配。4. 海盗们都是绝对理性的,以自己尽可能多获...转载 2019-06-01 22:31:26 · 725 阅读 · 0 评论 -
一道java题:面向对象考察成这样,绝了!!
这道题考察的很细,有继承的东西,有覆盖的东西,异常的东西。想轻松的作对这道题还真的是有难度,有幸看到这篇文章的同学,可以做一下,如果想知道答案,全选本文就可以看到。提示:题目中的注释是第一个结果出来之前代码的执行顺序。代码如下package my.ceh;public class Test { public static void main(String[] args) { Sy...原创 2019-07-23 22:14:30 · 531 阅读 · 0 评论 -
JDK动态代理实现原理解析
之前虽然会用JDK的动态代理,但是有些问题却一直没有搞明白。比如说:InvocationHandler的invoke方法是由谁来调用的,代理对象是怎么生成的,直到前几个星期才把这些问题全部搞明白了。 废话不多说了,先来看一下JDK的动态是怎么用的。转载 2014-07-11 15:27:21 · 490 阅读 · 0 评论