JAVA从菜鸟到凤凰的浴火重生
文章平均质量分 77
一个计算机小白的JAVA求学笔记;从菜鸟入门到最后进入全球最大中文百科公司的点点滴滴;汇总起来一起共勉
y_keven
点线面
展开
-
斐波那契数列的神奇
近期编写斐波那契数列程序,在网上无意间发现了这些,与校友们分享一下!!!! 斐波那契数列中的斐波那契数会经常出现在我们的眼前——比如松果、凤梨、树叶的排列、某些花朵的花瓣数、黄金矩形、黄金分割、等角螺线等,有时也可能是我们对斐波那契额数过于热衷,把原来只是巧合的东西强行划分为斐波那契数。比如钢琴上白键的8,黑键上的5都是斐波那契数,应该把它看做巧合还是规律呢? 随着数列项数的增加,原创 2011-12-08 17:48:25 · 2145 阅读 · 0 评论 -
一个非常的简单的图片copy实例,虽然简单却很实用
package com.practice4;import java.io.*;public class TestCopy { public static void main(String[] args)throws IOException { FileInputStream fis=new FileInputStream("F:\\My Pictures\\可爱小孩\\2.gi原创 2012-05-17 18:41:37 · 935 阅读 · 0 评论 -
代码--小时我们痴迷的候小游戏(猜数字)
package creat;import java.util.*;import java.io.*;public class GuessNumber { private int ranNum; public GuessNumber(){ Random r = new Random(); ranNum = r.nextInt(100)+1;原创 2012-05-17 18:34:53 · 939 阅读 · 0 评论 -
代码--模拟购买彩票系统
package csdn.lesson2;public class TestTickets { public int tickets = 10; public synchronized void action(String name){ System.out.println(name+"抢到了第"+tickets+"号票"); tickets--;原创 2012-05-22 21:41:25 · 2618 阅读 · 0 评论 -
心得2--线程回顾之加深版--同步锁详解
这节与大家分析一下线程的高深部分,多线程的锁问题及同步问题,关键字:synchronized。下面从基础概念介绍起,后面与大家分享下两种单例模式:饿汉式和懒汉式中运行线程同步的情况。1.互斥锁µ 每个对象都对应于一个可称为“互斥锁”的标记,这个标记用来保证在任意时刻,只能有一个线程访问该对象。µ Java对象默认是可以被多个线程共用的,只是在需要时才启动“互斥锁”机制,成为专用原创 2012-09-04 17:27:02 · 913 阅读 · 0 评论 -
心得3--由售票系统中的抢票机制解说同步线程及死锁案例分析
一. 这里跟大家分享一下售票系统,这里是一个抢票系统,讨论一下线程同步的作用(关键字synchronized),第一种是正确的程序,下面两种分别是两种不同的错误。1.运用synchronized同步做的售票程序packagecom.javaEE.code.synchronizedDemo;classSellTicket{ public static int tickets =原创 2012-09-04 17:53:21 · 2304 阅读 · 0 评论 -
心得4--线程同步通讯-生产者与销售者
1. 分析:(生产者-消费者问题是多线程同步处理的典型问题)有一块生产者和消费者共享的有界缓冲区,生产者往缓冲区放入产品,消费者从缓冲区取走产品,这个过程可以无休止的执行,不能因缓冲区满生产者放不进产品而终止,也不能因缓冲区空消费者无产品可取而终止。2. 解决生产者消费者问题的方法一种是采用某种机制保持生产者和消费者之间的同步一种是在生产者和消费者之间建立一个管道线程原创 2012-09-05 14:27:21 · 927 阅读 · 0 评论 -
心得5--JDBC回顾-主讲将驱动配置方法抽离成单独类
1. 基础知识回顾(1)JDBC全称为:Java DataBase Connectivity(java数据库连接),它主要由接口组成。(2)组成JDBC的2个包: java.sql、javax.sql开发JDBC应用需要以上2个包的支持外,还需要导入相应JDBC的数据库实现(即数据库驱动)。(3)编写程序,在程序中加载数据库驱动 Class.forName(“com.my原创 2012-09-06 19:15:58 · 1413 阅读 · 0 评论 -
心得6--JDBC回顾-如何处理大文本和图像声音案例分析
1. 基础知识回顾基本概念:大数据也称之为LOB(Large Objects),LOB又分为:clob(用于存储大文本,如:Text)和blob(blob用于存储二进制数据,例如图像、声音、二进制文等)对MySQL而言只有blob,而没有clob,mysql存储大文本采用的是Text,Text和blob分别又分为:• TINYTEXT、TEXT、MEDIUMTEXT和LO原创 2012-09-08 14:56:39 · 1225 阅读 · 0 评论 -
心得7--JDBC回顾-批处理案例解说
1. 业务场景:当需要向数据库发送一批SQL语句执行时,应避免向数据库一条条的发送执行,而应采用JDBC的批处理机制,以提升执行效率。l 实现批处理有两种方式,第一种方式:• Statement.addBatch(sql) list• 优点:可以向数据库发送多条不同的SQL语句。• 缺点:SQL语句没有预编译。当向数据库发送多条语句相同,原创 2012-09-10 15:54:50 · 929 阅读 · 0 评论 -
心得8--JDBC回顾-存储过程与设置主键分析
一: 存储过程1. mysql 命令回顾:创建存储过程代码(纯岁的插入): delimiter @@ //占位符,为了不让程序默认认为是‘;’结束create procedure mypro(过程名)(in unamevarchar,in upassword char)begininsert into (name,password)values(uname,原创 2012-09-10 15:55:37 · 963 阅读 · 0 评论 -
心得9--JDBC回顾-事务案例分析
1. 基础知识回顾:事务的概念:事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功数据库开启事务命令:start transaction 开启事务Rollback 回滚事务;Commit 提交事务2.创建JDBC的事务主要分以下步骤1).设置事务的提交方式为非自动提交: conn.setAutoCommit(false);2).原创 2012-09-10 15:56:36 · 909 阅读 · 0 评论 -
心得10--网络编程1
1. 关于网络编程的一些概念网络体系结构:国际标准化组织ISO于l978年提出“开放系统互连参考模型”,即著名的OSI(Open System Interconnection)模型。该模型把计算机网络分成物理层、数据链路层、网络层、传输层、会话层、表示层、应用层等七层。通信协议(通信协议):计算机网络中实现通信必须有一些约定;对速率、传输代码、代码结构、传输控制步骤、出错控制等制定标准。T原创 2012-09-11 17:39:55 · 990 阅读 · 0 评论 -
心得11--网络编程2-QQ、飞秋等聊天室部分网络编程
聊天室前奏:先来些辅助工作,通过四个案例慢慢深入了解聊天室的内幕,下期与大家分享聊天室的编写1.案例一:发送端packagecom.packet;importjava.net.DatagramPacket;importjava.net.DatagramSocket;importjava.net.InetAddress;publicclass SendDemo { p原创 2012-09-11 17:53:37 · 2742 阅读 · 0 评论 -
心得13--网络编程4-TCP协议案例分析
一:简单案例:1. 客户端packagecom.Tcp;importjava.io.IOException;importjava.io.InputStream;importjava.io.OutputStream;importjava.net.Socket;importjava.net.UnknownHostException;public classClien原创 2012-09-12 15:39:51 · 1100 阅读 · 0 评论 -
心得12--网络编程3-Socket服务
1.ServerSocket(服务器端):编写TCP网络服务(面向连接)程序,首先要用到java.net.ServerSocket类用以创建服务器Socketµ 构造方法:ü ServerSocket(int port):创建绑定到特定端口的服务器套接字ü ServerSocket(int port, intbacklog):利用指定的backlog(服务器忙时保原创 2012-09-12 15:42:05 · 879 阅读 · 0 评论 -
心得14--网络编程5-Tcp文件上传与输出
12.0.0.1代表本机IP。不要有中文路径,但是可以有中文文件名。中文路径会报错客户端:packagecom.TcpFile;importjava.io.BufferedReader;importjava.io.FileReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava原创 2012-09-13 16:38:25 · 1313 阅读 · 0 评论 -
心得15--网络编程6-图片等二进制文件的上传与输出
1. 先说一个简单的案例客户端:package com.TcpJpg;importjava.io.FileInputStream;importjava.io.InputStream;importjava.io.OutputStream;importjava.net.Socket;publicclass JpgClient { /**原创 2012-09-13 16:39:03 · 1737 阅读 · 0 评论 -
心得16--网络编程7-Url-解密IE的神秘面纱
1. URL(Uniform Resource Locator)类代表统一资源定位器,统一资源定位器是指互联网“资源”的名称。资源可以是简单的文件或目录,也可以是对跟为复杂的对象的引用,例如:对数据库或搜索引擎的查询。通常URL可以由协议名、主机、端口号和资源组成。URL的格式为“protocol://host:port/resourceName”。例如:http://ww.csdn.index原创 2012-09-14 13:45:45 · 1408 阅读 · 0 评论 -
心得--junit测试框架.doc
1. 与Android中的测试操作相同,但是所用代码不同:Android中,要在清单文件中加入 //把单元测试的框架的依赖库引入到项目中。注意:该段代码是添加在里面的,而不是中。 .... android:targetPackage="cn.itcast.action"//这个值必须与当前包名一样。 android:label="原创 2012-09-16 11:47:27 · 1088 阅读 · 0 评论 -
心得18--JDK新特性-静态导入、自动封装与拆装、增强for循环
1. “JDK 5.0”的一个重要主题就是通过新增一些特性来简化开发,这些特性包括:• 静态导入• 自动装包/拆包• for-each循环• 可变参数• 枚举• 泛型• 元数据静态导入语法用于导入指定类的某个静态属性值(方法)或全部静态属性值(方法)。语法:Import static 包名.类名原创 2012-09-17 16:32:59 · 2749 阅读 · 0 评论 -
心得19--JDK新特性-可变参数、枚举
1. 可变参数从 JDK 1.5 开始, Java 允许定义形参长度可变的参数,从而允许为方法指定数量不确定的形参,若在定义方法时,在最后一个形参的类型后增加三点(…, ...位于变量类型和变量名之间,前后有无空格都可以)则表明该形参可以接受多个参数值, 多个参数值被当成数组传入可变形参只能处于形参列表的最后, 所以一个方法最多只能有一个长度可变的形参;调用包含一个可变形参的方法时,可以为原创 2012-09-17 16:33:43 · 3919 阅读 · 0 评论 -
心得24--JDK新特性8-反射3-Method方法.doc
1. Field对象提供了如下方法,用于设置、获取对象属性的值:public void set(Object obj,Object value)public Object get(Object obj) 案例分析:packagecom.java.reflect;importjava.lang.reflect.Field;importorg.junit.Test;p原创 2012-09-19 17:37:02 · 2605 阅读 · 0 评论 -
心得21--JDK新特性5-Apache开发的内省API
1. Apache开发的内省方式 Sun公司的内省API过于繁琐,所以Apache组织结合很多实际开发中的应用场景开发了一套简单、易用的API操作Bean的属性——BeanUtilsl Beanutils工具包的常用类:• BeanUtils• PropertyUtils• ConvertUtils.regsiter(Con原创 2012-09-18 19:06:16 · 2295 阅读 · 0 评论 -
心得22--JDK新特性6-反射1-反射入门及Class类
1.反射简介反射可以理解为在运行时获取对象类型信息的操作。反射(Reflection)的概念是由Smith1982年首次提出来的,主要是程序可以访问、检测和修改其自身状态或行为的一种能力。反射是java语言的特征之一,它允许动态地发现和绑定类、方法、字段,以及所有其他的由语言所产生的元素。反射做的不仅仅是简单的列举类、字段以及方法,通过反射在运行时还能完成创建实例、调用方法以及访问字段的工原创 2012-09-19 17:35:37 · 2423 阅读 · 0 评论 -
心得23--JDK新特性7-反射2-Filed、Construction类(构造方法)
1. Constructor类提供了如下方法,用于创建类的对象: public Object newInstance(Object...initargs) initargs用于指定构造函数接收的参数多学一招:sun公司为简化开发人员创建对象,它在class对象中也提供了一个newInstance方法,用于创建类的对象。这样开发人员可以避免每次都需要去反射Constr原创 2012-09-19 17:36:20 · 3033 阅读 · 0 评论 -
心得25--JDK新特性9-泛型1-加深介绍
1. 泛型思想 泛型是JDK1.5后出现的一个安全机制.通过来指定容器中元素的类型 JDK5以前,对象保存到集合中就会失去其特性,取出时通常要程序员手工进行类型的强制转换,这样不可避免就会引发程序的一些安全性问题。例如:ArrayList list = newArrayList();list.add("abc");Integer num = (Inte原创 2012-09-20 15:41:21 · 3674 阅读 · 0 评论 -
心得26--JDK新特性10-泛型2-自定义泛型
1. 自定义泛型 Java程序中的普通方法、构造方法和静态方法中都可以使用泛型。方法使用泛形前,必须对泛形进行声明,语法:,T可以是任意字母,但通常必须要大写。通常需放在方法的返回值声明之前。例如:publicstatic void method(T t); 注意:只有对象类型才能作为泛型方法的实际参数。在泛型中可以同时有多个类型。:一个数组交换的例子:pa原创 2012-09-20 15:50:08 · 3486 阅读 · 0 评论 -
心得27--JDK新特性11-注解
1. JDK5.0以上的版本引入了一项新特性:Annotation,中文翻译成注解,是用来为程序元素(类、方法、成员变量等)设置说明和解释的一种元数据,Java开发和部署工具可以读取这些注解,并以某种形式处理这些注解。 它可以添加到程序的任何元素(包括声明、类型声明、构造方法、方法、成员变量等)上,用来设置一些说明和解释,Java开发和部署工具可以读取这些注释,并以某种形式处理这些注释。原创 2012-09-21 14:19:27 · 3135 阅读 · 0 评论 -
Java虚拟机学习分享
来自论坛分享最近主要在学习JVM相关知识,-知识主要来源《深入理解JAVA虚拟机》,深有感触,结合自己的理解,整理出一些经验,由于篇幅较长,就把链接帖出来,希望对大家有所帮助:Java虚拟机学习 - 体系结构 内存模型Java虚拟机学习 - 对象访问Java虚拟机学习 - 垃圾收集算法Java虚拟机学习 - 垃圾收集器Java虚拟机学习 - 对象内存分配转载 2012-12-02 19:15:59 · 845 阅读 · 0 评论 -
银行业务调度系统-心得1-项目需求分析和类图架构
1.银行业务调度系统的项目需求模拟实现银行业务调度系统逻辑,具体需求如下:Ø 银行内有6个业务窗口,1 - 4号窗口为普通窗口,5号窗口为快速窗口,6号窗口为VIP窗口。Ø 有三种对应类型的客户:VIP客户,普通客户,快速客户(办理如交水电费、电话费之类业务的客户)。Ø 异步随机生成各种类型的客户,生成各类型用户的概率比例为:原创 2013-01-28 19:51:55 · 2325 阅读 · 0 评论 -
交通灯管理系统-心得1-项目需求分析和画图分析
1.交通灯管理系统的项目需求模拟实现十字路口的交通灯管理系统逻辑,具体需求如下:Ø 异步随机生成按照各个路线行驶的车辆。例如: 由南向而来去往北向的车辆 ---- 直行车辆 由西向而来去往南向的车辆 ---- 右转车辆 由东向而来去往南向的车辆 ---- 左转车辆 。。。Ø 信号灯忽略黄原创 2013-01-31 18:28:24 · 4004 阅读 · 0 评论 -
交通灯管理系统-心得2-项目源码及注释.doc
1. Lamp类的编写package com.isoftstone.interview;/** * 每个Lamp元素代表一个方向上的灯,总共有12个方向,所有总共有12个Lamp元素。 * 有如下一些方向上的灯,每两个形成一组,一组灯同时变绿或变红,所以, * 程序代码只需要控制每组灯中的一个灯即可: * s2n,n2s * s2w,n2e *原创 2013-01-31 18:30:01 · 1780 阅读 · 0 评论 -
牛掰分页心得--编写通用分页类
1.通用类编写的案例 采用泛型编写的分页类,达到想使哪个数据库中的表分页就传入哪个表对应的javabean实体这种通用的思想。分页的全部过程和判断全部封装在该类中,在action或servlet直接调用分页类即可达到分页效果。文章来自:点击打开链接Action中调用代码只需一行,当然要封装该类实体的属性,并生成相应的set和get方法:pagination =new Pag原创 2013-03-08 13:47:10 · 2607 阅读 · 0 评论 -
最详细的代理讲解--JDK动态代理和cglib代理
1.代理相关的概念代理模式 代理模式的英文叫做Proxy或Surrogate,中文都可译为”代理“,所谓代理,就是一个人或者一个机构代表另一个人或者另一个机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用抽象主题角色 声明了真实主题和代理主题的共同接口,这样一来在任何可以使用真实主题的地方都可以是使原创 2013-05-05 21:24:14 · 6909 阅读 · 2 评论 -
java中使用switch-case的用法及注意事项超全总结
今天陈红军老师在用到switch的时候,这种设计到最基本的内容,可能忘记它的一些基本语法,出现了一些错误,所以即兴从各种资料查询总结了下面的内容,希望可以帮助那些正在困扰switch错误和各种细节问题的朋友! 1.switch-case注意事项: switch(A),括号中A的取值只能是整型或者可以转换为整型的数值类型,比如byte、short、int、char、还有枚举;需要强原创 2013-05-29 11:08:51 · 50072 阅读 · 3 评论 -
当前日期+随机数+文件名(采用两种方法实现的工具类)
多文件上传下载时,常常需要考虑上传统一文件多次,怎来精准的区别文件的名字,下面两种方法都可以实现1.第一种实现方式//从服务端传过来的path路径截取文件名String name = path.substring(39);SimpleDateFormat format = new SimpleDateFormat("yyyyMMddhhmmss");String strFile原创 2013-06-22 19:50:35 · 3410 阅读 · 0 评论 -
Java 去掉字符串中的重复数据
有一组字符串比如 北京,北京,上海,上海,上海,武汉-------->要得到 北京,上海,武汉怎么去掉里面重复的字符串?function DelRepetStr(String str){var result;var list = str.split(",");for(var i=0; i{if(result.indexOf(list(i)) ==转载 2013-08-08 15:47:13 · 5550 阅读 · 0 评论 -
MyEclipse提示Errors occurred during the build
最近在使用Extjs 在springsource Tool Suite运行时老是出现:Errors occurred during the build. Errors running builder 'JavaScript Validator' on project test. java.lang.NullPointerException 解决方案:要就把JavaScrip原创 2013-08-15 09:35:42 · 4722 阅读 · 0 评论 -
递归遍历磁盘下的某一文件夹中所有文件,并copy文件生成文件和带文件夹的文件
package com.hudong.test;import java.io.File;import java.io.IOException;import java.util.ArrayList;import java.util.List;import org.apache.commons.io.FileUtils;public class ErgodicFile原创 2013-08-15 09:40:46 · 2537 阅读 · 0 评论