
java
文章平均质量分 85
星空之旅1995
这个作者很懒,什么都没留下…
展开
-
JDBC与JNDI区别
Java Database Connectivity (JDBC)是一个标准的Java API,它由一组类和接口组成,Java应用程序开发人员使用它来访问数据库和执行SQL语句 JNDI(Java Name Directory Interface),可不仅仅是进行数据库定位的, 它是给当前应用服务器所管理的所有资源一个唯一的标识,包括数据库,网页,文件, 连接池等等。在we转载 2017-01-06 17:04:05 · 331 阅读 · 0 评论 -
java内存空间
Java内存分配与管理是Java的核心技术之一,之前我们曾介绍过Java的内存管理与内存泄露以及Java垃圾回收方面的知识,今天我们再次深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域:◆寄存器:我们在程序中无法控制◆栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中◆堆:存原创 2016-01-11 16:57:06 · 303 阅读 · 0 评论 -
dom4j解析xml时候需要2个包
dom4j-1.6.1.jarjaxen-1.1.6.jarprivate static DataItems getxmlParserByGN(String gname) throws DocumentException {DataItems dataitems = new DataItems();if(gname != null) {SAXReader sax = n原创 2016-01-11 16:42:32 · 1184 阅读 · 0 评论 -
时间复杂度与空间复杂度
算法的时间复杂度和空间复杂度合称为算法的复杂度。1.时间复杂度(1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频原创 2016-01-11 09:12:34 · 320 阅读 · 0 评论 -
数据字典项 设计实现方案
最近被安排做数据字典的设计,本人一头雾水啊,没弄过啊,网上搜索一下,这个老兄写的很好,原文链接:http://blog.youkuaiyun.com/stevene/article/details/575142?reload在应用开发中,总会遇到许多数据字典项,比如对象状态、对象类型等等,这些项一般都是固定的若干可选值选项,比如对象状态可能有新建、修改、删除等状态,这些数据字典项一旦定义完毕改动的频率转载 2016-01-09 14:36:31 · 1658 阅读 · 0 评论 -
关于java按位操作运算
.在了解位移之前,先了解一下正数和负数的二进制表示形式以及关系:举例15和-15:15 的原码: 00000000 00000000 00000000 00001111 补码: 11111111 11111111 11111111 11110000 +1 = -15的原码:11111111 11111111 11111111 1111转载 2016-01-09 11:08:55 · 530 阅读 · 0 评论 -
java序列化反序列化uid
简单来说,Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,否则就会出现序列化版本不一致的异常。 当实现java.io.Serializable接口的实体(类转载 2016-01-09 10:37:50 · 2511 阅读 · 1 评论 -
枚举基础(界面下拉单)
对于枚举,初学Java的时候可能我们就已经接触过了,但是在毕业前,其实一直都不知道真正工作里面枚举是怎么用的,枚举有什么用?接下来,博主就介绍枚举在实际工作中的一种使用场景,本文只适合初级的小菜鸟看哈,大神看了可别嘲笑这是水文哦,哈哈!一、使用场景在实际的工作中,比如我有一个选择家庭关系的下拉选择框,大家都是会是value和desc的组合,一般我们保存到数据库的都是value(英文转载 2016-01-08 16:01:16 · 477 阅读 · 0 评论 -
Java -- 内存机制
Java 把内存划分成两种:一种是栈内存,另一种是堆内存。在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配,当在一段代码块定义一个变量时,Java 就在栈中为这个变量分配内存空间,当超过变量的作用域后(比如,在函数A中调用函数B,在函数B中定义变量a,变量a的作用域只是函数B,在函数B运行完以后,变量a会自动被销毁。分配给它的内存会被回收),Java 会自动释放掉为该变量分转载 2016-01-08 14:57:54 · 268 阅读 · 0 评论 -
JAVA 使用Dom4j 解析XML
解析XML的方式有很多,本文介绍使用dom4j解析xml。1、环境准备(1)下载dom4j-1.6.1.jar(2)下载junit-4.10.jar2、温馨提示解析XML过程是通过获取Document对象,然后继续获取各个节点以及属性等操作,因此获取Document对象是第一步,大体说来,有三种方式:(1)自己创建Document对象转载 2016-01-11 15:43:07 · 412 阅读 · 0 评论 -
时间复杂度计算
1,算法复杂度是在《数据结构》这门课程的第一章里出现的,因为它稍微涉及到一些数学问题,所以很多同学感觉很难,加上这个概念也不是那么具体,更让许多同学复习起来无从下手,下面我们就这个问题给各位考生进行分析。首先了解一下几个概念。一个是时间复杂度,一个是渐近时间复杂度。前者是某个算法的时间耗费,它是该算法所求解问题规模n的函数,而后者是指当问题规模趋向无穷大时,该算法时间复杂度的数转载 2016-01-12 08:53:30 · 356 阅读 · 0 评论 -
spring boot博客
http://blog.didispace.com/categories/Spring-Boot/原创 2017-01-06 14:26:17 · 409 阅读 · 0 评论 -
泛化、依赖、关联、聚合、组合
时间久了不用了,慢慢慢慢也就淡忘了,写一篇博客记录下 借来一张《大话设计模式》图:类的关系一般分为泛化(继承,实现),依赖,关联,聚合,组合 继承 指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性; 实现 指的是一转载 2017-01-06 14:25:38 · 226 阅读 · 0 评论 -
ajax跨域请求的三种方式(js+java)
1 : 采用jsonp (只支持get请求,后端返回的jsonp格式json,后端无需做请求放行操作) /* $.ajax({ type: "GET", // 此处只能是get请求 post请求后端即使修改(method = RequestMethod.POST)了也不行 async: false, url: "http:localhost:80原创 2016-11-28 15:11:47 · 10782 阅读 · 0 评论 -
java中文排序逻辑
出处:http://blog.youkuaiyun.com/ethanq/article/details/7192042 http://blog.youkuaiyun.com/hui_lang/article/details/7515674在Java中一般的String数组排序可以调用Arrays类的sort(Object[] a)方法进行排序,代码类似:[java] view plain copy pr原创 2016-12-12 15:35:42 · 579 阅读 · 0 评论 -
AOP理解
Aspect Oriented Programming 面向切面编程。解耦是程序员编码开发过程中一直追求的。AOP也是为了解耦所诞生。具体思想是:定义一个切面,在切面的纵向定义处理方法,处理完成之后,回到横向业务流。AOP 在Spring框架中被作为核心组成部分之一,的确Spring将AOP发挥到很强大的功能。最常见的就是事务控制。工作之余,对于使用的工具,不免需要了解其所以然。学习了一下,写了些原创 2016-03-24 15:00:46 · 336 阅读 · 0 评论 -
IOC理解
1.依赖 依赖就是有联系,有地方使用到它就是有依赖它,一个系统不可能完全避免依赖。如果你的一个类或者模块在项目中没有用到它,恭喜你,可以从项目中剔除它或者排除它了,因为没有一个地方会依赖它。下面看一个简单的示例:复制代码 /// /// 用户播放媒体文件 /// public class OperationMain { public vo转载 2016-03-24 14:59:03 · 396 阅读 · 0 评论 -
JCR集成Java内容仓库和Spring
保存各种信息对于应用程序来说非常平常,大多数时候它们是保存在关系数据库中。数据库处理规范数据类型十分在行,但是在处理如图像、文档等二进制数据时却不是那么得心应手。尽管可以用文件系统作为替代——而且它们还提供了更好的性能。但它们既没有提供用于搜索信息的查询语言,也没有提供表示关系或事务的概念。 在很多情况下,允许第三方访问这些存储数据(随着应用程序的不断扩展,这成为一个典型的需求)是一个漫长而复杂的转载 2016-04-05 16:30:46 · 2390 阅读 · 0 评论 -
虚拟机类加载机制
虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的JAVA类型,这就是虚拟机的类加载机制。 类加载的生命周期包括:加载Loading, 验证Verification, 准备Preparation, 解析Resolution, 初始化Initialization, 使用Using和卸载Unloading.转载 2016-01-12 10:54:49 · 349 阅读 · 0 评论 -
JAVA多线程之UncaughtExceptionHandler——处理非正常的线程中止
当单线程的程序发生一个未捕获的异常时我们可以采用try....catch进行异常的捕获,但是在多线程环境中,线程抛出的异常是不能用try....catch捕获的,这样就有可能导致一些问题的出现,比如异常的时候无法回收一些系统资源,或者没有关闭当前的连接等等。首先来看一个示例:[java] view plaincopypackage c转载 2016-01-08 14:11:40 · 439 阅读 · 0 评论 -
java中volatile关键字的含义 原子类型变量使用
在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 同步块 和 volatile 关键字机制。 synchronized 同步块大家都比较熟悉,通过 synchronized 关键字来实现,所有加上synch原创 2016-01-08 13:38:34 · 407 阅读 · 0 评论 -
Java 无意识自动装箱严重消耗性能
ava 无意识自动装箱严重消耗性能。根据《effective java》书中所写,我测试了以下的简单例子。package com.mwq.number;public class Test { public static void main(String[] args) { long time1 = System.currentTimeMillis();转载 2016-01-07 17:28:02 · 342 阅读 · 0 评论 -
Java heap space
java.lang.OutOfMemoryError: Java heap space解决方法引起java.lang.OutOfMemoryError: Java heap space异常,可能是由JAVA的堆栈设置太小的原因修改的是jdk1.7.0_15 调整java堆栈的大小 java->安装的jre->edit->-Xms256m -Xmx512m原创 2015-11-28 15:54:12 · 458 阅读 · 0 评论 -
java加载文件路径问题
public static void main(String[] args) throws IOException { //加载 包下的文件 InputStream is = LuJing.class.getClassLoader().getResourceAsStream("Text/emgi.properties"); //加载 包下的文件 InputStream原创 2015-11-28 15:52:40 · 434 阅读 · 0 评论 -
java -> sql 数据类型
1 mysql 数据类型 与 java 的数据类型对应 关注date类型varchar string char string blob byte[] 对于bolb,一般用于对图片的数据库存储,原理是把图片打成二进制,然后进行的一种存储方式,在java中对应byte[]数组。 text string integer lon原创 2015-11-28 16:15:39 · 303 阅读 · 0 评论 -
博客书多线程排版
多线程处理稀缺资源并返回数据 // +++多线程处理公共方法 public void ThreadealBlogBook(List blogArticleList, final float rowh1, final float wordsize1, final BlogBook blogBook1) { long start = System.currentTimeMi原创 2015-11-28 16:10:43 · 304 阅读 · 0 评论 -
jfinal功能性代码
JFianl1 得到当前的表中的最大的id值 /** * 查询模板最大值 */ private static long maxTpId() { String url = “jdbc:mysql://220.178.51.188:2906/horce3”; String username = “horce”;原创 2015-11-28 15:56:24 · 406 阅读 · 0 评论 -
解析xml文件
2种方式解析xml文件1 递归的方式public static void readNode(Element root, String prefix) { if (root == null) return; // 获取节点的属性 List attrs = root.attributes(); if (at原创 2015-11-28 15:55:13 · 260 阅读 · 0 评论 -
博客书第一次生成时候利用多线程排版
要求:当一本书第一次生成时,另起一个分支。要求:1、多线处理排版(借鉴极速成书接口)。2、对每一篇博客的排版数据,进行批量入库。================1 第一次成书的时候使用 此时podbook pod册子数据都没有2 利用多线程对所有的list 排版3 代码 public void ThreadealBlogBook(List b原创 2015-11-27 16:03:55 · 290 阅读 · 0 评论 -
Java中的代码点与代码单元
最近看core java,之前一直不明白,看了不少帖子和博客,总算搞明白了。 Java中,char[]、String、StringBuilder和StringBuffer类中采用了UTF-16编码,使用U+0000~U+FFFF来表示一个基本字符(BMP字符),但是位于U+D800到U+DBFF和U+DC00到U+DFFF的char被视为无定义字符。大多数的常用Unicode字符使用一个代码单元就转载 2015-12-11 08:54:07 · 325 阅读 · 0 评论 -
tomcat总结
1 一个项目要跟换一个新的jar 删除这个jar之后lib中就不存在这个jar 重新添加这个jar的升级版本 要在(最好在)汤姆猫中处理 在eclipse中处理(汤姆猫可能没有加进去) 发布的时候可能有误(类找不到)2 端口被占用了,把其他的tomcat关闭,如果找不到,则打开任务管理器,结束”javaw.exe”这个进程3 pdf html的排版的时候 x y w h原创 2015-11-28 15:57:17 · 348 阅读 · 0 评论 -
微信书的分月存储
书籍开本的大小是以印刷纸的全张为计算单位,每全张纸切成多少小张,就叫多少开本。 由于纸面的幅度不一样,同样开本的尺寸是不一样的,所以选择开本时要注明全张纸的幅面尺寸。 版心是版面上容纳的文字、图表(一般不包括书眉、中缝和页码)的部位。书籍内页:指除了封面以外的所有页面称为内页,一般编排顺序为:封1 ,封2 ,内页 ,封3,封4 /** * @param 删除bookid下的pag原创 2015-11-28 15:46:34 · 565 阅读 · 0 评论 -
Java 斐波那契数列
斐波那契数列在编程界无人不晓,不晓得以前是否已经写过这样的Java 程序,也不关乎王二如今已经编程了多少年,再次来感受一下该数列的牛逼之处吧!public static void main(String args[]) { try { BufferedReader br = new BufferedReader(new InputStreamReader转载 2016-01-07 17:25:17 · 291 阅读 · 0 评论 -
Java数据精度
浮点类型数据进行计算时: System.out.println(“double 99.9 * 9.9 ” + 99.9 * 9.9); ddd = new BigDecimal(99.9 * 9.9); System.out.println(“double 99.9 ” + ddd); 此时结果为 double 99.9 * 9.9 989.01000000原创 2016-01-07 09:18:58 · 395 阅读 · 0 评论 -
outs.write(baos.toByteArray()) 内存溢出
ByteArrayOutputStream baos = makePdfByJson(result.toString(), “”); if (baos.size() > 0) { txtFilePath.setText(filePath.toString());原创 2016-01-04 17:46:18 · 3223 阅读 · 1 评论 -
JarURLConnection用途
现在流行的框架都会从jar文件中读取配置文件,我们现在可以通过JarConnection实现这个功能。 Jar URL Connection是一种连接到Java文档文件或Jar文件中的一个入口连接定位。 jar url的语法为: jar:!/{entry},例如:jar:http://www.example.com/ex.jar!/com/demo/Class.class. Jar URL只原创 2015-12-11 09:25:02 · 617 阅读 · 0 评论 -
JarURLConnection用途
现在流行的框架都会从jar文件中读取配置文件,我们现在可以通过JarConnection实现这个功能。 Jar URL Connection是一种连接到Java文档文件或Jar文件中的一个入口连接定位。 jar url的语法为: jar:!/{entry},例如:jar:http://www.example.com/ex.jar!/com/demo/Class.class. Jar URL只原创 2016-01-04 17:27:58 · 1375 阅读 · 0 评论 -
线程
一:newFixedThreadPool创建一个线程可重用的并且线程数固定的线程池。nThreads - 池中的线程数threadFactory - 创建新线程时使用的工厂public static ExecutorService newFixedThreadPool(int nThreads) public static ExecutorService newFixedThreadPool(in转载 2015-11-28 16:29:49 · 325 阅读 · 0 评论 -
增强for循环用法
增强for循环用法1.首先增强for循环和iterator遍历的效果是一样的,也就说增强for循环的内部也就是调用iteratoer实现的,但是增强for循环有些缺点,例如不能在增强循环里动态的删除集合内容。不能获取下标等。 2.ArrayList由于使用数组实现,因此下标明确,最好使用普通循环。3.而对于LinkedList 由于获取一个元素,要从头开始向后找,因此建议使用增强for循环,也就是原创 2015-11-28 16:00:43 · 342 阅读 · 0 评论 -
AtomicLong
AtomicLong 以原子的形式更新数据的值 它们是线程安全的类, 但是它们并不是通过同步和锁来实现的, 原子变量的操作会变为平台提供的用于并发访问的硬件原语实现接口 serializable extends NumberAtomicLong() AtomicLong(long initialValue)1 添加指定的值 2 当前的值等于预期的值的时候 更新当前的值 3 为当前转载 2015-11-28 15:59:14 · 560 阅读 · 0 评论