![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
文章平均质量分 87
键圣
一个热衷于不惑的非专业不靠谱程序员
展开
-
JDBC解惑(一) 之 Connection创建
问题:最近接触到jdbc,我有个疑问,建立连接的时候调用的都是接口,那么接口的方法是怎么实现的呢? 比如声明: Connection con; Statement sql; ResultSet rs; //Connection 、Statement 、ResultSet 都是接口 con=DriverManage.getConnection("jdbc:odbc:hel原创 2016-05-13 11:32:19 · 8744 阅读 · 0 评论 -
Java的比较接口 Comparable与Comparator
我们知道Comparable与Comparator接口都能使你的对象拥有你希望的顺序,那么为什么设计两个接口呢?我们看一下Comparable的使用场景:package com.dusk;/** * Created by dushangkui on 2017/6/9. */public class Student implements Comparable { priv原创 2017-06-09 17:18:31 · 392 阅读 · 0 评论 -
一个换行符引起的死亡场景
在开发生涯中我们许多时候会很亲赖于BufferedReader,特别是它的readLine()方法简直就是我们的福音。但是我们在做流传输的时候如果没有传输换行符或者流结束符会怎么样呢?看下面的场景:import java.io.*;/** * Created by dushangkui on 2017/6/2. */public class TestLine { publ原创 2017-06-02 16:28:35 · 400 阅读 · 0 评论 -
Socket编程(ServerScoket, Socket) 回声例子
你的bug越离奇,你的错误越低级!服务端:package dusk.echo.simple;import java.io.*;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.net.Socket;import java.util.concurrent.ExecutorServi原创 2017-06-02 15:04:53 · 425 阅读 · 0 评论 -
BIO与NIO、AIO的区别
转自: http://stevex.blog.51cto.com/4300375/1284437 IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。一、BIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况转载 2017-04-26 17:43:56 · 383 阅读 · 0 评论 -
正确使用 Volatile 变量
Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是synchronized 的一部分。本文介绍了几种有效使用 volatile 变量的模式,并强调了几种不适合使用 volatile 变量的情形。锁提供了两种主要特性:转载 2017-05-05 17:38:31 · 281 阅读 · 0 评论 -
Java策略文件
转自:http://docs.oracle.com/javase/1.5.0/docs/guide/security/PolicyFiles.html一、前言JVM可以通过java.security.Policy的实例化对象根据代码的来源和其签名者来为其指定不同的权限。在任何时候只能有一个起作用。当前安装的Policy对象,在程序中可以通过调用Policy.getPolic转载 2017-04-15 10:44:40 · 628 阅读 · 0 评论 -
通过AccessController看Java安全模型
作为一种诞生于互联网兴起时代的语言,Java 从一开始就带有安全上的考虑,如何保证通过互联网下载到本地的 Java 程序是安全的,如何对 Java 程序访问本地资源权限进行有限授权,这些安全角度的考虑一开始就影响到 Java 语言的设计与实现。可以说 Java 在这些方面的探索与经验,对后来的一些语言与产品都带来了积极影响。Java 中的安全模型在 Java 中将执行程序分成本地和原创 2017-04-14 22:14:04 · 13579 阅读 · 0 评论 -
Java通用判断对象是否相等方法
package com.tuniu.dusk.test;import java.lang.reflect.Array;import java.lang.reflect.Field;public class RelectTest {public static boolean equals(Object obj, Object other){if((obj=原创 2016-07-23 14:10:34 · 6467 阅读 · 0 评论 -
浅谈Servlet的页面跳转
注意:本文的观点立足于Java和Tomcat源码在Servlet中页面的跳转有两种方式实现:转发和重定向。举个工作中的常见例子,测试A发现了一个问题,去找码农B,然后把问题描述和B巴拉巴拉说了一通,然后B一想这问题还得码农C处理一部分问题的,B跑过去和C巴拉巴拉描述了这个问题。这个过程就是转发。如果B听完描述后对A说:这不是我负责的事情,你应该去找码农C,然后测试A找到C重新描述了原创 2016-05-23 13:02:55 · 620 阅读 · 0 评论 -
Java提高班 之深究java.lang.Class.getResource(String)与java.lang.ClassLoader.getResource(String)
package com.dusk.test;import org.junit.Test;public class Client { @Test public void test() { System.out.println(getClass().getResource("")); System.out.println(getClass().getResource("/"));原创 2016-06-03 14:53:31 · 3097 阅读 · 0 评论 -
Java匿名类
匿名类,正如名字一样在java中没有名字标识的类,当然了编译后还是会安排一个名字的。下面是一个关于匿名类的简单例子:public class Client { public static void main(String[] args) throws InterruptedException { Thread t=new Thread(new Runnable() {原创 2016-05-30 23:18:10 · 9679 阅读 · 1 评论 -
Java提高班--注解
注解是一种特殊的接口,为了把注解类型和普通接口类型区分开我们在interface前面添加@符号。注解其实就在在代码上面添加Tag,注解并不会影响程序的运行。注解是一种配置机制。Think in Java中是这样定义注解的:注解(也被称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便的使用这些数据。JavaSE5内置了三种注解,定义在j原创 2016-06-01 14:20:12 · 921 阅读 · 0 评论 -
Java提高班 之操作Properties
如何从XML中读取属性,以及读取的XML文件有什么写法要求吗?正如大家所了解的JAVA有两种方法加载java.util.Properties:load()loadFromXML()load有两个方法支持从文本文件中读取属性load(InputStream inStream)load(Reader reader)新建一个文本文件Properties原创 2016-06-07 14:15:00 · 850 阅读 · 0 评论 -
JAVA8 十大新特性详解
--接口中的方法都是抽象的吗?--NO场景:今天在翻看jdk的java.util.Comparator接口的时候发现了下面这段代码 /** * Returns a comparator that imposes the reverse ordering of this * comparator. * * @return a comp转载 2016-06-01 11:28:07 · 4396 阅读 · 0 评论 -
Java的深克隆与浅克隆
1.Java的基本数据类型和引用数据类型基本数据类型包括byte、int、char、long、float、double、boolean和short八种基本数据类型 创建的对象在Java虚拟机栈中,引用数据类型创建对象的时候会创建两个对象,一个在栈中,一般称作 '‘引用“,另一个存放在Java堆中。2.浅克隆与深克隆浅克隆的外在表现是:对象的基础类型对象相同,引用对象相同,包原创 2016-05-06 10:42:23 · 713 阅读 · 0 评论 -
java.io.File的路径获取方式分析
首先介绍下我们今天的三个主角:getPathgetAbsolutePathgetCanonicalPath先上代码:package test;import java.io.File;import java.io.IOException;public class Test2 { public static void main(String[]原创 2016-05-16 23:49:37 · 5551 阅读 · 0 评论 -
基于WebSocket的简易聊天室
web程序先看web.xml<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.c原创 2017-06-12 22:48:12 · 649 阅读 · 0 评论