java
一些很好的知识,包括一些调优
星河scorpion
希望以后多多交流
展开
-
Java中的String,StringBuilder,StringBuffer三者的区别
最近在学习Java的时候,遇到了这样一个问题,就是String,StringBuilder以及StringBuffer这三个类之间有什么区别呢,自己从网上搜索了一些资料,有所了解了之后在这里整理一下,便于大家观看,也便于加深自己学习过程中对这些知识点的记忆,如果哪里有误,恳请指正。 这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。首先说运行速度,或者说是执行速度,在这方...原创 2018-08-07 20:07:11 · 135 阅读 · 0 评论 -
EJB+JPA实现总结
首先 我遇见了第一个问题就是 为什么我的程序发布的时候一直提示找不到我的源文件jdbc/MySqlDB_pm,首先这里我说明这个数据源我并没有配置,后来我配置了数据源但是不是这个而是jdbc/MySqlDB,然后我i一直调试还是还是提示同样的错误,第二天我重启电脑我发现那个问题不存在了,所以我觉得应该是我没有重启电脑的缘故。第二个问题就是 我访问我的servlet时一直提示404错误,我发布的原创 2017-05-14 11:16:17 · 1719 阅读 · 0 评论 -
关于JavaBean的PropertyChangeListener
JavaBean的属性与一般Java程序中所指的属性,或者说与所有面向对象的程序设计语言中对象的属性是一个概念,在程序中的具体体现就是类中的变量。在JavaBean的设计中,按照属性的不同作用又细分为四类:单值属性;索引属性;关联属性;限制属性。 本文主要介绍如何使用PropertyChangeSupport类来支持关联属性事件的触发。 1.关联属性 关联属性,也称之为绑定属性。原创 2017-04-22 23:30:29 · 1754 阅读 · 0 评论 -
Web Service和Servlet的区别
在最开始学习Web Service时候,总觉得Web Service和Servlet没有什么区别,觉得Servlet可以对Http请求进行相应并返回数据,而Web Service只不过是基于SOAP协议和XML对数据进行封装了,也是采用Http协议来传输数据,后来通过慢慢阅读相关材料,加上实际操作,才发现Web Service和Servlet有很大区别,根本不是在一个层次上的东西,于是对于它们的区...原创 2018-10-25 21:03:11 · 526 阅读 · 0 评论 -
DOM4J_ElementHandler示例代码
DOM4J解析XML利用ElementHandler接口。重写onStart()和onEnd()两个方法。注意:要读取元素节点的内容,必须在onEnd()方法中,因为onStart()只解析到开始节点。1、解析:SAXReader saxReader = new SAXReader();//addHandler必须在read之前,否则无效。saxReader.addHandler...原创 2019-03-21 14:27:46 · 1312 阅读 · 0 评论 -
java.util.logging.Logger使用详解
java.util.logging.Logger不是什么新鲜东西了,1.4就有了,可是因为log4j的存在,这个logger一直沉默着,其实在一些测试性的代码中,jdk自带的logger比log4j更方便。 一、创建Logger对象 static Logger getLogger(String name) 为指定子系统查找或创建一个 logger。 static Logger ...原创 2018-06-14 17:24:05 · 423 阅读 · 0 评论 -
多线程之BlockingQueue中 take、offer、put、add的一些比较
在java多线程操作中, BlockingQueue<E> 常用的一种方法之一。在看jdk内部尤其是一些多线程,大量使用了blockinkQueue 来做的。 借用jdk api解释下:BlockingQueue 方法以四种形式出现,对于不能立即满足但可能在将来某一时刻可以满足的操作,这四种形式的处理方式不同:第一种是抛出一个异常,第二种是返回一个特殊值(null 或 false,具体...转载 2018-06-13 09:05:04 · 1737 阅读 · 0 评论 -
EventBus
看到大家提出的关于Android的问题,有一部分可以用EventBus解决,而也有相当多的人推荐使用EventsBus,因为其和GreenDAO出自一家公司,并且使用它非常的简单,所以现在很多的互联网app都会使用EventsBus来进行消息传递。基于此,有很多EventBus的文章,写的非常的好,但是由于EventBus已经出了3.0版本,而国内的大多数翻译只是停留在了2.4版本左右,对于那些刚...原创 2018-04-24 09:55:08 · 188 阅读 · 0 评论 -
File FilecreateNewFile()和createTempFile()的区别
createNewFile()和createTempFile()区别:为了更好地测试,我建了两个类: 1、使用createNewFile()创建一个abc.txt的文件:Java代码 public class TestFile1 { public static void main(String[] args) {原创 2018-04-24 09:41:02 · 1289 阅读 · 0 评论 -
java并发工具
首先我们考虑到使用thread是不方便的很多地方不是很方便1.原子操作:java.util.concurrent.atomic类中提供了很懂很多原子类,如:AtomicBoolean,atomicInteger2.Excutor、ExcutorServiceExcutor中由于各有一个excute()函数相当于thread中的runExcutorService是Excutor的一个原创 2017-04-22 23:44:20 · 485 阅读 · 0 评论 -
java线程的同步 排斥性与可见性
同步性与排斥性是一个意思:主要是使用关键字synchronized 同步主要是一个程序块 而不是说一个单独的变量 所以很多时候都会使用在函数的定义中。可见性volatile:可以保证它对所有访问这个变量的线程是可见的。经常用来修饰一个变量。...原创 2017-04-22 21:40:15 · 676 阅读 · 0 评论 -
深入理解Java国际化
假设我们正在开发一个支持多国语言的Web应用程序,要求系统能够根据客户端的系统的语言类型返回对应的界面:英文的操作系统返回英文界面,而中文的操作系统则返回中文界面——这便是典型的i18n国际化问题。对于有国际化要求的应用系统,我们不能简单地采用硬编码的方式编写用户界面信息、报错信息等内容,而必须为这些需要国际化的信息进行特殊处理。简单来说,就是为每种语言提供一套相应的资源文件,并以规范化命名的方式原创 2017-04-16 17:02:12 · 588 阅读 · 0 评论 -
零基础写java网络爬虫-百度
说到爬虫,使用Java本身自带的URLConnection可以实现一些基本的抓取页面的功能,但是对于一些比较高级的功能,比如重定向的处理,HTML标记的去除,仅仅使用URLConnection还是不够的。在这里我们可以使用HttpClient这个第三方jar包。接下来我们使用HttpClient简单的写一个爬去百度的Demo:[cpp] view plain c原创 2017-04-05 12:13:48 · 576 阅读 · 0 评论 -
Swing线程之SwingUtilities.invokeLater 解释
在官方的文章里:http://docs.oracle.com/javase/tutorial/uiswing/painting/step1.html 告诉我们要创建一个gui。All Graphical User Interfaces require some kind of main application frame in which to display. In Swing, thi原创 2017-04-17 16:47:12 · 1628 阅读 · 0 评论 -
Java反射机制创建对象
package lxf; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; class Person { private String name; private int age; public转载 2017-02-28 19:35:09 · 423 阅读 · 0 评论 -
Java中用Class.getResource把图片自动打包进Jar 如何用相对路径获得图片
用JAVA获取文件,听似简单,但对于很多像我这样的新人来说,还是掌握颇浅,用起来感觉颇深,大常最经常用的,就是用JAVA的File类,如要取得c:/test.txt文件,就会这样用File file = new File("c:/test.txt");这样用有什么问题,相信大家都知道,就是路径硬编码,对于JAVA精神来说,应用应该一次成型,到处可用,并且从现实应用来讲,最终生成的应用也会部署到Wi原创 2016-09-28 14:27:40 · 2703 阅读 · 0 评论 -
Vector
java vector原创 2016-08-31 11:08:21 · 498 阅读 · 0 评论 -
建立struts2项目的时候 遇到的问题总结
1.问题一:搭建struts2遇见问题需要导入的jar包如下 webxml文件配置如下:<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns...原创 2018-06-23 17:29:32 · 487 阅读 · 0 评论 -
Java KeyEvent事件键码值
16进制最近编程用到KeyEvent的键码值,但书上只是一小部分不全,我百般周折终于找到了比较全的键码值,拿来和大家共享一下,其中有一部分是与其ASCII码值相同的: 0x1 鼠标左键0x2 鼠标右键0x3 CANCEL 键0x4 鼠标中键0x8 BACKSPACE 键0x9 TAB 键0xC CLEAR 键0xD ENTER 键0x10 SHIFT 键0x11 CT...原创 2018-07-03 20:11:45 · 1246 阅读 · 0 评论 -
ResultSet和Result的区别
微软的.NET平台上面的数据访问有一个特点,就是数据查询的结果,可以放在内存中,以XML格式进行描述,不需要一直与数据库保持在线连接,用DataSet + Data Adapter来实现!我们可以看到,这样会长期占用数据库连接的资源,是一个有点不爽的问题...其实,在JSTL中提供了另外一种机制,让我们在返回查询结果到表示层的时候,可以做到离线使用!它就是javax.servlet.jsp.jst...原创 2018-07-04 15:54:12 · 1029 阅读 · 0 评论 -
java split(String regex, int limit) 的使用
项目中遇到了这样一个问题,对 String str = ",," 调用 split(",")方法,预期结果是返回一个长度为 3 的String数组,且每一个元素都为空字符串 ""。但实际结果返还的是一个空数组,长度为 0 。百度之,原来java中还有 split(String regex, int limit)这中用法,String[]java.lang.String.split(Strin...原创 2019-03-06 18:27:53 · 1758 阅读 · 0 评论 -
web应用程序的上下文是什么?里面有什么对象?request,session,application它们和servlet有什么关系!
tomcat是一个servlet容器,也就是一个服务器,servlet一个服务类,用于提供服务。servlet需要servlet容器来启动,不能脱离容器独自运行 你发一个http请求到服务器请求浏览一个网页,tomcat会吧这个请求解析出来,包装成一个request对象,然后根据你的请求地址,把request丢给相应的servlet处理。 web上下文可以看成web应用的运行环境,一般用c...原创 2019-01-17 17:10:49 · 1872 阅读 · 0 评论 -
java国际化文件的存放位置
国际化文件 必须放在src文件夹目录下,我也不知道为什么 反正就是这么访问。原创 2017-04-16 17:34:19 · 1569 阅读 · 0 评论 -
java中文件选择器JFileChooser的用法
一般的说,大家用JFileChooser有两种用法:打开文件或文件夹、保存文件或文件夹。本文就打开和保存文件来介绍JFileChooser的用法。 头文件的声明:import javax.swing.JFileChooser;1. 打开文件 JFileChooser fd = new JFileChooser(); //fd.setFileSelectionMod...原创 2017-04-14 12:09:48 · 6828 阅读 · 1 评论 -
Java关键字transient和volatile小结
transient和volatile两个关键字一个用于对象序列化,一个用于线程同步,都是Java中比较高阶的话题,简单总结一下。transienttransient是类型修饰符,只能用来修饰字段。在对象序列化的过程中,标记为transient的变量不会被序列化。示例:class Test {transient int a; // 不会被持久化int b; // 持久化}当类T...原创 2017-04-24 15:24:13 · 715 阅读 · 0 评论 -
class.forname()的使用
Class.forName()是根据类名称加载类 比如有一个类名为com.abc.AAA 此处Class.forName(‘com.abc.AAA ’).newInstance()就会创建一个AAA对象而.class一般用来获取类的通用属性 比如AAA.class.getDeclareMethod()是获取AAA类的所有声明的方法 主要用于反射机制...原创 2016-10-29 09:47:53 · 509 阅读 · 0 评论 -
点击eclipse日志中的链接提示:Unable to parse type name from hyperlink
环境eclipse Oxygen Release (4.7.0)log4j version: 1.2.17问题使用log4j,点击console中log4j打印的调试信息链接时,eclipse弹出提示:Hyperlink ErrorReason:Unable to parse type name from hyperlink.无法定位到代码位置。log4j 设置log4...原创 2018-10-13 23:39:24 · 695 阅读 · 0 评论 -
java反编译完美教程
资源下载链接:对不起CSDN不让上传 用JD-GUI打开jar包或class文件 点击工具栏打开文件的图标,在弹出的文件选择框中找到你要反编译的jar包或class文件。 3 查看源码 此工具与eclipse代码编辑界面很接近,很直观地可以看到代码的结构和源码,只是无法查看原有代码的注释而已。同时还可以利用工具的搜索功能,快速定位源码,找到自己想阅读的源码。...原创 2018-07-24 10:48:57 · 2630 阅读 · 0 评论 -
JVM-String常量池与运行时常量池(java自带反编译)
Start with JVM周志明先生著-《深入理解Java虚拟机》,书买回来好几天了,但是最近才准备开始搞一搞了(哭瞎…..)。首先是第一章的Java以及JVM发展历史,大概知道了现行的应用最广泛的Java虚拟机是HotSpot,当然一些商业公司也有使用自己的虚拟机。JVM运行时数据区这是放在Java内存区域与内存溢出异常里面的必备知识,描述了Java虚拟机在运行时的数据区域 私有 ...原创 2018-07-24 10:30:35 · 571 阅读 · 0 评论 -
JAVA本地方法详解,什么是JAVA本地方法?
JAVA中有两种方法:JAVA方法和本地方法JAVA方法是由JAVA编写的,编译成字节码,存储在class文件中本地方法是由其它语言编写的,编译成和处理器相关的机器代码本地方法保存在动态链接库中,即.dll(windows系统)文件中,格式是各个平台专有的JAVA方法是与平台无关的,但是本地方法不是。http://blog.sina.com.cn/s/blog_5b9b4abe...原创 2018-07-24 10:26:24 · 866 阅读 · 0 评论 -
Java编程中使用lambda表达式的奇技淫巧
为什么使用Lambda表达式先看几个例子:第一个例子,在一个独立的线程中执行某项任务,我们通常这么实现:? 1 2 3 4 5 6 7 8 9 10 class Worker implements Runnable { public void run() { ...原创 2018-07-24 10:05:33 · 2490 阅读 · 0 评论 -
Java 8 新特性
Java 8 新特性Java 8 (又称为 jdk 1.8) 是 Java 语言开发的一个主要版本。 Oracle 公司于 2014 年 3 月 18 日发布 Java 8 ,它支持函数式编程,新的 JavaScript 引擎,新的日期 API,新的Stream API 等。新特性Java8 新增了非常多的特性,我们主要讨论以下几个: Lambda 表达式 − Lambda允许把...原创 2018-07-24 09:38:59 · 153 阅读 · 0 评论 -
Vector
Vector 类可以实现可增长的对象数组。与数组一样,它包含可以使用整数索引进行访问的组件。但是,Vector 的大小可以根据需要增大或缩小,以适应创建Vector 后进行添加或移除项的操作。每个向量会试图通过维护 capacity 和 capacityIncrement 来优化存储管理。capacity 始终至少应与向量的大小相等;这个值通常比后者大些,因为随着将组件添加到向量中,其原创 2015-12-13 18:45:11 · 448 阅读 · 0 评论