Java 基础
Java 基础,就是杠.....
大明哥_
大明哥,一个专注 Java 技术的硬核程序员,「死磕 Java」 创始人。
展开
-
java读书笔记----关于java中的static
静态成员是一组比较特殊的成员,它不属于某个特定的类实例。它独立于该类。也就是说它不依赖类特定的实例,而被类的所有实例共享。 类的静态成员一般可以分为3种:静态成员变量,静态方法,静态代码块。它们都具有以下几个特点: 1、在类加载的时候,就进行创建和初始化或执行代码; 2、它们对于一个类来说,都只有一份;原创 2012-02-13 20:37:38 · 2754 阅读 · 0 评论 -
在tomcat下部署工程
xx系统第一期工程完成,今天老大要我去部署系统,从来就没有在tomcat下部署过,一直都是在myeclipse下部署、启动、运行即可,所以这次遇到了几个问题,记录下来。 tomcat启动 在安装tomcat后,配置好环境变量,双击tomcat\bin路径下的startup.bat,并没有出现我预期的命令框,而是一闪而过。这里肯定有错,至于是什么错误我还不知道原创 2013-10-23 19:49:01 · 10877 阅读 · 0 评论 -
java POI实现向Excel中插入图片
做Web开发免不了要与Excel打交道。今天老大给我一个任务-导出Excel。开始想的还是蛮简单的,无非就是查找,构建Excel,response下载即可。但是有一点不同,就是要加入图片,就是这个加入图片搞了好久。同时网络上确实没有发现比较好的资料,所以写这篇博文记录之,供自己和博友们查询,参考。 在POI中有HSSFPatriarch对象,该对象为画图的顶级管理器,它的creat原创 2014-03-05 08:59:54 · 88516 阅读 · 22 评论 -
java提高篇(二四)-----HashSet
原文出自:http://cmsblogs.com/?p=599 在前篇博文中(java提高篇(二三)-----HashMap)详细讲解了HashMap的实现过程,对于HashSet而言,它是基于HashMap来实现的,底层采用HashMap来保存元素。所以如果对HashMap比较熟悉,那么HashSet是so easy!!一、定义public class HashSet ext原创 2014-03-24 21:26:07 · 41765 阅读 · 11 评论 -
再解Java中的String
原文出自:http://cmsblogs.com/?p=863。尊重作者的成果,转载请注明出处! 个人站点:http://cmsblogs.com----------------------------------------------------------------------------------------------------------------------原创 2014-04-27 21:55:46 · 4211 阅读 · 7 评论 -
详解java定时任务
在我们编程过程中如果需要执行一些简单的定时任务,无须做复杂的控制,我们可以考虑使用JDK中的Timer定时任务来实现。下面LZ就其原理、实例以及Timer缺陷三个方面来解析java Timer定时器。一、简介 在java中一个完整定时任务需要由Timer、TimerTask两个类来配合完成。 API中是这样定义他们的,Timer:一种工具,线程用其安排以后在后台线程中执行的任务。可安排任原创 2014-06-20 12:07:10 · 80801 阅读 · 19 评论 -
进一步封装highchart,打造自己的图表插件:jHighChart.js
Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表。支持的图表类型有曲线图、区域图、柱状图、饼状图、散状点图和综合图表。但是参考官网的实例,我发现如果在项目中频繁使用highchart,按照它的方式还是挺复杂的,我这里所谓的复杂并不是难而是麻烦,因为你每写一个图表你就必须重新写类似于下面结构的javascript原创 2015-01-30 17:24:47 · 8400 阅读 · 0 评论 -
java中文乱码解决之道(四)-----java编码转换过程
前面三篇博客侧重介绍字符、编码问题,通过这三篇博客各位博友对各种字符编码有了一个初步的了解,要了解java的中文问题这是必须要了解的。但是了解这些仅仅只是一个开始,以下博客将侧重介绍java乱码是如何产生的、存在哪些乱码的情况、该如何从根本上解决乱码问题。各位随博主一起征服令人厌烦的java乱码问题吧!!!java编码转换过程 我们总是用一个java类文件和用户进行最直接的交互(输入、输出),这些原创 2015-01-13 09:30:52 · 11302 阅读 · 2 评论 -
java中文乱码解决之道(八)-----解决URL中文乱码问题
我们主要通过两种形式提交向服务器发送请求:URL、表单。而表单形式一般都不会出现乱码问题,乱码问题主要是在URL上面。通过前面几篇博客的介绍我们知道URL向服务器发送请求编码过程实在是实在太混乱了。不同的操作系统、不同的浏览器、不同的网页字符集,将导致完全不同的编码结果。如果程序员要把每一种结果都考虑进去,是不是太恐怖了?有没有办法,能够保证客户端只用一种编码方法向服务器发出请求? 有!这里我主要原创 2015-01-21 09:13:50 · 33825 阅读 · 1 评论 -
java中文乱码解决之道(七)-----JSP页面编码过程
我们知道JSP页面是需要转换为servlet的,在转换过程中肯定是要进行编码的。在JSP转换为servlet过程中下面一段代码起到至关重要的作用。 在上面代码中有两个地方存在编码:pageEncoding、contentType的charset。其中pageEncoding是jsp文件本身的编码,而contentType的charset是指服务器发送给客户端时的内容编码。 在前面一篇博客中就提到过原创 2015-01-21 09:07:34 · 5836 阅读 · 1 评论 -
java中文乱码解决之道(五)-----java是如何编码解码的
在上篇博客中LZ阐述了java各个渠道转码的过程,阐述了java在运行过程中那些步骤在进行转码,在这些转码过程中如果一处出现问题就很有可能会产生乱码!下面LZ就讲述java在转码过程中是如何来进行编码和解码操作的。编码&解码 在上篇博客中LZ阐述了三个渠道的编码转换过程,下面LZ将结束java在那些场合需要进行编码和解码操作,并详序中间的过程,进一步掌握java的编码和解码过程。在java中主要有原创 2015-01-20 09:29:53 · 75167 阅读 · 4 评论 -
java中文乱码解决之道(六)-----javaWeb中的编码解码
在上篇博客中LZ介绍了前面两种场景(IO、内存)中的java编码解码操作,其实在这两种场景中我们只需要在编码解码过程中设置正确的编码解码方式一般而言是不会出现乱码的。对于我们从事java开发的人而言,其实最容易也是产生乱码最多的地方就是web部分。首先我们来看在javaWeb中有哪些地方存在编码转换操作。编码&解码 通过下图我们可以了解在javaWeb中有哪些地方有转码: 用户想服务器发送一个HT原创 2015-01-20 09:37:30 · 12656 阅读 · 3 评论 -
java中文乱码解决之道(二)-----字符编码详解:基础知识 + ASCII + GB**
在上篇博文(java中文乱码解决之道(一)-----认识字符集)中,LZ简单介绍了主流的字符编码,对各种编码都是点到为止,以下LZ将详细阐述字符集、字符编码等基础知识和ASCII、GB的详情。一、基础知识 在了解各种字符集之前我们需要了解一些最基础的知识,如:编码、字符、字符集、字符编码基础知识。 编码 计算机中存储的信息都是用二进制表示的,我们在屏幕上所看到文字、图片等都是通过二进制转换的结果。原创 2015-01-05 08:47:41 · 9311 阅读 · 3 评论 -
java中文乱码解决之道(一)-----认识字符集
沉寂了许久(大概有三个多月了吧),LZ“按捺不住”开始写博了! java编码中的中文问题是一个老生常谈的问题了,每次遇到中文乱码LZ要么是按照以前的经验修改,要么则是baidu.com来解决问题。阅读许多关于中文乱码的解决办法的博文后,发现对于该问题我们都(更加包括我自己)没有一个清晰明了的认识,于是LZ想通过这系列博文(估计只有几篇)来彻底分析、解决java中文乱码问题,如有错误之处望各位同仁指原创 2015-01-04 08:20:15 · 15818 阅读 · 3 评论 -
java中文乱码解决之道(三)-----编码详情:伟大的创想---Unicode编码
随着计算机的发展、普及,世界各国为了适应本国的语言和字符都会自己设计一套自己的编码风格,正是由于这种乱,导致存在很多种编码方式,以至于同一个二进制数字可能会被解释成不同的符号。为了解决这种不兼容的问题,伟大的创想Unicode编码应时而生!!Unicode Unicode又称为统一码、万国码、单一码,它是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编原创 2015-01-07 09:20:09 · 7689 阅读 · 2 评论 -
java中文乱码解决之道(九)—–总结
乱码,我们前台展示的杀手,可能有些朋友和我的经历一样:遇到乱码先按照自己的经验来解决,如果没有解决就google,运气好一搜就可以解决,运气不好可能够你折腾一番了。LZ之所以写这个系列博客就是因为遇到这个令人讨厌的问题,虽然是小问题但又不得不解决。在这个系列博文中LZ并没有阐述归纳乱码的方法,出现乱码的原因各式各样但根本原因就是编码转换过程中的格式不一样,所以我们只需要了解了java在运行过程中是原创 2015-01-30 10:47:41 · 13909 阅读 · 6 评论 -
java生成压缩文件
在工作过程中,需要将一个文件夹生成压缩文件,然后提供给用户下载。所以自己写了一个压缩文件的工具类。该工具类支持单个文件和文件夹压缩。放代码:import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;im原创 2013-07-29 21:15:35 · 13827 阅读 · 4 评论 -
一种另类的解决URL中文乱码问题--对中文进行加密、解密处理
使用加密解密技术解决URL中文乱码问题原创 2013-07-19 08:13:34 · 5542 阅读 · 1 评论 -
java读书笔记----equal和==的区别
equal和“==”都是表示相等的意思,但是它们在进行实际的相等判定的时候,却有着非常大的区别 先看看一个例子 public class EqualTest{ public static void main(string[] args){ String str1 = "abcd"; String str2 = "abcd"; String原创 2012-02-13 18:23:10 · 3129 阅读 · 2 评论 -
渐析java的浅拷贝和深拷贝
首先来看看浅拷贝和深拷贝的定义: 浅拷贝:使用一个已知实例对新创建实例的成员变量逐个赋值,这个方式被称为浅拷贝。 深拷贝:当一个类的拷贝构造方法,不仅要复制对象的所有非引用成员变量值,还要为引用类型的成员变量创建新的实例,并且初始化为形式参数实例值。这个方式称为深拷贝 也就是说浅拷贝只复制一个对象,传递引用,不能复制实例原创 2012-02-27 22:01:52 · 3040 阅读 · 1 评论 -
比较Java Swing中三种注册事件的方法
Swing 是目前Java中不可缺少的窗口工具组,是建立图形化用户界面(GUI)程序的强大工具。Java Swing组件自动产生各种事件来响应用户行为。Java将事件封装成事件类,并且为每个事件类定义了一个事件监听器。一个组件注册事件监听器方法,表明该组件要响应指定事件。也就是说我们可以通过注册监听器,监听事件源产生的事件,从而在事件处理程序中处理我们所需要处理的用户行为。原创 2012-03-25 17:40:14 · 19539 阅读 · 2 评论 -
解决jscollpan不能出现水平滑动条的问题
在做java课程设计的时候,需要一个做许多的表格,由于数据量比较,所以决定给JTable增加个Jcollpan滑动窗口。 可是在我给表格设定的大小超过了Jscollpan,它只会出现垂直滑动条。对于这个我很蛋疼很纠结!! 当我查看帮助文档后,发现了一个这样的方法:setAutoResizeMode(JTable.AUTO_RESIZE_OFF);这个方法原创 2012-05-10 22:39:23 · 2175 阅读 · 0 评论 -
String类型转换的三种方法分析
在很多情况下我们都需要将一个对象转换为String类型。一般来说有三种方法可以实现:Object.toString()、(String)Object、String.valueOf(Object)。下面对这三种方法一一分析: 一、采用Object.toString() toString方法是java.lang.Object对象的一个public方法。原创 2012-06-28 15:30:02 · 2890 阅读 · 1 评论 -
使用BigDecimal进行精确运算
首先我们先来看如下代码示例:public class Test_1 { public static void main(String[] args) { System.out.println(0.06+0.01); System.out.println(1.0-0.42); System.out.println(4.015*100); System.out.prin原创 2012-09-09 10:15:54 · 5940 阅读 · 1 评论 -
使用定时器实现弹弹球
今天模拟书上的一个例题做了一个弹弹球,是在画布上的指定位置画多个圆,经过一段的延时后,在附近位置重新画。使球看起来是动,通过JSpinner组件调节延时,来控制弹弹球的移动速度. BallsCanvas.javapublic class BallsCanvas extends Canvas implements ActionListener, FocusListener原创 2012-03-28 10:58:32 · 2986 阅读 · 2 评论 -
Java邮件开发-----电子邮件的基本概念介绍
电子邮件用于网上的信心传递和交流,它是最重要的Internet服务之一。据统计Internet有30%的业务是电子邮件有关的。同时我们也不可否认它在我们的日常生活、工作办公方面扮演着很重要的角色。譬如:许多办公自动化项目(OA)中都要附带发送邮件的功能,如果还要使用OutLook等手工方式就不适合,在这个高速的时代,我们需要提供工作效率,让工作能够自动化。同时在许多网站中也都需要附带发送邮件的功能原创 2012-12-09 12:18:22 · 10409 阅读 · 2 评论 -
Java邮件开发-----JavaMail(二)
这篇博客主要是介绍如何实现将邮件发送给多个收件人和如何利用Authenticators对象实现用户验证。 在指定收件人的时候,我们可以有两种方法来指定。上篇博客是在发送邮件的时候临时指定收件人,其实还可以在Message对象中指定。message.addRecipient(Message.RecipientType.TO,new InternetAddress(” 9原创 2012-12-10 13:37:14 · 14450 阅读 · 0 评论 -
Java邮件开发-----JavaMail(一)
前面介绍了电子邮件系统的基本知识(Java邮件开发-----电子邮件的基本概念),那篇博客知识对基础理论知识做一些简要介绍,并不妨碍我们做邮件开发。现在开始Java邮件开发。 一、JavaMail简介 JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。Ja原创 2012-12-09 23:03:01 · 17448 阅读 · 0 评论 -
Java邮件开发-----JavaMail(三)
前面两篇博客都只是最基本的邮件最简单的邮件发送了,在实际的电子邮件中我们一般都会涉及到更加复杂电子邮件结构,例如有附件、邮件正文里面包含图片、包含歌曲等等,在这个时候我们就必须要对邮件的结构有着很清晰的认识。在进行复合邮件开发之前需要对复合邮件的结构有一定的了解。 复合邮件的整体结构 上面这幅图片展示了一封复合邮件的整体结构,我们可以看出一封复杂的电子原创 2012-12-10 20:10:39 · 5759 阅读 · 0 评论 -
Myeclipse下安装和使用SVN(一)
最近做毕业设计花了两天的时间做的,突然发现思路错了,可以有更好的办法。没有办法我就开始删了,好不容易还原了,发现其他原来没有错的地方有错了,而且还是一个莫名其妙的错误,但是还原过去又是不可能的了。谁叫我没有安装SVN呢。于是我便决定了来学习学习SVN。 一、SVN简介 1.1、 什么是SVN 有一个简单但不十分精确比喻:原创 2013-01-13 15:30:31 · 2779 阅读 · 1 评论 -
Myeclipse下安装和使用SVN(二)
一、SVN服务器配置 这里配置只需要配置服务器即可。打开目录:D:\workspace\svnRepository\conf。这里有三个文件:authz、passwd、svnserve.conf。需要配置。 authz:主要是做复杂的群组权限控制。 Passwd:存放项目成员账户信息 svnserve.conf:定义原创 2013-01-13 16:41:48 · 3909 阅读 · 1 评论 -
myeclipse的优化
Myeclipse的速度一直都很慢,这个大家应该都知道。 以前都是使用myeclipse6.5,感觉速度还是可以接受。今天安装了一个myeclipse8.6,这个速度就让我望尘莫及了,打开一个jsp文件都需要5.6秒。所以在网上查了一些myeclipse的优化策略,总结在此。这些方法都是经过测试过了,保证有效。 一、去掉不需要的模块 myeclipse总是原创 2013-04-04 17:13:44 · 2634 阅读 · 0 评论 -
JAVA处理Excel文件---生成简单的Excel文件
在现实的办公中,我们常常会有这样一个要求:要求把报表直接用excel打开。在实习中有这样一个需求。根据所选择的资源查询用户所提供附件的全部信息并生成excel供下载。但是在查询的时候我们需要来检测用户所提供的附件里面的信息是否有错误(身份证)。有错误的生成错误信息excel。 Apache的POI项目,是目前比较成熟的HSSF接口,用来处理Excel对象。其实POI不仅仅只能处理exc原创 2013-04-04 21:20:30 · 14379 阅读 · 1 评论 -
cannot be cast to java.lang.Comparable解决办法
对于TreeMap,他是一个有序的map,当你将key put到treeMap中,它会根据你所提供的排序规则进行排序插入,如果没有提供,则使用默认。 cannot be cast to java.lang.Comparable,遇到这个异常错误,就是说treeMap并不知道该如何put,就会报这个异常错误。第一次put时,因为为空,所以不需要比较,即不会报错。但是当第二次put时原创 2013-05-16 15:29:12 · 19084 阅读 · 0 评论 -
《Effective java》—–读书笔记
2015年进步很小,看的书也不是很多,感觉自己都要废了,2016是沉淀的一年,在这一年中要不断学习、看书,努力提升自己!预计在2016年要看12本书,主要涉及java基础、Spring研究、java并发、JVM、分布式之类的。在今年面试的时候深受打击,到处都是问分布式、集群的?难道现在工作两三年的都这么牛逼了?都在搞分布式、集群之类的?2016书单如下:1、深入理解Java虚拟机:JVM高级特性与原创 2016-05-04 08:55:05 · 15461 阅读 · 13 评论