- 浏览: 96609 次
- 性别:
最新评论
-
okcd00:
很棒的代码呢,学习了很多^_^
你画我猜 -
dieslrae:
简直不能直视啊
java网站后台实现--ServLet -
紫梦飘逸:
顶一个
模拟微信打飞机,完整代码 -
zxc3375:
第一天用oracle也不看这样的文章了
Oracle数据库查询指令 -
rex0654335:
...
基于UDP的网络通信之屏幕共享(类似远程协助)
文章列表
正则表达式是符合一定规则的表达式,用来专门操作字符串,对字符创进行匹配,切割,替换,获取。
例如,我们需要对QQ号码格式进行检验
规则是长度6~12位 不能0开头 只能是数字,我们可以一位一位进行比较,利用parseLong进行判断,或者是用正则表达式来匹配[1-9][0-9]{4,14} 或者 [1-9]\d{4,14}
(a|b|ccc) a或者b或者ccc
检查IP
public static void checkIP(String ip) {
String rex = "((\\d|\\d\\d|1\\d\\d|2[0-4]\\d|25 ...
类-对象
对象-类 即为反射
所有的类对象都是Class类的实例。虚拟机在实例化一个类的时候,总要有一个地方存储这个类,这个地方就由Class来管理。
通过JAVA的反射机制,我们可以获得一个类的所有属性和方法,并对其进行操作,即使是私有的。
每当一个类被加载,虚拟机就会创建一个Class对象。
Class中的常用方法:
forName(String className);
这个方法可以得到相应名字的类的Class对象
getConstructor(Class<?>...) 返回一个公共的构造方法。
例如: getConstructor( ...
使用java操作数据库时需要用到jdbc。
1、加载驱动 class forName("oracle.jdbc.driver.OracleDriver");
2、定义连接字符创
String url = "jdbc:oracle:thin:@192.168.50.128:1521:ORCL";
3、连接到数据库
Connection conn = DriverManager.getConnection(url, user,psw);
4、取得数据库sql语句的编译和执行对象
Stat ...
由于DOM解析需要先读取整个文件到内存再处理,所以如果文件较大的时候非常耗资源。
SAX解析解决了这个问题。
SAX解析器不像DOM那样建立一个完整的文档树,而是在读取文档时激活一系列事件,这些事件被推给事件处理器,然后由事件处理器提供对文档内容的访问。
SAX模型最大的优点是内存消耗小,因为整个文档无需一次加载到内存中,这使SAX解析器可以解析大于系统内存的文档。
实现示例:
首先,同样一个Student类
package com.hb.xml;
/**
* Student节点
*
* @author HuangBin
* @201 ...
DOM 把 XML 文档视为一种树结构。通过这个 DOM 树,可以访问所有的元素。可以修改它们的内容(文本以及属性),而且可以创建新的元素。元素,以及它们的文本和属性,均被视为节点。
在这里介绍一下如何用java语言的dom来解 ...
Oracle数据库查询指令
- 博客分类:
- 数据库
20140920
单表查询
-- 查询************************************************************************************************************
-- 使用scott用户登录
-- 查看emp表
desc emp
--查看所有数据
select * from emp;
--查看指定数据,按顺序写
select empno,ename from emp;
-- 去重复,如果ename和job都相同,则只显示一个
select di ...
--建表************************************************************************************************************
-- 身份证或者手机号一类的定长的数据可以用char,char的性能更加好。
-- 创建一个表test1,包括nik,age,sex等数据。
create table test1 ...
基于TCP/IP的远程协助地址:
http://479001499.iteye.com/blog/2099788
UDP是一种用途广泛的网络传输协议,发送方只管发送数据出去,而不管是否能够送达。
应用范围:有时候因为网络问题,接收方可能会丢失部分数据,但是并不影响程序的功能。例如视频直播的时候有一些数据丢失了,最多就是卡顿一下,并不会造成功能很大的影响。
对于发送者而言,需要有一个发送者的地址与端口,也需要知道要发到哪个地址的哪个端口。同时还需要一个socket传送数据。
在这里,可以将他们形象的比喻成邮政系统。
发送者就是寄件人,接收者就是收件人,而传递着就是邮 ...
之前由于电脑问题,写了很多天的代码都丢了,也没能恢复出来。因为现在没实现的功能基本都是和以前写的这些功能实现方法一样,只是需要注意一些细节问题了,所以,不准备重写了,这里发出最后一次备份的代码供大家参考。
第一版:
http://479001499.iteye.com/blog/2100893
第二版:
http://479001499.iteye.com/blog/2101491
第三版:
http://479001499.iteye.com/blog/2104088
java打包将图片声音等文件打包进去
- 博客分类:
- Java
获得图片文件的方法:
例如,有一个图片文件放在工程下的src目录下:
文件路径为ProjectTest\src\images\test.png
可以用这个来使用到这张图片
new ImageIcon(getClass().getResource(
"/images/test.png"))
获得声音文件的方法:(其余类型文件也可以用获得流的方法)
例如,有一个文件放在工程下的src目录下:
直接获得一个InputStream:
InputSTream ins = getClass().getResourceAsStream("/sounds ...
在这个版本已经实现了基本的聊天,群聊以及文件发送功能.
为了图简单,只要是在线的用户就都会出现在所有客户端列表中,没有单独为每个用户保存好友,群聊所有人都会收到消息.
注册的用户信息都保存在文件中,每次服务器启动就先读取数据.
客户端连接上之后,就给所有在线的其他客户端发送自己上线的消息,然后其他客户端就更新好友列表.
双击即可打开对话窗口进行聊天或者传文件.
界面演示图:
之前两个版本:
第一版:
http://479001499.iteye.com/blog/2100893
第二版:
http://479001499.iteye.com/blo ...
贪吃蛇(已经比较完善)
- 博客分类:
- Java
附件中含有两个版本,
第一版本实现了最基本的功能.包括运动,吃food,暂停,计分,重来.
使用了一个二维数组来存储当前地图上有哪些东西,0表示没有,1表示自己的一部分,2表示障碍物,3表示food.
才开始新建一个点,将其加入LinkedList ...
在文件末尾追加对象
用对象流写到文件中时,首先会将对象信息写到文件头才开始写具体数据.每次追加的时候也是同样.这就造成了之后读取文件的时候无法正常读取.
java帮我们读的时候只会过滤掉第一次的头部信息,之后的它没法识别.
解决办法有二:
文件较小的时候,不追加.可以先读出所有的对象,将要追加的加在后面再重新写一遍.(文件更小)
文件较大的时候,直接在后面追加.跳过头部信息不写出去了.(效率更高)
public static void read(String str) {
File file = new File(str);
try {
...
在第一版之上的改进内容:
第一版链接:
http://479001499.iteye.com/admin/blogs/2100893
用map存起来号码对应的聊天窗口对象,解决私聊的时候所有消息发到一个窗口的问题.
增加ViewInfo类,这个是信息预览的窗口,如果是自己的信息,则可以进行编辑.
信息修改后上传至服务器再告诉所有用户,自己的窗口上也进行改变
发现bug: 注册的时候:注册完毕直接登录上去了,结果关闭该客户端会抛出异常,原因是 点击登录按钮就已经和服务器建立了连接,点击注册按钮又重新建立了连接,所以服务器就启动了两个线程.一个是之前账号不存在的时 ...