![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
文章平均质量分 69
Bird
这个作者很懒,什么都没留下…
展开
-
JAVA匿名内部类实现工厂化生产
今天看了一下内部类,发现匿名内部类貌似是一个很高深的玩意,他在初始化的时候竟然又定义了一个无名的内部类去继承这个实现类或者说是接口,可谓java实现多态性 的一个非常漂亮的方法,下面请看实例代码package com.bird.thinking;/** *原创 2011-09-27 20:57:54 · 1993 阅读 · 1 评论 -
JDBC学习之路(二)CRUD
所谓的CRUD就是创建(Creat),读取(Read),更新(update),删除(Delete),其实有了前面的那些代码做铺垫,实现CRUD非常简单,难得是对特定的数据,废话不多说,请看代码 package com.bird.jdbc;import java.s原创 2011-09-27 21:50:46 · 1351 阅读 · 0 评论 -
DOM解析XML的增删改查实现
前面的XML读取算是已经完成了,现在是使用DOM对他进行增删改查,这个才是DOM的优势所在,其实代码很简单,不需要过多的解释,下面代码奉上 package com.bird.xml;import java.io.FileOutputStream;import ja原创 2011-10-11 21:27:40 · 4022 阅读 · 1 评论 -
异常的探索-Thinking in java
以前对异常一点也不陌生,但是看完Thinking In Java这一张厚才发现,异常其实是非常复杂的玩意,涉及到java内存的堆栈的查找,程序的中断等等,可见一斑,下面贴上代码,好好研究一下异常,可谓是JAVa的精华啊 package com.bird.thinki原创 2011-10-02 21:54:12 · 1411 阅读 · 0 评论 -
Eclipse常用快捷键(自己慢慢总结更新)
1.ALT+/ 对于不完整的类名的提示,帮助你打出完成的类名2.Ctrl+/ 将多行代码注释3. ALT+SHITF+F 将自己的代码格式化,让他好看一些原创 2011-09-30 22:51:13 · 1163 阅读 · 1 评论 -
JDBC学习之路(三)防止SQL注入,PreparedStatement探索
现在登录注册或者其他很多地方遇到用户输入的内容可以直接拿到数据库内部去进行执行SQL语句,这个是一项很危险的运动,因为你不知道用户会输入什么,如果用户对SQL语句很熟悉,他就可以在输入的时候加上''两个冒号作为特殊字符,这样的话会让计算机认为他输入的是SQL语句的关键字从而改变你原创 2011-09-30 22:04:20 · 4137 阅读 · 0 评论 -
构造器内书写异常以及使用的注意事项---Thinking in java
构造器的功能是把对象设置成安全状态,但还会有别的动作,比如打开一个文件,这样的动作只有在对象使用完毕并且用户调用了特殊的清理方法之后才能得以清理。如果在构造器内出现了异常,这些清理行为也许就不能正常工作了。这意味着在编写构造器时候要格外细心。请看下面的例子packag原创 2011-10-03 19:44:20 · 1170 阅读 · 0 评论 -
JDBC学习之路(四)大文本和二进制文件的写入
老早就纳闷,每次使用MYSQL都是放一些小文本,小东西,不是听说数据库都是很牛逼的,能放灰常大的东西嘛?现在终于知道了向MYSQL中放入大文本大图片或者大二进制的方法了,不过貌似MYSQL对单个文件的放入有些限制,你得学会更改MYSQL的my.ini配置文件才行.废话不多原创 2011-10-04 21:07:42 · 2551 阅读 · 0 评论 -
通过类字面常量解释接口常量为什么只能定义为static final,类加载过程---Thinking in java
曾经被一哥们问题个问题,为什么接口的常量只能定义为static final,我当时还说他一个接口你定义点方法就行了,还弄什么常量,不过话又说回来,我确实没有解决他的这个问题,以前看Thinking in java貌似解决了类初始化为对象的过程,今天看了一下CLass的类字节变量,原创 2011-10-05 11:32:34 · 4429 阅读 · 4 评论 -
JDBC学习之路(五)基于MVC框架的JDBC异常与设计模式处理
以前写JDBC时候,根本没有考虑过底层JDBC的SQLException异常如何处理,有时候直接放在那里就不动了,但是这样的做法非常不正确,今天看了一下JDBC的视频,知道了正确的JDBC处理办法,还有一些正规的处理模式,现在感觉以后做东西还是得正规一些好。下面将代码贴出来研究研原创 2011-10-06 12:09:20 · 2649 阅读 · 0 评论 -
对XML文档进行JAXP的DOM解析
首先说一下对XML文档解析的两种方法的好坏 DOM的CRUD方便,缺点是占用内存比较大 SAX 占用内存小 解析速度快 缺点是只适合做文档的读取 不适合CRUD 下面我将使用java 自带的JAXP进行XML文档的解析 首先将book.xm原创 2011-10-07 21:37:22 · 1291 阅读 · 0 评论 -
调整Java虚拟机JVM的最大内存使用大小
前不久才了解到一个问题,JVM虚拟机的默认内存使用大小为64MB,也就是你不更改的话,他的JVM内存使用大小就是64MB,如果超出这个内存使用限度,就会报java head space错误,下面贴上代码 package com.bird.xml;public class原创 2011-10-08 23:39:03 · 4117 阅读 · 1 评论 -
java文件操作--Thinking in java
文件操作应该是JAVA最基础但是也是最重要的一部分了,下面奉上几个简单的例子 package com.bird.thinking;import java.io.BufferedReader;import java.io.FileReader;/** * @use原创 2011-10-18 19:44:36 · 2160 阅读 · 0 评论 -
JDBC学习之路(六)--基于Properties配置文件的工厂生产模式的低耦合实现
最近看JDBC的时候,最后讲到了降低代码耦合度,在没有Spring的时候,还是使用Properties配置文件进行简单的配置,实现以后数据库访问层的稳定不需要再次修改,我写了一个简单的HelloWorld说明了工厂生产模式,领会精神,下面将代码贴上, 首先是配置文件,他的名原创 2011-10-09 21:59:11 · 1538 阅读 · 0 评论 -
Java实现文件的复制和新Nio包通道的运用--Thinking in java
首先是二进制读取文件成为字节的代码 package com.bird.thinking;import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOExcepti原创 2011-10-19 19:33:46 · 2587 阅读 · 0 评论 -
一个基础XML作为数据库的学生信息管理程序
对于那些比如学生信息的纯文本数据的存取,现在比较流行的是将他进行XML存放,而不是安装数据库去存放这些文字,这也算是目前XML的一个比较好的用途,本文在JAVA自带的XML解析器的基础上,实现了控制台输入命令对XML文档进行增删改查的功能,而且引入了编译异常与运行异常和异常作为返回值的内容,比较耐看,下面将代码分模块贴出。一。Java Bean 实现对学生信息的面向对象封装package原创 2011-10-20 20:05:55 · 2933 阅读 · 2 评论 -
Java I/O内存映射方法实现对大文件的内存操作
操作系统对内存一次读取的数据大小有要求,但是对于i/O系统,读取大文件是很必要的事情,所以,可以使用内存映射文件系统实现对大文件的读取 代码如下package com.bird.thinking;import java.io.FileNotFoundException;import java.io.IOException;import java.io.RandomAccessFi原创 2011-10-20 19:55:20 · 2337 阅读 · 0 评论 -
禁用myeclipse indexes 及 优化myEclipse 启动速度
1.禁用myeclipse updating indexesMyEclipse 总是不停的在 Update index,研究发现Update index...是Maven在下载更新,但很是影响myeclipse的使用速度,禁用办法如下:Window => Preferences => Myeclipse=> Maven4Myeclipse => Maven=>取消勾选的Do原创 2011-10-21 13:03:45 · 1586 阅读 · 0 评论 -
实现Serializable接口的可控制序列化实现
实现序列化接口Serializable也可以控制对变量和transient变量的序列化控制,请看代码 package com.bird.thinking;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import ja原创 2011-10-24 21:24:30 · 1473 阅读 · 0 评论 -
Transient关键字在Java对象序列化中的作用
在对象序列化的时候,有些变量比如密码等等,你需希望他去序列化,否则别人就可以通过字节流来回复数据得到你的private的数据,这样是一个很危险的问题,下面使用关键字Transient 来解决这个问题,他的意思就是不需要虚拟机去序列化这个变量,我会自己去处理 package com.bird.thinking;import java.io.FileInputStream;import原创 2011-10-23 15:40:06 · 5097 阅读 · 5 评论 -
Java用ZIP进行多文件保存
Java里面的内置的ZIP文件压缩流具有很强的功能,能进行ZIP的压缩请求,下面我们来看利用ZIP流实现对文件的压缩和读取 package com.bird.thinking;import java.io.BufferedOutputStream;import java.io.BufferedReader;import java.io.FileOutputStream;impor原创 2011-10-23 14:34:45 · 3036 阅读 · 0 评论 -
Java对对象的序列化和反序列化
Java提供了将对象以字节的形式写入到磁盘中,在需要的时候在从磁盘中恢复的功能,在网络传输中非常有用,下面将代码贴上,分别用两种形式实现了对象的序列化,其中第二种当时能将指定的变量序列化,更加人性化的随心所欲 package com.bird.thinking;import java.io.FileInputStream;import java.io.FileOutputStrea原创 2011-10-23 15:23:59 · 8048 阅读 · 5 评论 -
使用Apache的BeanUtils进行JavaBean的反射操作
对JavaBean的操作,Java提供了一套自己的方法,但是用起来感觉不咋的,但是Apache自己出版了一套BeanUtilsAPI方法进行Bean操作,很牛逼,很好用,下面放上几个小例子,用来入门吧,以后慢慢研究,当然,等有用的时候。当然,使用这个玩意需要去下载JAR包的,BeanUTils下载地址为点击打开链接,他需要另一个第三包,下载地址为点击打开链接,将他们导入到工程路径中首先贴上原创 2011-11-13 22:27:29 · 7643 阅读 · 0 评论 -
SAX解析XML文档
package com.bird.sax;import javax.xml.parsers.SAXParser;import javax.xml.parsers.SAXParserFactory;import org.xml.sax.Attributes;import org.xml.sax.ContentHandler;import org.xml.sax.Locator;imp原创 2011-10-25 20:06:32 · 1104 阅读 · 0 评论 -
使用Dom4j实现对XML文档的解析
现在对XML文档的解析大部分都采用Dom4j,比如Hibernate和Sun的JAXP,Dom4j的文档看完感觉特别爽,至少比JAXP简单方便,下载地址为点击打开链接下面将几个简单的及诶系例子贴上来先把需要解析的XML文档拿上来 java就业培训 张孝祥 109元 209大洋 JavaScript开发详解 陈显鹭 15原创 2011-10-25 21:19:56 · 1816 阅读 · 1 评论 -
使用泛型迭代Map集合
package com.bird.beanutils;import java.util.Iterator;import java.util.LinkedHashMap;import java.util.Map;import java.util.Set;import java.util.Map.Entry;import org.junit.Test;/** * @use 使用泛原创 2011-11-15 20:44:06 · 2271 阅读 · 0 评论 -
使用Dom4j对XML进行增删改查
使用Dom4j对XML进行增删改查非常简单,这里就不多说废话,下面上代码package com.bird.dom4j;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import java.util.List;import org.dom4j.Document;import org.dom4j.D原创 2011-10-26 20:29:21 · 6149 阅读 · 2 评论 -
XML中Xpath语法的使用
在XML的解析和定位中,Xpath是强大到无法想想的地步,当然,他的文档也是简单的要命,呵呵,下面我贴一个最简单的Xpath例子,Xpath请自己去学习,文档的网址为点击打开链接,自己去看吧package com.bird.dom4j;import org.dom4j.Document;import org.dom4j.io.SAXReader;/** * @use 使用XPath原创 2011-10-26 21:26:04 · 1542 阅读 · 0 评论 -
Java多线程之线程返回值
对于Java多线程的理解,我以前仅仅局限于实现Runnable接口或者继承Thread类,然后重写run()方法,最后start()调用就算完事,但是一旦涉及死锁以及对共享资源的访问和随时监控线程的状态和执行顺序等等就不行了,所以现在开始看Thinking in java的并发这一节,从头学多线程, 下面发一个关于线程中的任务返回,和创建线程池的代码 package com原创 2011-10-30 14:12:28 · 27140 阅读 · 2 评论 -
Java中的可变参数
可变参数在Java中其实就是一个数组而已,但是很好使用,下面介绍一个小例子 package com.bird.junit;import org.junit.Test;/** * @use 可变参数 * @author Bird * */public class Add { public void add(int ...nums){//nums就是可变参数 int su原创 2011-10-31 19:52:52 · 1683 阅读 · 1 评论 -
junit测试简单实例
junit是Java开发测试中非常好用的一个测试工具,下面演示他的几个简单应用首先构造一个需要测试的类 package com.bird.junit;/** * @use 需要测试的类 * @author Bird * */public class Person { public String run(){ System.out.println("run!");原创 2011-10-31 16:32:40 · 1917 阅读 · 0 评论 -
Java WEB之Servlet学习之路(一)一个最简单的Servlet应用
好久没有更新博客了,有点冷清,主要是最近忙着看Java WEb前段时间都是基础,一些http理论和WEB容器理论,没有什么实践性代码,所以没写代码,现在终于正式开始Servlet编程了,下面就得好好的开始写代码了呃,下面奉上第一篇,Setblet的Hello World!!!首先放上Setvlett代码package com.bird.servlet;import java.io.IO原创 2011-11-26 20:03:16 · 2128 阅读 · 0 评论 -
ServletConfig读取web.xml文件的应用实例
在实际开发中,有时候一些变量或者条件不好写死到程序中,需要使用者动态的配置这些内容,比如连接数据库的时候数据库的地址,用户名和密码等等,这些东西一班配置到web.xml中,但是如何才能提前或者这些内容呢,下面使用的ServletCongue 类就能完成这个内容,下面奉上代码,请看,呵呵呵,首先贴上web.xml代码,这个比较看起来容易一些<web-app version="2.4"原创 2011-11-27 20:17:16 · 3264 阅读 · 0 评论 -
ServletContext实现转发和读取Properties配置文件
在Servlet开发中,一般很少使用Servlet输出数据,所以需要转发机制实现Servlet向JSp等等的转发,使用Servletontext就能完成这个功能,代码如下package com.bird.servlet;import java.io.IOException;/** * @use 使用ServletContext实现请求的转移 * @author Bird */im原创 2011-11-29 19:59:23 · 5184 阅读 · 0 评论 -
基础Java类使用类装载器实现装载配置文件
package com.bird.dao;import java.io.FileInputStream;import java.io.InputStream;import java.util.Properties;import org.junit.Test;/** * @use Java普通类实现装载配置文件 * @author Bird * */public class原创 2011-11-29 20:49:31 · 1412 阅读 · 0 评论 -
HttpServletResponse输出中文的问题
在编码的时候,对于中文一直出现乱码,Servlet也不例外,向浏览器中输出中文就出现中文字符编码问题,气质一条信条为,你以什么方式或者什么编码写的数据就一定要高数浏览器以什么方式或者什么码表打开,否则会出现乱码,当时,告知浏览器以什么方式打开文件爱你或者数据也是同伙HTTP 相应头来写的,这个貌似说明相应头还是很重要的,下面把代码贴上看看,,,,,,这个是上下都使用UTF-8码表package原创 2011-11-29 21:34:48 · 3360 阅读 · 0 评论 -
使用Java反射机制实现访问其他类的私有方法
以前一直说,Java的私有方法只能类的内部使用,外部无权限访问,但是,一旦使用Java的反射机制,你就可以再外部实现对其他类的私有方法的访问,下面使用一段代码来说明这个问题。首先是被反射的类的代码package com.bird.reflect;import java.util.List;/** * @use 需要反射获取方法的类 * @author Bird * */p原创 2011-11-08 21:40:25 · 4093 阅读 · 2 评论 -
使用Java反射机制反射Main函数------JDK1.4遗留的兼容性问题
由于JDK1.4没有引入可变参数这个东西,所以导致反射调用Main函数时出现问题,下面贴上代码分析package com.bird.reflect;/** * @use 反射类的Main方法 * @author Bird * */public class Demo11 { public static void main(String[] args) { System.原创 2011-11-12 21:19:13 · 2413 阅读 · 2 评论 -
使用Servlet实现注册网页的随机认证图片
在注册帐号的时候,经常出现那种随机认证图片,每次刷新都会变化而且有些干扰和旋转功能,防止恶意注册,但是这个东西到底是怎么做的呢,下面使用Servlet来实现这个功能,其实很简单,一个Servlet搞定,下面是上代码package com.bird.ServletResponse;import java.awt.Color;import java.awt.Font;import java原创 2011-12-03 22:00:40 · 1534 阅读 · 1 评论 -
Servlet中的Request的一些实现细节和应用
Servlet中,response是向浏览器发出请求,而request就是获得浏览器向服务器发出的请求了,下面首先演示request的常用方法package com.bird.request;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpSe原创 2011-12-05 20:50:25 · 4702 阅读 · 0 评论