泰 戈 尔
只有初恋般的热情和宗教般的意志,人才可能成就某种事业。 -- 川哥
展开
-
命令行 java 编译脚本从入门到放弃
前天客服群有一个用户反馈,说是某个用户进入直播间老是进不去。然后就查了查这块的代码。和接口业务使用 PHP不同,聊天业务用 Java 开发,而且是老年版本(不知道啥时候写的,反正给人很古老的感觉)。然后就发现了一些问题,尝试着做了一些解决方案,在此记录一下????。继续查,发现底层错误堆栈中有这么一个 exception。java.lang.NumberFormatException: For i...原创 2020-02-24 11:22:47 · 640 阅读 · 0 评论 -
MySQL数据库写入图片并读取图片显示到JLabel上的详解
相较于Oracle,MySQL作为一个轻量级的开源的数据库,可谓是大大简化了我们的操作。这次我就来写一个关于数据库存入图片,获取图片的例子吧,也为了今后的复习使用。(我们一般采取存入路径的方式,而不是直接存储字节的方式,毕竟读取的时候还要通过字节读取,并做一些转换,这真的是太麻烦了,但是咧,这次就来个麻烦的吧,咱们用字节的方式) 首先我们需要在MySQL数据库中创建好我们所需要的表 ,下面就是正原创 2015-10-16 19:29:43 · 9181 阅读 · 1 评论 -
Java单例模式之饿汉模式与懒汉模式
单例模式是我们在开发软件的过程中经常用到的23中常用的java模式之一,主要的功能就是保证我们所使用的对象只有一个,这也在一方面减少了出错的可能性,增强了代码的健壮。单例模式一般来说有两种实现的方式,一种称之为饿汉模式,另一中成为懒汉模式。饿汉模式顾名思义,就是来者不拒,全盘搞定嘛,请看代码:package Singleton;public class eHan { //1、首先必须将构造函数原创 2015-10-17 21:46:24 · 7006 阅读 · 0 评论 -
Java模式之模板方法模式
当我们遇到的业务逻辑具有大致相同的方式的时候,我们也许就该将这个业务逻辑抽象出来,采用模板方法,来进行封装我们的代码,提高代码的重用性,以及可维护性。下面是我的一个复习用的案例: 第一步:我们需要一个抽象出来的父类,其要实现的就是我们这个业务逻辑的大致的雏形,需要注意的是里面有一个”钩子“方法,用于定制子类的特有的活动方式:package Template;/** * 抽象基类,为其所有的子类提原创 2015-10-17 23:19:30 · 6860 阅读 · 0 评论 -
我的Json解析实战
所谓json,其实就是在我们访问一个网页的接口的时候,服务器端传送给我们客户端的一种数据的结构,当然我们向服务器端发送的数据有时也会转换成json格式,当然了,这不是必须的。最近在解析一些json字符串,所以就贴出一些代码,也方便以后自己复习和使用。 首先先来一些简单的吧。 对一个json对象进行解析: 字符串原串是这样的:String json={“Persons”:[{“address”:原创 2015-10-16 16:59:54 · 7597 阅读 · 0 评论 -
Java反射机制
java反射机制给我们在开发中带来了很多的便利,下面是我在imooc上看到的一些知识点的总结,第一个代码:package com.tiger.reflect;public class ExampleOne { public static void main(String[] args) { //方法1:当已知类的名称的时候,可以直接获得其实例 Class mo原创 2015-10-18 14:08:19 · 6553 阅读 · 0 评论 -
java的制作"时间账本"
一直以来我都感觉自己的时间过得好荒废啊,貌似只是打开了一个网页链接的时间,一个下午便过去了;仿佛就是看了看空间,刷了刷微信,一天就过去了。哈,当然这是夸张的说法。但是我仔细地算了一下,大概我们每个人每天使用手机16个小时,其中接近百分之百的时间在无聊的翻来看去,也许我们拿起手机的一刹那想到的是”我就刷几分钟微博,看几条QQ信息“,但是现实呢,现实就是我们本来要拿起手机看时间,却忘记了去看时间…鉴于此原创 2015-10-19 18:31:12 · 7071 阅读 · 0 评论 -
Java解析XML与生成XML文件
XML是eXtensible Markup Language(可扩展标记语言)的简写形式,它是一种元标记语言(meta-markup language),也就是说它没有一套能够适用于各个领域中所有用户的固守的标签和元素,相反,它允许开发者根据自已的需要定义自已的元素,XML中的X(eXtensible)就是说明了这一点。它的特点有: 1、XML使用Unicode字符集,可生成英文、中文、希腊文或梵原创 2015-10-20 17:29:08 · 8324 阅读 · 0 评论 -
Java实现简易的文件的迁移器
Java作为世界上最受欢迎的一门编程语言,自然是有原因的。比如说我们可以直接的方便的调用其中的函数来实现我们想要的功能。一个偶然的机会,我浏览API文档时发现了一个名为FileDialog的类,然后就好奇并进行了查看,结果发现里面大有文章,藉此我是信了一个简单的文件的迁移器。话不多说,请看代码:首先我们需要一个业务逻辑类,也就是对文件进行操作的类(我们需要注意的是它的构造函数有两个参数,这是为了今后原创 2015-10-05 11:27:11 · 7362 阅读 · 0 评论 -
Java的字符串分割的不同实现
在java中实现字符串的分割相对而言是很简单的。我们一般会采取两中方式。一个是从jdk1.1就开始的StringTokenizer类,另一个是调用split方法进行分割。下面请看代码: import java.util.StringTokenizer;public class StringTokenizerDEmo {public static void main(String []args){原创 2015-10-06 10:28:12 · 7206 阅读 · 0 评论 -
Java最最常用的100个类排序(非官方)
下面这句话是引用”大部分的 Java 软件开发都会使用到各种不同的库。近日我们从一万个开源的 Java 项目中进行分析,从中提取出最常用的 Java 类,这些类有来自于 Java 的标准库,也有第三方库。每个类在同一个项目中只计数一次,下面的列表中显示前 100 名的类。“那么让我们一起看一看到底都有哪些吧。以下列表中按使用最多的类进行排序,第三个数值表示 10000 个项目里使用到该类的项目数,而原创 2015-10-06 12:01:09 · 7054 阅读 · 0 评论 -
Java Map 及相应的一些操作总结
Map是我们在开发的时候经常会用到的,大致有以下几个操作,其中putAll方法是针对集合而言的操作,故不再进行说明,下面请看一下常用的知识点吧,尤其是keySet和Values两个方法及相应值的获取方式: import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.原创 2015-10-08 09:03:40 · 6915 阅读 · 0 评论 -
Java实现栈之计算器
Java实现栈来做一个将中缀表达式转化为后缀表达式的程序,中缀表达式更符合我们的主观感受,后缀表达式更适合计算机的运算,下面直接上代码吧:package Character1;import java.util.Stack;public class Calculter { private static Stack<Object> shu = new Stack<Object>(); pr原创 2015-10-23 23:32:51 · 10163 阅读 · 0 评论 -
ant+eclipse知识点详解及使用案例
ant的优点和地位就不再阐述,下面直接上知识点: 在java中使用xml文件开发,有以下基本语法 (1)project:每个ant程序有且只有一个此标签,而且是类似于html的总标签,有name,default,description,basedir四个属性,当然了我们也可以写到标签内,也可以单独的写成一个嵌套在project标签内的子标签,这四个属性中最为重要的就是default属性,必不可少原创 2015-10-10 14:52:22 · 7298 阅读 · 0 评论 -
Java Swing 之JTable及其简单的用法
我们都知道JTable需要使用一个Model配合才能更好地发挥其作用。而使用Model有好多种方法,但是难易程度却大大不同,比如说我们使用AbstractTableModel接口要实现里面的好多方法,相对于这一点,使用DefaulttableModel 就可以大大而简化我们的工作量,我们只需要实现自己需要的方法就可以了。下面是一个简单的使用案例:package UsefulKnowledge;imp原创 2015-10-26 21:08:29 · 16328 阅读 · 2 评论 -
Java Swing 之Timer配合JProgressBar的使用
Timer作为java开发中常用的一个定时工具,配合JProgressBar使用起来还真是方便,只需要调用timer.start()方法就能激活并运行,然后调用stop()方法便能停止,还可以再次通过restart()方法重新使其运行,下面就直接上代码吧:package UsefulKnowledge;import java.awt.BorderLayout;import java.awt.Con原创 2015-10-26 20:03:41 · 8097 阅读 · 0 评论 -
易错点小消除--递增运算符
1、对于我们常见的递增运算符,如果不加以搞清楚,很容易会导致在默写细节的地方出错。特别是在边界条件的时候。比如说: int x=4; int y=5; y=x++; 我们都很容易就会知道答案是4,但是下面的情况稍不留神就会导致结果的大不相同咯。 int x = 0; System.out.println(((x++)-(++x))); System.out.printl原创 2015-10-14 11:53:17 · 6818 阅读 · 0 评论 -
Java编写的接口测试工具
这几天由于要频繁地使用一些天气数据接口,但是每次都要频繁的打开网页,略显繁琐,故就自己做了两个json数据获取的小工具。第一个先来看看第一个吧,思路是使用一个网络流的处理,将返回的json字符串数据输出到屏幕上,代码如下:package Simple;import java.awt.BorderLayout;import java.awt.FlowLayout;import java.awt原创 2015-11-21 16:13:00 · 15717 阅读 · 0 评论 -
Json解析
1.JSON解析 (1).解析Object之一: 1{“url”:”http://www.cnblogs.com/qianxudetianxia“} 解析方法: 1 2JSONObject demoJson = new JSONObject(jsonString); String url = demoJson.getString(“url”); (2).解析Object之二:转载 2015-10-15 19:38:11 · 7151 阅读 · 0 评论 -
Android实现自定义的相机
使用系统相机android中使用系统相机是很方便的,单这仅仅是简单的使用而已,并不能获得什么特殊的效果。要想让应用有相机的action,咱们就必须在清单文件中做一些声明,好让系统知道,如下 <intent-filter> <action android:name="android.intent.action.IMAGE_CAPTURE" />转载 2015-11-22 14:05:41 · 8516 阅读 · 0 评论 -
Android图片色彩变幻
最近在做图片相关的应用,所以就各方积累到一些常用的操作,一般来说会有多种方式来实现这一功能,比如采用色度变换采用ColorMatrix颜色矩阵采用对像素点的直接操作 等等,今天就复习一下第一种方式吧,虽然比较单一,得到的结果类型也比较少。相比较于常见的图片风格变换,一般我们就是换个色彩度,饱和度,亮度等等,这里也恰恰是这个方式 编码思路:抽象出图片操作工具类创建一个用于操作的Bitm转载 2015-11-22 23:02:23 · 6587 阅读 · 0 评论 -
Java由先序序列和中序序列还原二叉树
还原本来的二叉树并不是一个非常简单的事,虽然思想比较简单,但过程却是比较繁琐。下面我拿先序序列和中序序列来讲一下原理吧。 从先序序列中我们一下子就可以得到二叉树的根节点是第一个元素,然后再中序序列中我们也可以找到这个元素(假设二叉树中所有的元素的值不相同)这样我们就可以把中序序列分成两部分,前部分和先序序列可求得左子树,后部分与先序序列可求得右子树。下面以左部分为例,在除去根节点的前序序列中的第二转载 2015-11-16 18:53:01 · 7720 阅读 · 0 评论 -
自定义线性及非线性存储的队列实现
在平时的编程中,队列可以应用于很多方面。 在生活中我们同样可以随处见到它的身影,比如我们排队,先排的人先得到服务,后进来的人后接受服务。这就是队列。 说白了,就是FIFO原则(First in First out, 先进先出)。 队列的实现是基于存储结构不同而不同的,通常会有两种方式存储。线性存储或者非线行存储。1、线性存储。是基于数组等长度固定的存储方式来实现的。我这里是先定义了一个接口,然原创 2015-11-16 20:44:40 · 6908 阅读 · 0 评论 -
递归方法小综合
使用递归可以简化我们的理解,便于阅读,但是当数据量大的时候会占用较大的内存,所以程序运行的速度会大打折扣。 使用递归需要满足以下条件: 1、有终止条件(记住:递归不是死循环) 2、有递归部分,通俗的就是说,函数直接或间接的调用自身下面是不同语言下实现的递归程序: 1、C语言使用递归计算数组前N个数的和:#include<stdio.h>#incelue<stdlib.h>sum(int a原创 2015-10-31 12:03:08 · 6786 阅读 · 0 评论 -
程序读取特定目录下的字符数
1、C语言实现: 这个Demo仅仅适用于对英文字母的统计,而不能对汉字进行统计,原因就是汉字的编码格式问题,下面是代码:#include <stdio.h>int main(){ char fname[80];/*存贮文件名*/ FILE *rfp; long count;/*文件字符计数器*/ printf("Please input the file's na原创 2015-10-31 13:17:06 · 7062 阅读 · 0 评论 -
Java实现简易的文本编辑器
需求分析:获得文本名称实现尾部追加功能实现覆盖式添加数据删除数据获取光标位置在特定光标位置处添加数据查找特定字符串在主串中第一次出现的位置统计文本文件内出现的数字,汉字,英文字母,特殊字符的个数,及总的字符个数开发环境: windows7 + Eclipse luna + WindowsBuilder插件代码实现:import java.awt.EventQueue;impor原创 2015-10-30 22:49:54 · 23681 阅读 · 0 评论 -
Android解析中国天气接口JSon数据,应用于天气查询!
android解析Json数据是比较常见的一种操作。也是客户端和服务器进行数据交互的桥梁。下面就来看一看在android中解析JSon数据的方法吧。 首先要想获得Json数据,就必须访问相关的网络接口。下面是一些常见的网络接口:webservice工厂接口 http://www.36wu.com快递查询接口http://webservice.36wu.com/ExpressService.asmx原创 2015-11-17 18:56:31 · 11375 阅读 · 0 评论 -
Android 实现Json数据解析,并进行应用!
从网站上获取数据然后再客户端进行解析是常见的数据交互。下面是常用的一些接口网址: webservice工厂接口 http://www.36wu.com快递查询接口http://webservice.36wu.com/ExpressService.asmxip查询接口http://webservice.36wu.com/ipService.asmx天气预报接口http://webservice.36w原创 2015-11-17 19:45:41 · 10944 阅读 · 2 评论 -
Java多种方式读文件,追加文件内容,等对文件的各种操作
一、多种方式读文件内容。1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileReader; import java.io.I转载 2015-11-25 20:01:05 · 6893 阅读 · 0 评论 -
Java中的五种单例模式
Java模式之单例模式: 单例模式确保一个类只有一个实例,自行提供这个实例并向整个系统提供这个实例。 特点:1,一个类只能有一个实例 2 自己创建这个实例3 整个系统都要使用这个实例 例: 在下面的对象图中,有一个"单例对象",而"客户甲"、"客户乙" 和"客户丙"是单例对象的三个客户对象。可以看到,所有的客户对象共享一个单例对象。而且从单例对象到自身的连转载 2015-11-25 20:07:37 · 6961 阅读 · 0 评论 -
Java中常用的正则表达式
Log4j 真的很简单,简单到令人发指的地步。不是要记录日志吗?那就给你一个Log ,然后你用Log 来写东西就行了,先来一个完整类示例:package test;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;public class Test { static Log lo转载 2015-11-25 20:15:34 · 6916 阅读 · 0 评论 -
Java创建二叉搜索树,实现搜索,插入,删除操作
Java实现的二叉搜索树,并实现对该树的搜索,插入,删除操作(合并删除,复制删除) 首先我们要有一个编码的思路,大致如下: 1、查找:根据二叉搜索树的数据特点,我们可以根据节点的值得比较来实现查找,查找值大于当前节点时向右走,反之向左走!2、插入:我们应该知道,插入的全部都是叶子节点,所以我们就需要找到要进行插入的叶子节点的位置,插入的思路与查找的思路一致。3、删除: 1)合并删除:一原创 2015-11-20 20:05:48 · 7210 阅读 · 0 评论 -
堆的封装,进行插入,调整,删除堆顶以完成堆排序实例
简介堆对于排序算法是一个比较常用的数据结构,下面我就使用Java语言来实现这一算法首先,我们需要知道堆的数据结构的形式,其实就是一个特殊的二叉树。但是这个二叉树有一定的特点,除了是完全二叉树以外,对于最大堆而言,堆顶元素的值是最大的,而且对于堆的每一个子树也是一个小一号的最大堆;同样对于最小堆,性质相反就可以了。我以最大堆为例: 要实现堆的初始化操作,就是先按照给定的元素创建一棵完全二叉树,然后从原创 2015-11-27 15:01:51 · 8257 阅读 · 0 评论 -
Java创建柱状图及饼状图
Java创建图表其实还是很方便的,但是要引入相关的jar包。如下jfreechart.jarjcommon,jargnujaxp.jar 其中最主要的是jfreechart.jar。 下面就让我们先看看创建的图标的运行结果吧。 是不是感觉很生动形象,一目了然呢?下面让我们一一拉进行分析吧首先是柱状图 我已经在代码中做好了注释,可以直接拿过来使用。package mytest;转载 2015-11-29 14:50:13 · 14235 阅读 · 7 评论 -
Java 实现的各种经典的排序算法小Demo
由于有上机作业,所以就对数据结构中常用的各种排序算法都写了个Demo,有如下几个:直接插入排序折半插入排序希尔排序冒泡排序快速排序选择排序桶排序 Demo下载地址 下面谈一谈我对这几个排序算法的理解:对于直接插入排序:(按从小到大的顺序) 核心原理: 若数组中只有一个元素,那么这就已经是有序的了;若数组中元素个数为两个,我们只需要对他们进行比较一次,要么交换顺序,要么不交换顺序原创 2015-12-25 20:41:20 · 8592 阅读 · 2 评论 -
JSP连接MySQL时老是遇到驱动错误怎么办?
在使用JSP进行web开发的时候总是会不可避免的遇到各种各样的问题。今天我也来讲一讲我遇到的一些奇葩的问题。驱动出错一开始我总是以为是我导入到工程的里的jar包的问题,于是我就试验了好几个连接MySQL的时候用得到的jdbc的jar包。 事实上我使用的jar包JSE的时候是经得起实践检验的,但不知怎么的在JEE的开发过程中就是不行。 还是会报出com.mysql.jdbc.Driver Can原创 2016-01-02 13:12:16 · 7378 阅读 · 0 评论 -
JSP +MySQL实现网站的登录与注册小案例
为了练手,我就自己试着做了一个网站的登录与注册的小案例。由于没有做美化处理,所以界面并不是很好看。网站实现的功能如下:用户首次注册功能用户登录功能项目目录展示: 下面我将会分模块展示注册模块首先需要一个注册界面,如下register.jsp:<%@ page language="java" contentType="text/html; charset=utf-8" pageEnco原创 2016-01-02 14:02:17 · 15101 阅读 · 1 评论 -
史上最全的正则表达式
刚才浏览网页的时候碰巧看到一篇关于正则表达式的博客。感觉不错,拿开分享一下。一、校验数字的表达式1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和非零开头的数字:^(0|[1-9][0-9]*)$ 6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$转载 2015-12-18 10:58:41 · 7579 阅读 · 0 评论 -
XML文档操作之JAXP下实现
JAXP是java API for xml PRocessing的缩写。 其API可以在javax.xml.parsers 这个包中找到。这个包向用户提供了两个最重要的工厂类,SAXParserFactory 和DocumentBuilderFactory,我们可以通过这两个类实现之后对XML文件的操作。作为一个xml的解析器,w3c组织官方推荐使用Dom(Document Object Mode原创 2016-01-20 15:06:57 · 7622 阅读 · 0 评论 -
学生信息管理小系统(以XML为存储方式)
为了更好地应用XML,就写了这个小项目。下面是我的项目的目录结构 项目思路dao是Date Access Object 数据访问层,主要是负责操作数据domain是实体层,类似于bean层,放置项目用到的实体Studentutils层是有关于XML操作的部分(一般实际开发中是数据库操作部分)view层是视图层(实际开发中是GUI层,与用户直接打交道)Student.xml在这里相当于我们原创 2016-01-20 20:18:39 · 13093 阅读 · 9 评论