JAVA
文章平均质量分 70
N3verL4nd
中年老男人~
展开
-
gc roots
gc roots## 什么是 gc roots可达性分析算法中的起点。可达性分析算法:通过GC Root 找出所有存活的对象,那么剩下所有的没有标记的对象就是需要回收的对象。常说的GC(Garbage Collector) Roots,特指的是垃圾收集器(Garbage Collector)的对象,GC会收集那些不是GC Roots且没有被GC Roots引用的对象。gc roots 原理GC Roots基本思路就是通过一系列的称为“GC Roots”的对象作为起始点, 从这些节点开始向下搜索,原创 2021-07-26 21:36:44 · 287 阅读 · 0 评论 -
Hashids 原理及实现
Hashids是一个将数字转化为长度较短、唯一且不连续的值的库。特点是:对非负整数都可以生成唯一短id可以设置不同的盐,具有保密性递增的输入产生的输出无法预测代码较短,且不依赖于第三方库原理进制转换:将10进制的整数转化为 62 进制(26个字母大小写+10个数字),可扩展为任意进制。 private static String hash(long input, String alphabet) { String hash = ""; final int alphabet原创 2020-07-04 15:32:20 · 4082 阅读 · 0 评论 -
使用springboot 搭建Web框架
添加链接描述原创 2020-04-18 09:33:52 · 501 阅读 · 0 评论 -
查找服务器可用端口号
package com.meituan.test;import java.io.IOException;import java.net.InetAddress;import java.net.InetSocketAddress;import java.net.ServerSocket;/** * @author liguanghui02 * @date 2020/4/14 */...原创 2020-04-14 09:48:44 · 2224 阅读 · 0 评论 -
一个 0 引发的血案
本想起 一个 0 引发的血案 ,本着无事不调侃的性取向,索性改为一个馒头引发的血案。原创 2020-04-08 21:49:27 · 685 阅读 · 0 评论 -
java.lang.NoClassDefFoundError: javax/el/ELManager
HTTP ERROR 503Problem accessing /evolve/qixi/test. Reason: Service UnavailableCaused by:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframewor...原创 2020-03-18 09:58:58 · 5323 阅读 · 0 评论 -
java nio 学习笔记
Java NIO(New IO)是一个可以替代标准Java IO API的IO API(从Java 1.4开始),Java NIO提供了与标准IO不同的IO工作方式。Java NIO: Channels and Buffers(通道和缓冲区)标准的IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写...原创 2020-03-06 09:35:47 · 356 阅读 · 0 评论 -
thrift-transport
org.apache.thrift.transport.TTransport传输组件抽象描述。public abstract class TTransport implements Closeable { public abstract boolean isOpen(); public boolean peek() { return isOpen(); } public ab...原创 2020-03-05 22:52:46 · 1200 阅读 · 0 评论 -
thrift-processor
TProcessor 是服务调用组件。负责从 TProtocol 输入流读取消息,写入到 TProtocol 输出流。TProcessorpublic interface TProcessor { public boolean process(TProtocol in, TProtocol out) throws TException;}TBaseProcessorTB...原创 2020-03-05 22:51:55 · 930 阅读 · 0 评论 -
Java 对象占用大小
JDK8_64_HotSpot VM这个环境中的默认配置下,压缩对象指针(UseCompressedOops)和压缩类指针(UseCompressedClassPointers)都是打开的。java -XX:+PrintCommandLineFlags Test-XX:InitialHeapSize=268435456 -XX:MaxHeapSize=4294967296 -XX:+Prin...原创 2020-02-23 15:16:26 · 340 阅读 · 0 评论 -
HashMap 分析(doing)
JDK8 中,HashMap 使用 数组+链表+红黑树来实现。getget(Object key) 的处理流程:计算 key 的 hash 值,根据 hash 值找到对应数组下标:hash & (table.length - 1)判断数组该位置处的元素(头结点)是否刚好就是我们要找的,如果不是,走第三步判断该元素类型是否是 TreeNode,如果是,用红黑树的方法进行查找;如...原创 2020-02-23 15:28:03 · 215 阅读 · 0 评论 -
java.net.URLClassLoader#findClass解析
jdk1.8 中 AppClassLoader 与 ExtClassLoader 都继承于 URLClassLoader。AppClassLoader 与 ExtClassLoader 没有重写 findClass 方法,URLClassLoader重写了 findClass 方法。故 findClass 都指向 URLClassLoader。protected Class<?&g...原创 2020-02-23 15:22:56 · 7471 阅读 · 2 评论 -
Thrift0.8当接口返回类型i16/i32/i64/bool时,客户端无法捕获服务端抛出的异常
测试代码:namespace java com.meituan.serviceexception BugTestException{ 1: required i32 code; 2: required string msg;}service HelloService { i32 bugCall() throws (1: BugTestException e);...原创 2020-02-18 23:24:32 · 822 阅读 · 1 评论 -
JAVA 关闭窗口的设置 DISPOSE_ON_CLOSE和EXIT_ON_CLOSE 的区别
static intDISPOSE_ON_CLOSE移除窗口的默认窗口关闭操作。static intDO_NOTHING_ON_CLOSE无操作默认窗口关闭操作。static intEXIT_ON_CLOSE退出应用程序默认窗口关闭操作。static intHIDE_ON_CLOSE隐藏窗口的默认窗口关闭操作原创 2012-11-27 13:53:48 · 5049 阅读 · 0 评论 -
关于java的JIT知识
1.JIT的工作原理图 工作原理 当JIT编译启用时(默认是启用的),JVM读入.class文件解释后,将其发给JIT编译器。JIT编译器将字节码编译成本机机器代码。 通常javac将程序源代码编译,转换成java字节码,JVM通过解释字节码将其翻译成对应的机器指令,逐条读入,逐条解释翻译。很显然,经过解释执行,其执行速度必然会比可执行的二进制字节码程序慢。为了提高执行速度,引转载 2012-12-09 13:59:58 · 989 阅读 · 0 评论 -
JOptionPane&&Exception的使用
import java.util.Scanner;import javax.swing.JOptionPane;class AgeException extends Exception{ AgeException(){ JOptionPane.showMessageDialog(null, "您输入了非法年龄","输入错误",JOptionPane.WARNING_MESSAGE);原创 2012-12-24 14:54:10 · 908 阅读 · 0 评论 -
Object类
作为万类之首的Object类,我们有必要详细全面的了解一下。Object类定义在Object.java文件,属于包java.lang。 Object类有一个私有方法private static native void registerNatives(). native是java语言的一个关键字.使用native关键字说明这个方法是原生函数,也就是这个方法是用转载 2012-12-14 10:21:45 · 747 阅读 · 0 评论 -
java内部类详解
1、定义 一个类的定义放在另一个类的内部,这个类就叫做内部类。 public class First { public class Contents{ public void f(){ System.out.println("In Class First's inner Class Contents method f()"); } }转载 2012-12-16 08:53:32 · 722 阅读 · 0 评论 -
JAVA冒泡排序
package xiya;import java.util.Arrays;public class Example9_3 { public static void main(String args[]) { String [] a={"boy","apple","Applet","girl","Hat"}; String [] b=Arrays.copyOf原创 2012-12-17 09:16:22 · 842 阅读 · 0 评论 -
java 连接 Access数据库的两种方法
1:不使用WINDOW的建立数据源方法 直接在JAVA代码内部与Access数据库连接注意:jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};这里的空格,不能少!否则会有异常try{ String url = "jdbc:odbc:driver={Microsoft Access Driver (转载 2012-12-18 12:17:04 · 1181 阅读 · 0 评论 -
java static类
public class PrefixTrie { // supports 7-bit chars. private static final int SIZE = 128; Node root = new Node(); public void put(String prefix, Object value) { Node cu转载 2013-01-12 09:07:21 · 860 阅读 · 0 评论 -
Java RandomAccessFile用法
RandomAccessFileRandomAccessFile是用来访问那些保存数据记录的文件的,你就可以用seek( )方法来访问记录,并进行读写了。这些记录的大小不必相同;但是其大小和位置必须是可知的。但是该类仅限于操作文件。RandomAccessFile不属于InputStream和OutputStream类系的。实际上,除了实现DataInput和DataOutput接转载 2013-01-13 14:19:04 · 745 阅读 · 0 评论 -
JAVA try&&catch
package z;public class Test4_5 { static void Proc(int sel) { try { if (sel != 0) { System.out.println("no Exception "); //return; } else { int j = 4 / sel; } }catch (Arithm原创 2013-01-13 14:32:37 · 765 阅读 · 0 评论 -
JAVA期末考试试题
package z;import java.io.RandomAccessFile;public class J_Test1 { public static void main(String[] args) throws Exception { RandomAccessFile f = new RandomAccessFile("a.txt", "rw"); f.writeBoo原创 2013-01-13 14:03:39 · 2918 阅读 · 0 评论 -
stringbuffer capacity()的疑问
stringbuffer capacity()的疑问public class Example9_11 { public static void main(String args[]) { StringBuffer str = new StringBuffer(); str.append("大家好"); System.out.println("str:" + str); Sys原创 2013-01-14 16:32:23 · 814 阅读 · 0 评论 -
JAVA消息对话框
import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JOptionPane;import java原创 2013-01-14 20:23:47 · 1345 阅读 · 0 评论 -
JAVA确认对话框
import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.JScrollPane;impor原创 2013-01-14 20:24:18 · 2637 阅读 · 0 评论 -
在jsp页面下, 让eclipse完全支持HTML/JS/CSS智能提示
我们平时用eclipse开发jsp页面时智能提示效果不太理想,今天用了两个小时发现了eclipse也可以像Visual Studio 2008那样完全智能提示HTML/JS/CSS代码,使用eclipse自带的插件,无需另外安装插件,具体步骤如下 1.打开eclipse→Windows→Preferences→Java→Editor→Content Assist修改Auto转载 2013-09-06 12:22:04 · 1236 阅读 · 0 评论 -
windows7_下Eclipse中部署tomcat7.0进行JSP+servlet开发
环境:windows 7+EclipseJava EE IDE for Web Developers +tomcat 7.02插件:tomcatPluginV321.zip(百度搜索下载即可)一.配置Tomcat插件 我们创建一个myplugins文件夹用于存放插件,myplugins位于D:\Program Files\J2EE目录下。eclipse安装路径为:D:\Program转载 2013-09-07 09:50:08 · 2549 阅读 · 0 评论 -
jsp连接mysql案例
下载mysql-connector-java-5.1.26将mysql-connector-java-5.1.26-bin.jar放在\jdk\jre\lib\ext中------------------------------------------------------<%@ page language="java" contentType="text/htm原创 2013-09-15 18:55:27 · 1326 阅读 · 0 评论 -
jsp简单实现交互
test.htmlTestp{text-indent: 2em;font-size: 16px;}请回答下面的问题:1、在北京召开的奥运会时第29届奥运会? 正确错误2、windows操作系统是哪个公司的产品?Sun公司IBM公司Mcrosoft公司3、下面的程序设计语言,那些事面向对象的?Java语言C语言C++语言4、编写S原创 2013-09-26 16:01:48 · 1644 阅读 · 0 评论 -
JAVA中堆栈和内存分配原理
1、栈、堆1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域 :存放静态成员(static定义的)5. 常量池 :存放字符串常量和基本类型常量(publ转载 2013-09-26 16:12:03 · 979 阅读 · 0 评论 -
JAVA String对象和字符串常量的关系解析
JAVA String对象和字符串常量的关系解析1 字符串内部列表 JAVA中所有的对象都存放在堆里面,包括String对象。字符串常量保存在JAVA的.class文件的常量池中,在编译期就确定好了。 虚拟机为每个被装载的类型维护一个常量池。常量池就是该类型所用常量的一个有序集合,包括直接常量(string、integer和float point常量)和对其他类型、字段和方转载 2013-09-26 16:09:40 · 1078 阅读 · 0 评论 -
如何更改Jframe里Jpanel的大小
先贴代码:package xiya;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Dimension;import java.awt.FlowLayout;import javax.swing.JButton;import javax.swing.JFrame;import javax.原创 2013-10-13 12:46:49 · 18339 阅读 · 0 评论 -
jsp操作mysql样例
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>Test<% Connection con; Statement sql; ResultSet rs; String url; try{ Class.forName("com.mysql.原创 2013-10-17 23:48:57 · 913 阅读 · 0 评论 -
Request和Session的生命周期
request的生命周期是request请求域,一个请求结束,则request结束 session的生命周期是session会话域,打开一个浏览器请求一个网站的页面后,Session开始,当session超过时间限制(一般是20分种)后,session注销而失效 或是人为使用session.invalidate();使用session失效; 或是关闭浏览器后,session还存在,但是这里已经无法转载 2013-10-24 21:51:55 · 3672 阅读 · 1 评论 -
关于PreparedStatement.addBatch()方法
Statement和PreparedStatement的区别就不多废话了,直接说PreparedStatement最重要的addbatch()结构的使用.1.建立链接,(打电话拨号 ) Connection connection =getConnection();2.不自动 Commit (瓜子不是一个一个吃,全部剥开放桌子上,然后一口舔了转载 2013-10-20 17:46:30 · 1207 阅读 · 1 评论 -
session的属性设置
2. session的属性设置先看案例:登陆页面: action="login.jsp" method="post"> //表单提交激活的页面【此处设为本页】 用户名: 密码: //设计表单。 // 判断是否有请求内容,因为第一次运行本页面表单没有任转载 2013-10-20 20:29:06 · 1935 阅读 · 0 评论 -
Eclipse报错:Setting property 'source' to 'org.eclipse.jst.jee.server:test1' did no
http://chenzhou123520.iteye.com/blog/1836961最近把Eclipse的maven插件从m2eclipse更新到m2e后出了一些莫名其妙的的问题。今天又出了一个,就是Eclipse新建的Maven Web project在tomcat里启动后报错,具体报错信息如下:Shell代码 警告: [SetPropertie转载 2013-12-05 21:46:16 · 1683 阅读 · 0 评论 -
forward和redirect的区别
SetCookie、GetCookie自行设定有效日期:Response.Cookies(CookieName).Expires=#日期# 页面转发区别:在Servlet中两种实现: forward方式:request.getRequestDispatcher("/somePage.jsp").forward转载 2013-12-20 00:27:42 · 1174 阅读 · 0 评论