java笔记
xinghuo0007
这个作者很懒,什么都没留下…
展开
-
使用Java给qq邮箱发邮件实例(可以使用)
使用Java给qq邮箱发邮件实例(可以使用)前提准备工作: 首先,邮件的发送方要开启POP3 和SMTP服务。开启方法: 1。登陆qq邮箱 —这个就不用截图了吧。。。。 2。点击—-设置 3。点击—-账户 4。找到:POP3/IMAP/SMTP/Exchange/Car原创 2016-11-09 12:57:48 · 922 阅读 · 0 评论 -
crawler4j爬虫入门
一、nutch和crawler4nutch的人比较多,适合大规模海量数据的爬取。 crawler4j是一个短小精悍的爬虫。 二、下载crawler4j源码 项目主页:https://code.google.com/p/crawler4j/。 用Git把源码下下来导入eclipse 爬虫业务逻辑在src/main/java下,可直接运行src/test/java下edu.uci.ics.craw转载 2016-12-08 22:19:26 · 2483 阅读 · 0 评论 -
crawler4j入门(二)
由于最近做实验需要使用到大量的新闻语料库,在网上找了一些都不是自己想要的,所以决定自己写个小程序去爬取New York Times(NYT)上的网页新闻。用Java写的爬虫程序有很多,我找了一个叫crawler4j的开源爬虫,这是一个多线程的爬虫,功能比较简单,源代码也比较容易看懂,由于我要对爬虫爬取链接进行一些修改,就直接下了crawler4j的源码加到我自己的工程中。然后对爬下来的网页进行处理,转载 2016-12-08 23:00:00 · 770 阅读 · 0 评论 -
Crawler4j快速入门实例
本章来源:http://blog.java1234.com/blog/articles/112.html面我们来写一个Demo,让大家快速入门crawler4j;代码中加了详细的备注,大家可以好好看看。crawler4j中用了slf4j来记录项目运行日志信息。我们使用slf4j具体实现类log4j;首先我们在pom.xml中加入log4j以及log4j驱动类支持;<!-- 加入log4j支持 -->转载 2016-12-08 23:04:19 · 13009 阅读 · 2 评论 -
Java 定时器的使用:每天定时执行任务
下面的案例是让java每天都执行showTimer()方法import java.util.Calendar;import java.util.Date;import java.util.Timer;import java.util.TimerTask;public class TestTimer { static int count = 0; public static voi转载 2016-12-09 13:46:05 · 9648 阅读 · 2 评论 -
分布式搜索引擎ElasticSearch 介绍与简介
分布式搜索引擎ElasticSearch(一) – 介绍与简介ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎;设计用于云计算;能够达到实时搜索,稳定,可靠,快速。 ElasticSearch在近一年当中,有翻天覆地的变化,据我了解: 2012年11月,获得1000万美元的融资; 2013年02月,获得2400万美元的融资; 2013年初,亲爱的Gi转载 2016-12-16 09:55:17 · 1395 阅读 · 0 评论 -
9个基于Java的搜索引擎框架
1、Java 全文搜索引擎框架 Lucene 毫无疑问,Lucene是目前最受欢迎的Java全文搜索框架,准确地说,它是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎。Lucene为开发人员提供了相当完整的工具包,可以非常方便地实现强大的全文检索功能。下面有几款搜索引擎框架也是基于Lucene实现的。官方网站:http://lucene.apache.org/2、开源Ja转载 2016-12-16 14:33:59 · 10880 阅读 · 0 评论 -
基于crawler4j、jsoup、javacsv的爬虫实践
crawler4j基础 crawler4j是一个基于Java的爬虫开源项目,其官方地址如下: http://code.google.com/p/crawler4j/ crawler4j的使用主要分为两个步骤: 实现一个继承自WebCrawler的爬虫类; 通过CrawlController调用实现的爬虫类。 WebCrawler是一个抽象类,继承它必须实现两个方法:shouldVisit转载 2016-12-15 11:08:06 · 754 阅读 · 0 评论 -
HttpClient4使用(模拟登陆)
HttpClient4使用(模拟登陆)1。需要导入的jar包 2实例代码:package main;import java.io.IOException;import java.io.UnsupportedEncodingException;import java.net.URI;import java.net.URISyntaxException;import java.转载 2016-12-26 22:18:03 · 1061 阅读 · 0 评论 -
java基础面试题大全(一)
java基础面试题大全1.面向对象的特性有那些?- 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。- - 封装:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。面向对象的本质就是将现实世界描绘成一系列完全自治、封闭的对象。我们在类中编写的方法就是对实现细节的一种封装;原创 2017-04-03 16:28:45 · 679 阅读 · 0 评论 -
Javaweb面试题(带答案)
1 Ajax你以前用过么?简单介绍一下AJAX = 异步 JavaScript 和 XML。 AJAX 是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。有很多使用 AJAX 的应用程序案例:新浪微博、原创 2016-12-05 12:01:35 · 27093 阅读 · 0 评论 -
Java面试题之java基础--干货
1.1 Java中的方法覆盖(Overwrite)和方法重载(Overloading)是什么意思?重载Overload表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同)。重写Override表示子类中的方法可以与父类的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个方法时,将调用子类中的定义方法,这相当于把父类中定义的那个完全相同的方法给覆盖了原创 2016-12-05 11:35:18 · 2257 阅读 · 0 评论 -
java反射总结
本文是来自转载,不是本人的原创的: 转载地址为: 反射,当时经常听他们说,自己也看过一些资料,也可能在设计模式中使用过,但是感觉对它没有一个较深入的了解,这次重新学习了一下,感觉还行吧! 一,先看一下反射的概念: 主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关转载 2016-10-20 11:51:20 · 373 阅读 · 0 评论 -
Java调用命令行并获取执行结果
在我们使用javav做开发的时候,往往会用到命令行,而java又可以直接调用系统中的命令行,下面是一个案例,打开系统自带的记事本文件:import java.io.BufferedReader; import java.io.InputStreamReader; public class Command { public static void exeCmd(String comm原创 2016-11-11 15:36:56 · 8753 阅读 · 0 评论 -
jsp页面数据回显(select下拉选择框)
1。静态变量方式:<!-- 实现select标签回显 --> 1.<select name="curStatus" value="${curStatus}"> <option value="0">-请选择-</option> <option value="1" <c:if test="${'1' eq curStatus}">selected</c:if> >原创 2016-11-28 17:35:34 · 79887 阅读 · 8 评论 -
linux解压war包
需要把Java程序达成war包。起先用zip命令打包,起先可以用,后来却无法使用。今天找到一个更好的办法。用jar命令,前提是要安装dk。把当前目录下的所有文件打包成game.warjar -cvfM0 game.war ./-c 创建war包-v 显示过程信息-f -M-0 这个是阿拉伯数字,只打包不压缩的意思解压game.war转载 2016-06-12 15:50:04 · 444 阅读 · 0 评论 -
java去除字符串中的html标签的方法
java去除字符串中的html标签的方法java代码: String htmlStr="<p>念安</p><p>你好你是</p><p>加卡是大姐</p>";String str = htmlStr.replaceAll("</?[^>]+>", ""); //剔出<html>的标签System.out.println(str);输出的结果是: 念安 你好你是 加卡是大姐另外还可以去除原创 2016-11-29 14:18:10 · 14973 阅读 · 0 评论 -
com.microsoft.sqlserver.jdbc.SQLServerException: 将截断字符串或二进制数据
在往SQL Server数据库中插入数据时,发现了如下的异常:com.microsoft.sqlserver.jdbc.SQLServerException: 将截断字符串或二进制数据 从字面上看,是数据没有全部插入到字符串中,原因是如下:数据库中的字段的类型的长度比要插入内容的长度小,导致内容被截断,所以修改字段的类型长度即可,或者增加长度,如果没有对性能的严苛要求,可直接设为MAX。 但是回转载 2016-12-01 17:58:19 · 5772 阅读 · 0 评论 -
Maven项目无法产生Maven Dependencie
这两天要导入公司的项目,熟悉框架,结果导了很多遍,都出现这个问题,上网找了很多,有说这个解决方法的:solution: 这往往是由于 web project的Maven选项 未启动(disable) 造成的; 我们只需要重启 Maven Dependency就行, 操作方式: 右击 web project –> Properties –> Macven –> Enable Dependenc转载 2016-12-11 23:40:50 · 1843 阅读 · 0 评论 -
java web 项目中 简单定时器实现 Timer
文章说明:http://blog.csdn.net/sessionsong/article/details/50516320Java web 项目中 简单定时器实现 Timer项目背景: 系统中有一个存放压缩文件的临时文件夹。当时间长了后 存放文件多了,占用磁盘空间过大 让费资源, 所以需要定期去清理临时文件夹下的文件。所以最先想到了使用定时器来实现该功能。调查: 通过查阅资料 了解到使用Jav转载 2016-12-12 09:40:01 · 1344 阅读 · 0 评论 -
java.util.ConcurrentModificationException解决办法
今天写程序的时候,报了一个错误 : java.util.ConcurrentModificationException程序代码为:List<PageData> list = (List<PageData>) dao.findForList("StudentMapper.distinctXSH", null);for (PageData pageData : list) {转载 2016-12-04 14:05:57 · 872 阅读 · 0 评论 -
java基本面试题大全(二)
11、switch 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上?答:在Java 5以前,switch(expr)中,expr只能是byte、short、char、int。从Java 5开始,Java中引入了枚举类型,expr也可以是enum类型,从Java 7开始,expr还可以是字符串(String),但是长整型(long)在目前所有的版本中都是不可以的。12、原创 2017-04-03 17:37:16 · 440 阅读 · 0 评论 -
Java集合之List遍历找到匹配元素删除方法总结
问题:在我们使用java开发的过程中可能会遇到这样的问题,删除List集合中与已知元素 相同的所有元素;比如下面这个需求: 删除List集合中字符串为“edf”的所有记录案例:方案一:你可能回想到使用forEach遍历,找到匹配的将其删除List<String> list =new ArrayList<String>(); list.add("abc");原创 2017-04-28 20:13:10 · 12238 阅读 · 3 评论 -
JAVA8新特性(Lambda表达式)
前言:接上一篇 JAVA8新特性之(函数式接口):http://blog.csdn.net/xinghuo0007/article/details/78595720知识点零:Lambda表达式使用的前提 Lambda语法使用的前提是函数式接口哦! 不要忘记了! 重要,重要,重要。。。知识点一:Lambda表达式语法 前提必备: 1.java8新增了一个新的操作符 " ->原创 2017-11-21 19:58:13 · 421 阅读 · 0 评论 -
Java8新特性(内置的核心函数式接口)
前言:1.我们知道只要使用Lambda表达式,那么一定要有函数式接口的支持;但是如果我们没使用一个Lambda表达式都要自己创建一个接口,这样很造成很大的不便。于是java8的工程师们已经帮我们把常用的函数式接口都帮我们定义好,拿来直接使用即可。如果不能满足你的需求,那么这时你才需要自己定义函数式接口。下面是我们常用的四大函数式接口:知识点一:消费性函数式接口特点:1.接受一个或者多个参数,没有原创 2017-11-22 15:07:51 · 1656 阅读 · 0 评论 -
java8新特性(方法引用、构造器引用)
前言:接上一篇文章:Java8新特性(内置的核心函数式接口)http://blog.csdn.net/xinghuo0007/article/details/78603908我们知道使用了Lambda表达式以后能够是我们的代码的精简,而且可读性更强,但是有时Lambda表达式的Lambda体内的功能我们已经实现过了,这个时候就可以使用我们的函数引用、构造器引用了知识点一:方法引用什么是方法引用? 答原创 2017-11-22 19:19:09 · 7121 阅读 · 5 评论 -
java8新特性StreamAPI(一)
前言:1.java8中最核心的改变应该当属Lambda表达式 和 全新的操作数组、集合的StreamAPI了 它们功能强大,方便易用。 前面已经学习了Lambda表达式了。今天就学习一下java8中操作数组和集合的全新API知识点一:StreamAPI简介:了解StreamJava8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一个则是 Stream API(java.util.s原创 2017-11-23 13:35:20 · 548 阅读 · 0 评论 -
java8中java.util.Map接口新增默认方法说明
前言:1.看了Map接口新增的几个默认方法,测试了一下用法。在这里分享一下;新增方法://若传入的key对应的value为null或者key不存在Map中,则返回defaultValue1. default V getOrDefault(Object key, V defaultValue)//遍历Map集合,方法比较爽,省的自己写迭代器了2. default void forEach(BiCo原创 2017-12-25 17:55:41 · 902 阅读 · 0 评论 -
JDK7新增Objects方法介绍(同时包含JDK8新添加的方法)
前言:JDK7里面新增的Objects类,该类的主要用途是将操作对象的一切常用操作进行的封装。包括hashCode、equals等。本文是以java8版本介绍Objects类,所以也会介绍一下java8新增的方法。下面进入正题:知识点一:Objects类简介:/** * This class consists of {@code static} utility methods for opera原创 2017-12-25 18:29:38 · 5716 阅读 · 1 评论 -
java中clone方法的理解(深拷贝、浅拷贝)
前言:java中的clone一直是一个老生常谈的问题,另外关于克隆网上也有很多的写过这方面的问题。我在这里记录一下我遇到的问题和使用clone的方法。知识点一:什么是浅拷贝? 我们这里说的浅拷贝是指我们拷贝出来的对象内部的引用类型变量和原来对象内部引用类型变量是同一引用(指向同一对象)。 但是我们拷贝出来的对象和新对象不是同一对象。 简单来说,新(拷贝产生)、旧(元对象)对象不原创 2017-12-25 20:51:16 · 25129 阅读 · 3 评论 -
数据结构排序算法之插入排序详解(java实现)
前言相信学过数据结构的人都知道这个插入排序算法,不多说,今天就总结一下这个算法。注意:测试环境为java8知识点一:插入排序思想 插入排序:将一个记录插入到一个已经排好序的列表中,使得新列表仍然有序。 可能你看到这个会有点晕,没关系听我慢慢解释一下: 1,首先假设我们的列表项的第一个项是有序的 2,我们从列表的第二项开始遍历,在循环中遍历当前项以前有序列表,找到当前项原创 2017-12-27 11:40:38 · 1291 阅读 · 0 评论 -
java中交互两个值方法总结(三种)
前言:今天来总结一下java中交换两个数值的三个方法。 一:引用第三变量 : 标准做法 二:不引入第三变量 1. 利用数值和 : 缺点:可能有出现数据类型溢出的情况 2. 利用位移运算符 优点:速度快 题目: int a = 10; int b = 20; 交换a、b的值,期望原创 2018-01-17 22:42:03 · 2589 阅读 · 0 评论 -
JAVA8新特性之(函数式接口)
前言:接上一篇文章:JAVA8新特性总结一(接口函数默认实现)文章说明: 1.本文内容是观看视频所做的总结,视频网址如下: http://www.gulixueyuan.com/course/56/task/698/show知识点:函数式接口:知识点一:什么是函数式接口? 答: 1.函数式接口指的是接口中只有一个抽象方法的函数。 说明:原创 2017-11-21 18:58:39 · 583 阅读 · 0 评论 -
java基础之File类详解
知识点一:File类是干什么用的?File类说明: 存储在变量,数组和对象中的数据是暂时的,当程序终止时他们就会丢失.为了能够永 久的保存程序中创建的数据,需要将他们存储到硬盘或光盘的文件中.这些文件可以移动,传送,亦可以被其他程序使用.由于数据存储在文件中,所以我们需要学习一个和文件有密切关系的类,叫做File类,将要掌握获取文件的属性以及删除和重命名文件.最终如何向文件中写入数据和从原创 2017-05-28 11:19:07 · 640 阅读 · 0 评论 -
java基础之File(具体案例)
需求一:打印出指定文件夹下的子文件名和子文件夹名这里贴出我F:\test目录的截图:代码如下: //打印指定文件夹下的一级子文件名或者文件夹名 public static void printDir(File file){ //获得file文件夹下面的所有文件名 String[] list = file.list(); for (Stri原创 2017-05-28 12:30:21 · 351 阅读 · 0 评论 -
java基础之“==“ 与 ”equals ”的区别
java基础之“==“ 与 ”equals ”的区别前言:作为Java的基础知识,我相信可能还有许多朋友对于 "==" 与 "equals " 之间的关系还不是很明白,今天就总结一下两者的区别:知识点一:“==”与 equals 比较的内容是什么? 1. " == " 比较的是两个对象的内存地址 2. "equals"方法: a.Object类中的equals方法内部实现依原创 2017-06-05 13:17:09 · 606 阅读 · 0 评论 -
java生成UUID的方法总结
java生成UUID的方法总结前言:我们开发的时候,数据库表总会有一个主键,以前我们可能会使用自增的数字作为主键。这样做去确实查询的时候比较快,但是在做系统集成或者数据迁移的的时候就麻烦了。这是id就有可能重复了。那么有什么比较好的方法解决这一问题呢?于是jdk1.5出了UUID这个类来生成唯一的字符串标识。知识点一:什么是UUID?UUID含义是通用唯一识别码 (Universally Uniqu原创 2017-06-05 16:46:34 · 76159 阅读 · 10 评论 -
java生成二维码(使用zxing.jar)
前言:前两天,因为项目的需要生成二维码,以前也没有弄完。于是与百度一下发现还是有很多代码可以借鉴的,于是乎就找到一篇文章参考,完成了任务。在此向开源奉献的程序员们表示致敬。jar包依赖:可以从下面链接下载下载地址:http://download.csdn.net/download/xinghuo0007/10103887 说明:如果没有积分,可以QQ1227387823给我要。生成工具二维码工具原创 2017-11-04 14:21:08 · 807 阅读 · 0 评论 -
java打压缩包工具方法分享
前言:前几天写了一个java压缩文件的哪里,今天在这里分享一下。欢迎大家指点代码: /** * 将存放在sourceFilePath目录下的源文件,打包成fileName名称的zip文件,并存放到zipFilePath路径下 * @param sourceFilePath :待压缩的文件路径 * @param zipFilePath :压缩后存放路径,不包含原创 2017-11-04 14:38:57 · 784 阅读 · 0 评论 -
java中操作二进制的运算符总结(&,| , ^, ~, <<,>>, >>> )
前言:面试的时候遇到面试题是考察操作二进制的,本来学习的时候就没有好好看哪一点内容,这下整个人都不好了。于是回来整理了一下java关于操作二进制的一些操作符。知识点零:注意:java中所有的二进制操作符都是操作数字的补码---重要! 知识点一:& (与运算符)1.特点:二元操作符,操作两个二进制数据;两个二进制数最低位对齐,只有当两个对位数都是1时才为1,否则为02.案例: int a原创 2017-11-05 23:01:30 · 7247 阅读 · 0 评论