
Java
文章平均质量分 57
颜
这个作者很懒,什么都没留下…
展开
-
nginx和tomcat、apache的区别
nginx和tomcat的区别web上的server都叫web server,但是大家分工也有不同的。nginx常用做静态内容服务和代理服务器(不是你FQ那个代理),直面外来请求转发给后面的应用服务(tomcat,django什么的),tomcat更多用来做做一个应用容器,让java web app跑在里面的东西,对应同级别的有jboss,jetty等东西。但是事无绝对,nginx也可以通过模块开发来提供应用功能,tomcat也可以直接提供http服务,通常用在内网和不需要流控等小型服务的场景。ap转载 2021-11-05 20:37:09 · 391 阅读 · 0 评论 -
JAVA NIO是同步非阻塞I/O的理解与NIO多路复用器Selector
一般来说,服务器端的I/O主要有两种情况: 一是来自网络的I/O; 二是对文件(设备)的I/O。 首先一个IO操作其实分成了两个步骤:发起IO请求和实际的IO操作,同步IO和异步IO的区别就在于第二个步骤是否阻塞,如果实际的IO读写阻塞请求进程,那么就是同步IO,因此阻塞IO、非阻塞IO、IO复用、信号驱动IO都是同步IO,如果不阻塞,而是操作系统帮你做完IO操作再将结果返回给你,那么就是异步IO。 阻塞IO和非阻塞IO的区别在于第一步,发起IO请求是否会被阻塞,如果阻塞直到完成那么就是传统的阻塞IO转载 2021-03-18 19:37:27 · 1173 阅读 · 0 评论 -
一道Java面试题,由于catch 捕获异常的原理
有如下代码:class Annoyance extends Exception {}class Sneeze extends Annoyance {} class Human { public static void main(String[] args) throws Exception { try {原创 2017-05-22 22:43:42 · 996 阅读 · 0 评论 -
Java类中变量的初始化/赋值过程
public class Person { public String name="Person"; int age=0; { System.out.println("初始化块:"+name); name = "initBlock"; System.out.println("初始化块:"+name);原创 2017-05-23 13:35:54 · 3815 阅读 · 0 评论 -
Java位运算之2的N次幂、整数转换、寻找只出现一次的数
Java位运算位运算:只能对整数进行位运算,可加快计算机计算速度。因为所有数在内存中都是以二进制存放,故直接对数的二进制位进行操作非常快,比如乘法、除2操作:通过左右移二进制位即可,无需将数转为十进制后再通过加法完成(乘法本质是由加法实现的)Java位运算的简单实现:/* 位运算:加快计算效果,只能对整数进行位运算。因为所有数在内存中都是以二进制存放,故直接对数的二进制位进行操作非常快,比...原创 2019-04-13 08:58:30 · 2562 阅读 · 0 评论 -
最快捷方便的方法 — idea自动生成Java方法注释(包括参数与返回值)
如题:在idea中生成方法注释的快捷方法:在定义方法的行上面键入/**然后回车,即可自动生成方法注释。效果如下图:参考:https://www.cnblogs.com/niuxiaozu/p/8806331.html...原创 2019-04-13 09:10:30 · 2851 阅读 · 0 评论 -
Java实现深度优先和宽度优先搜索(图遍历)
深度优先和宽度优先搜索本质是一种图遍历/搜索算法。深度优先(DFS)对于新发现的顶点,若该点还有以此为起点的为探测到的边,则沿着这条边继续探测下去(明显是个递归过程)。当顶点v所有边都已被探寻过后,搜索将回到发现顶点v有起始的那些边。此过程一直进行到已发现从源顶点可达的所有顶点为止。宽度优先(BFS)当访问顶点v时,记录其所有未被访问的相邻顶点(加入待访问队列中),然后结束这个顶点v的访...原创 2019-04-13 09:40:20 · 2306 阅读 · 0 评论 -
Fibonacci数列--动态规划与递归的Java实现
Fibonacci数列–动态规划与递归的Java实现递归与动态规划相似点:递归和动态规划都要求给出 递推公式 ,将大问题划分为相似子问题求解。而动态规划比递归好处是:保存中间计算结果(子问题的解),去除重复计算!递归的特点:(1) 外层往往需要内层计算结果:发现父问题与子问题的关系,具体问题具体实现(2) 必须有一个明确的递归结束条件,称为递归出口!递归实现public class ...原创 2019-04-13 10:40:33 · 995 阅读 · 1 评论 -
Java实现Hanoi(汉诺塔)问题
Hanoi问题简述: 将A上的n个圆盘借助B移到C上,求需要移动的次数or打印移动过程递归的经典问题,问题详细就不多说了。求解:问题分解:(1) 将A上的N-1个盘移动到B上(2) 将B上的N-1个盘再移动到C上以上即显示了递归思想:将父问题分解为2个子问题Hanoi(1) = 1Hanoi(n) = 2*Hanoi(n-1) + 1; 其中1:盘n由A–>C的一次操作实现...原创 2019-04-13 10:44:44 · 1241 阅读 · 0 评论