![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
普通网友
这个作者很懒,什么都没留下…
展开
-
JAVA设计模式之单例模式
1特点 单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所有其他对象提供这一实例。单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。这些应用都或多或少具有资源管理器的功能。每台计算机可以有若干个打印机,但只能有一个Printer Spooler,以避免两个打印作业同时原创 2016-11-25 10:58:33 · 322 阅读 · 0 评论 -
Windows7下实现wordcount
本人初学hadoop,在完成windows下面通过Java编程导入数据到hdfs后,一直想完成hadoop中MR的经典程序wordcount(相比学习语言写一个helloworld程序) 下面介绍wordcount的调试过程。 1.首先配置hadoop_home 2.在path中添加%hadoop_home%\bin; 3.在%hadoop_home%\bin下面添加hadoop.dll,w原创 2016-11-24 15:29:20 · 1098 阅读 · 0 评论 -
log4j配置和使用
log4j的配置如下:#配置日志的等级,日志有好多级别,本文等级为DEBUG,输出地址为CONSOLE。log4j.rootLogger=DEBUG,CONSOLE,A#配置是否在屏幕中显示,默认为true,log4j.addivity.org.apache=false#配置在控制台输出log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppen原创 2016-12-06 09:34:37 · 378 阅读 · 0 评论 -
Java设计模式之工厂模式
转载文章来自 在设计模式中,Factory Method也是比较简单的一个,但应用非常广泛,EJB,RMI,COM,CORBA,Swing中都可以看到此模式的影子,它是最重要的模式之一.在很多地方都会看到xxxFactory这样命名的类 Factory Method是一种创建性模式,它定义了一个创建对象的接口,但是却让子类来决定具体实例化哪一个类.当一个类无法预料要创建哪种类的对象或转载 2016-11-23 13:25:55 · 372 阅读 · 0 评论 -
Spring配置多数据源
spring和hibernate的框架的项目中,我们在spring配置中往往是配置一个dataSource来连接数据库,然后绑定给sessionFactory,在dao层代码中再指定sessionFactory来进行数据库操作。 1. applicationContext.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://转载 2016-12-12 13:20:43 · 308 阅读 · 0 评论 -
JAVA设计模式之建造者模式
1.模式的定义 建造者模式构建复杂对象就像造汽车一样,是一个一个组件一个一个步骤创建出来的,它允许用户通过制定的对象类型和内容来创建他们,但是用户并不需要知道这个复杂对象是如何构建的,它只需要明白通过这样做我可以得到一个完整的复杂对象实例。 2.模式结构 建造者模式主要包含四个角色: Builder:抽象建造者。它声明为创建一个Product对象的各个部件指定的抽象接口。转载 2016-12-01 16:01:00 · 490 阅读 · 0 评论 -
IO流之fluse()
if (file.exists()) { file.delete(); } // FileWriter fw = new FileWriter(file, true); BufferedWriter writer = new BufferedWriter(new FileWriter(file)); while原创 2016-11-02 17:34:27 · 767 阅读 · 0 评论 -
Java调用JDBC判断表是否存在
我们使用Java很难判断oracle里面是否存在这张表,网上有很多人使用存储过程进行判断,本文利用try,catch进行判断是否存在表。 实验代码如下:try { statement.execute("select * from " + map.get("gradeitemTable")); } catch (Exception e) {原创 2016-11-02 17:26:37 · 2839 阅读 · 1 评论 -
JAVA进行XML解析
XML文本的内容<?xml version="1.0" encoding="GB2312"?> <RESULT> <VALUE> <NO>A1234</NO> <ADDR>河南省郑州市</ADDR> </VALUE> <VALUE> <NO>B1234</NO> <ADDR>河南省郑州市二七区</ADDR> </VALUE>转载 2016-11-30 14:36:57 · 269 阅读 · 0 评论 -
Spring之Aop练习
注意一下,在讲解之前,说明一点:使用Spring AOP,要成功运行起代码,只用Spring提供给开发者的jar包是不够的,请额外上网下载两个jar包:1、aopalliance.jar2、aspectjweaver.jar开始讲解用Spring AOP的XML实现方式,先定义一个接口:package cn.itcast.oa.service;public interface HelloWorld转载 2016-12-25 11:43:16 · 894 阅读 · 0 评论 -
java之switch
package switchleaning;public class TestSwitch { public static void main(String[] args) { int i = 1; switch (i) { case 1: case 2: case 3: case 4:原创 2016-12-16 13:51:10 · 270 阅读 · 0 评论 -
Java设计模式之原型模式
原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件:实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只有一个,就是在运行时通知虚拟机可以安全地在实现了此接口的类上使用clone方法。在java虚拟机中,只有实现了这个接口的类才可以被拷贝,否则在运行时会抛出CloneNotSupportedExcepti转载 2016-12-25 19:46:05 · 267 阅读 · 0 评论 -
Java接口的使用
在自然语言处理的时候,多个分词方法并用的时候,可以使用接口,保证方法的参数不改变,只添加分词算法就可以package extendlearn;public interface Animal { public void call();}实现类:package extendlearn;public class Dog implements Animal { @Ove原创 2018-02-02 17:33:50 · 209 阅读 · 0 评论 -
python3.5安装jpype1调用Java
亲测有效https://www.cnblogs.com/xyb930826/p/6060821.html转载 2017-11-17 14:33:43 · 1538 阅读 · 0 评论 -
JAVA中的transient学习
在学习java的containsAll方法的源码的时候遇到之前都没有遇到的transient关键词。被transient修饰的关键字不能被序列化。/* * @(#)AbstractCollection.java 1.38 06/06/16 * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIE原创 2017-07-26 13:10:50 · 475 阅读 · 0 评论 -
JAVA中clob字段变成String
java实现把oracle数据库中的clob字段变成String public static String ClobtoString(Clob clob) { String reString = ""; Reader is = null; try { is = clob.getCharacterStream();原创 2017-07-04 14:08:14 · 615 阅读 · 0 评论 -
java中.rtf文件变成文本文件
公司业务需求需要把.rtf文件转化成文本文件。package chuyuanxiaojie;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.StringReader;import java.sql.Blob;import java.sql.Connection;i原创 2017-07-03 10:30:47 · 1649 阅读 · 0 评论 -
Java数据预处理
这里介绍oracle数据库中BLOB类型字段内容读取为ZIP格式文件,并且进行解压缩和对解压后文件进行处理,代码如下:package readele;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.BufferedReader;import java.io.Buffere原创 2017-05-25 09:21:28 · 4337 阅读 · 0 评论 -
Java单元测试之junit
在写dao的时候,我们会对sql进行拼接,有时候sql在拼接过程中会出现错误,如果一个程序的运行时间比较长,一个sql拼接出现错误就需要重新测试,会耽误大量的时间进行测试,因此我们需要使用junit进行单元测试。 Spring配置文件如下:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.原创 2016-12-29 09:45:20 · 721 阅读 · 0 评论 -
Java设计模式之适配器模式
概述 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。解决的问题 即Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。模式中的角色 3.1 目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。 3.2 需要适配的类(Adaptee):需要适配的类或适配者转载 2016-12-25 20:54:33 · 216 阅读 · 0 评论 -
windows下把数据从oracle导入hbase
随着数据量的增大,oracle的查询速度就有点捉襟见肘,这个时候我们需要把数据从oracle数据库导入到hbase,然后使用hbase进行查询数据。 废话不多说,直接上代码.public class Getdata { private static Connection conn; private static Statement st; private ResultSet原创 2016-11-30 13:49:43 · 1177 阅读 · 0 评论 -
.properties文件的使用
我们把程序布置在项目上的时候,一些程序需要参数来确定他们想要什么样的结果,大家在方法上面留下了传入参数,为了让别人能在文件外面修改参数,我们使用.properties文件来保存参数设置,使得程序更加安全。 本文的测试文件内容如下:dbPort = localhost databaseName = mydb dbUserName = root dbPassword = root 实验代码如下:原创 2016-11-02 09:19:09 · 241 阅读 · 0 评论 -
jdbc调用存储过程
存储过程代码如下:create or replace procedure inandoutpro(a in out number,b in out number) as begin a:=a+b; b:=a-b; a:=a-b; end inandoutpro; a,b是入参。begin,end之间是逻辑处理的过程。实现把a,b进行交换。原创 2016-11-07 09:53:01 · 351 阅读 · 0 评论 -
多线程之synchronized+方法
根据前面的多线程之synchronized(this),我们在本实验中做一个对比。前面的博客在不是同一个对象的时候就会出现错误。package thread;public class SynchronizedCode implements Runnable { private int aa; public SynchronizedCode(int aa) { this.原创 2016-10-26 15:09:02 · 581 阅读 · 1 评论 -
execute、executeQuery和executeUpdate之间的区别
JDBC连接数据库操作的时候,statement下面有3个方法,execute、executeQuery和executeUpdate。下面我们写代码分别介绍这三个方法的作用。 execute方法的返回值是boolean类型。返回true表示有结果集,返回false表示无结果集。 实验代码如下: String str = "insert into student values ('003',原创 2016-11-04 15:11:10 · 3038 阅读 · 0 评论 -
Math.Random()方法的使用
Math.Random()会随机生成[0,1]之间的随机数,一般情况下大家让Math.Random()乘以一个数,例如a。这样我们就可以生成[0,a]之间的随机数,如果再在前面添加一个int,那么我们就可以产生[0,a]之间的正整数,但是往往由于粗心我们就出犯下如下错误,实验代码如下:package anomalydetection;import java.util.Random;public cl原创 2016-10-24 15:39:13 · 4137 阅读 · 3 评论 -
多线程之Runnable
由于Java只能单继承,所以有时候我们不能通过继承extends来开启一个线程,这个时候我们就可以通过implements Runnable来开启一个线程,实验代码如下:package learnIng;public class Thread2 implements Runnable{ public void run() { for (int i = 0; i < 50; i原创 2016-10-13 11:16:51 · 341 阅读 · 0 评论 -
多线程之extends Thread
java的多线程又多种实现方式,在这里我们通过实验来学习继承Thread的多线程实现方法。package learnIng;public class LearnThread extends Thread { public void run() { for (int i = 0; i < 50; i++) { System.out.println(i);原创 2016-10-12 16:57:33 · 901 阅读 · 0 评论 -
JAVA类的成员初始化顺序
下面是父类代码:package staitic;public class Parent {private static String p_StaticField = "父类--静态变量"; private String p_Field = "父类--变量"; // 静态初始化块 static { System.out.println(p_StaticField); System.out.转载 2016-11-03 09:36:23 · 376 阅读 · 0 评论 -
JVM垃圾回收之finalize
JVM的一个很重要的功能是GC机制(垃圾回收机制),不知道大家有没有了解一点C语言,传统的C语言编程主要使用free()进行垃圾回收,试想一下,如果你使用完变量忘记调用free()方法,那么一个系统调用这个方法就会产生不能销毁的垃圾,系统很快就会崩掉,Java的GC机制会自动回收垃圾,但是垃圾回收不是立马进行的,在垃圾回收之前JVM会调用finalize(),我们可以重写finalize()方法再做原创 2016-10-12 13:41:43 · 401 阅读 · 0 评论 -
Spark学习笔记
前面学习了hadoop,在学习spark的时候,比较不解,spark是专门用来计算的框架,而hadoop可以用来分布式存储也可以通过MR来进行计算,spark虽然跟hadoop没有什么关系,但是spark其实是在hadoop上面做了优化,hadoop把中间写过卸载磁盘中,而spark把中间结果写在内存中,因此spark的计算更加快。 spark的计算是基于RDD的,RDD其实是一个链表类似的数据。原创 2016-11-09 16:20:13 · 323 阅读 · 0 评论 -
多线程之sleep()
还是使用join()学习的例子。实验代码如下package thread;public class JoinTest implements Runnable { public static int a = 0; public void run() { for (int k = 0; k < 5; k++) { a = a + 1;原创 2016-11-01 14:51:27 · 660 阅读 · 1 评论 -
多线程之join()
package thread;public class JoinTest implements Runnable{ public static int a = 0; public void run() { for (int k = 0; k < 5; k++) { a = a + 1; } } public stati原创 2016-11-01 14:44:07 · 237 阅读 · 0 评论 -
JAVA注释应用小例子
Java自定义注释的两个应用: 第一个应用相当于获取配置文件的值。 定义一个注释,代码如下:package note;import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.ann原创 2016-11-16 14:33:12 · 922 阅读 · 0 评论 -
StringBuffer与String的区别
直接上代码,原因自己找,自己发现才是进步。package learnIng;public class StringBufferTest { public static void main(String[] args) { String a = "a"; String c = a; String b = "b"; a = a +原创 2016-10-08 18:21:32 · 242 阅读 · 0 评论 -
String类型内存转换,你明白为什么吗?
package learnIng;public class StringTest { public static void main(String[] args) { String a = "a"; String b = "a"; String c = new String("a"); String d=c.intern();原创 2016-10-08 17:38:59 · 332 阅读 · 0 评论 -
JAVA中的clone()方法详解
在现实编程的时候,我们有时候需要用A对象的值来创造B对象,并且B对象的改变不影响A对象,我们需要使用clone()方法,clone()方法不会调用构造方法,这样就避免生成对象的时候调用构造方法链。clone()方法的实验如下: 不使用clone()方法:package learnIng;public class CloneDemo implements Cloneable{ private原创 2016-10-08 17:10:15 · 457 阅读 · 0 评论 -
LLL算法JAVA实现
package password;import java.util.Arrays;import Jama.Matrix;public class LLLAlgorithm { public int n; public double s; public double[][] m; public double[][] mm; public LLLAlgorithm(原创 2016-10-06 16:46:47 · 2769 阅读 · 4 评论 -
if与else同时运行
public class IfElse { public static void main(String[] args) { if (args == null || new IfElse() { { IfElse.main(null); } }.equals("abc")) {转载 2016-10-06 16:36:52 · 1526 阅读 · 0 评论 -
Java反射之getDeclaredField()
package learnIng;import java.util.Date;public class Program { public Program() { } public Program(String str, Date date, int i) { this.str = str; this.date = date; th转载 2016-10-10 13:06:48 · 1759 阅读 · 0 评论