
JAVA技术
文章平均质量分 71
高新普惠_搬砖手
现就职于山西高新普惠,请大家关注: www.gaoxinzb.com
喜欢读书,喜欢写代码,喜欢思考。
软件工程师就像游戏玩家,需要修炼很多种技能,开发语言就像主动技能;模式和算法算是内功;软件工程和UML等算是被动技能;你的等级是什么?有哪些技能?欢迎讨论
展开
-
Jakarta Commons——BeanUtils
参考guide内容 http://commons.apache.org/beanutils/v1.8.1/apidocs/org/apache/commons/beanutils/package-summary.htmlPropertyUtils作用:属性的get和set操作属性分为四种:simple(String),index(List),map(Map),Obje原创 2011-02-21 11:24:00 · 880 阅读 · 0 评论 -
算法导论(六)——图算法
第二十二章 图的基本算法1. 搜索算法是图算法的核心,两种表示方法:a) 邻接表(稀疏图)b) 邻接矩阵(稠密图)2. 两种图的遍历方法:广度优先遍历(求每条边都是单位权值的图的最短路径)深度优先遍历(拓扑排序、将有向图分解为强连通子图)。深度优先搜索除了创建一个深度优先森林外,深度优先搜索同时为每个顶点加盖时间戳。每个顶点v有两个时原创 2013-04-02 12:56:02 · 3237 阅读 · 0 评论 -
算法导论(七)——NP、java支持、参考
NP完全性问题 如果对一问题证明其是NP完全性的,就可以设计一近似算法,而不去求最优解 NP问题是否存在有效算法是未知的,且如果任何一个问题存在有效的算法,则其他都存在有效算法图着色问题: 相邻顶点颜色不同情况下所用的最小颜色数 N门考试,每门一个小时,而同一学生选修课程不能同时进行,问最少多少小时结束考试装箱: 任原创 2013-04-02 12:57:11 · 844 阅读 · 0 评论 -
算法导论(四)——算法和分析技术
重要技术 分治法、随机化、递归求解、动态规划、贪心算法动态规划:最优化问题,当作选择时,出现同样形式的子问题。每一个特定子问题有多于一种选择的集合。关键技术是存储这些子问题每一个解,防止其重复出现贪心算法:算是动态规划的子集,当子问题只有一种选择,就是取当前情况下的最优解时适用平摊分析:一种用来分析执行一系列类似操作的算法的工具。在一个操作序列中,不可能每一个都以原创 2013-04-02 12:54:10 · 1149 阅读 · 0 评论 -
泛型
接口定义 Public interface Map { Public void put(K key,V value);} 其中在接口、类中定义K,V,则代表构造对象时要传入,然后再函数中就可以使用了。函数定义 需要一个类型安全的printList()方法,它能够接受我们传入的任何List,而不关心它被参数化为什么原创 2012-11-02 16:01:21 · 553 阅读 · 0 评论 -
算法导论(一)——基础知识
学习目的: 1. 掌握各数据结构要解决的问题,优缺点 2. 算法设计策略 3. 常用算法要解决的问题,以及如何选择 4. 可以使用c或 c++编写算法,java通过jni进行调用c程序第一部分基础知识第一章 算法作用没有一种数据结构适用所有目的,所以明白数据结构的优缺点很重要第二章 算法入门1. 循环不变式用来证明递归的正确性2.原创 2013-04-02 12:38:46 · 712 阅读 · 0 评论 -
Java 网络程序设计 笔记
1. java.net的api分类 处理url 处理主机名称和IP地址 处理tcp通信协议 处理udp通信协议 处理网络及权限 内容处理器 contentHandler2. 基本的服务器流程服务器端 1)建立 ServerSocket 调用accept 监听客户端 2)建立sock原创 2013-07-29 16:44:11 · 639 阅读 · 0 评论 -
数据挖掘笔记(1)——概论、类型
概论定义 海量数据 自动或半自动 有用规律应用场景 不能清晰地定义问题 数据是否有价值 性价比是否合适学习方式 监督学习: 有分类和评价机制,如 Classification 、Numeric Prediction; 无监督误差:没有明确的分类和评价,如Cluster Analysi原创 2013-08-26 18:01:38 · 903 阅读 · 0 评论 -
数据挖掘笔记(4)——关联规则
基本概念 事务:每一个记录 项:记录中的每一个 项集:项的组合构成一个项集 支持度:同时出现的概率,P(AB) 置信度: P(B | A) 发现有意义的规则: 最小支持度和最小置信度挖掘步骤 1.数据预处理 2.发现频繁项目集: 使用最小支持度进行筛选原创 2013-08-26 18:05:22 · 1069 阅读 · 0 评论 -
算法导论(五)——高级数据结构
B 树是一种被设计成专门存储在磁盘上的平衡查找树。因为磁盘的速度远远慢于内存,所以 B树被设计成尽量减少磁盘访问的次数(引入多叉,降低树的高度),知道了这一点之后就会很清楚明白 B树的变形 B+树了,B+树通过将数据存储在叶子结点从而增大了一个结点所包含的信息进而更加的减少了磁盘的访问次数。 可合并堆:这种堆支持 Insert,Mininum,Extract-Min,union,de原创 2013-04-02 12:55:09 · 4415 阅读 · 0 评论 -
算法导论(三)——数据结构
选择什么数据结构,要看你执行什么样的操作第十章 基本数据结构栈和队列栈: empty push pop 都是 O(1)队列: enqueue dequeue O(1)实例:数值转换: 十进制和d进制转换 N=(N div d)*d+N%d 括号匹配的检验 行编辑程序 (实现退字符和退行功能)原创 2013-04-02 12:53:02 · 783 阅读 · 0 评论 -
算法导论(二)——查找、排序和顺序统计
第六章 堆排序1. 原地排序算法: 只有常数个数的元素会被移动到集合之外2. 堆作为一种数据结构,不光用在堆排序,还用在优先队列中。堆在 lgn的时间内可生成N的优先队列 堆:完全二叉树;节点大于子节点3. 好的快排要优于堆排堆排序实现 保持堆的性质:maxHeapify(A, i) if A[i]原创 2013-04-02 12:51:51 · 724 阅读 · 0 评论 -
Mbean 管理配置文件
需求: 实现简单,远端修改,配置不修改源代码,不重启服务器实现:程序好手则会写一个段代码,把配置值缓存起来,系统在读值的时候,先看看配置文件有没有更动。如有更改则重读一遍,否则从缓存里读取值程序高手则懂得取物为我所用,用JMX!把配置属性集中在一个类,然后写一个叫MBean的东东,再配置一下就轻松搞定了。而且JMX自动提供了一个WEB页面来给你来改变这些配置信息。原创 2012-11-05 11:42:40 · 715 阅读 · 0 评论 -
Effective Java 笔记
我的感悟 使用正确的态度学习这本书,有的原则会让java程序过于复杂创建和销毁对象1. 使用静态工厂代替构造函数原因 1. 静态工厂具有名字 i. 对于两个构造函数,如果参数类型和个数相同,则只能使用不同的顺序进行区分,而使用工厂函数可以为这两个构造函数指明不同的名称原创 2012-11-26 15:35:58 · 915 阅读 · 1 评论 -
异常和错误
注意事项1. 确保状态码有一个正确值。若有finally子句,则不要在try块中直接返回,亦不要在finally中直接返回。2. 尽可能地处理异常,如果无法在的代码中完成处理,函数定义时声明异常, 异常处理的关键是识别特定的异常3. 尽量使用标准异常,如IllegalArgumentException .NullPointerException原创 2012-09-07 18:00:27 · 403 阅读 · 0 评论 -
极限编程XP 笔记
简介极限编程是轻量级的软件开发方法,它的价值观是交流、简约、反馈和勇气,即一个开发过程可以从四个方面改进:加强交流,从简单做起,寻求反馈,用于实事求是。基本特征如下: 1. 极限的工作环境 2. 极限的需求: 与客户一同工作,客户指定优先级,开发人员确定开发的风险 3. 极限的设计: 功能可通过单元测试 4. 极限的测试:测试内容包括开发, 整合原创 2012-12-23 14:10:01 · 519 阅读 · 0 评论 -
模板工具(二)——VelocityTools
应该算是Velocity的扩展,为了Velocity更好用。包括GenericTools VelocityView VelocityStruts三个子项目,其中VelocityStruts是为了与struts整合服务,此处不介绍。GenericTools为j2se提供tools使用,具体tools如下: DateTool: 对Date操作:格式化、比较等原创 2012-09-21 17:26:06 · 9717 阅读 · 0 评论 -
文本生成工具(综合)
Jet 安装过程 1. 下载 emf插件 2. 下载 jet插件 3. 查看 help content中是否有帮助,如果有多半安装成功了 4. 点击 new—》project—》选择 transformation project(将 显示所有的wizard 启动,否则看不到,太坑爹了)作用 快速构造代码包和类结构,类似于易点原创 2013-01-22 17:24:46 · 908 阅读 · 0 评论 -
Java 图像库——JUNG(未完)
介绍 是一个Java开源项目,其目的在于为开发关于图或网络结构的应用程序提供一个易用、通用的基础架构。使用JUNG功能调用,可以方便的构造图或网络的数据结构,应用经典算法(如聚类、最短路径,最大流量等),编写和测试用户自己的算法,以及可视化的显示数据的网络图。1. 图数据结构 ParseMultiGraph 和ParseDirectedGraph,这两个类支持参数化,可以原创 2013-01-22 18:07:02 · 2456 阅读 · 0 评论 -
eclipse 高级功能 未完
java视图1. 使用模板 可以将通用的代码块做成模板 自定义: pereference template 2. 查找 search -》search,选择java search,可实现在函数名、属性中查找3. 运行 设置main的参数 ,在 run configuration 选择 arguments 对ant的支持对xm原创 2013-02-20 16:32:23 · 478 阅读 · 0 评论 -
数据挖掘笔记(2)——分类、数值预测
分类-主要方法决策树 采用贪心策略以自顶向下的分治法构造决策树。 1. 选择样本集的一个属性作为根节点,为该属性的每个值产生一个分支 2. 将每个分支递归使用其他属性进行划分,仅使用真正到达这个分支的样本 3. 如果在一个节点上的所有样本都有相同的类别,即停止该部分树的扩展基本问题 1. 选择属性的顺序 ID原创 2013-08-26 18:03:41 · 2353 阅读 · 0 评论 -
数据挖掘笔记(6)——挖掘软件、测试数据
挖掘软件:软件介绍 数据挖掘:SPSS 数据统计: SPSS(简单易用,常用算法), SAS (入手有点困难,可编程) STATA SVM(支持向量机)软件Weka软件: 实验室使用,非商用 参考网站: www。chinakdd.com www.wekacn.org Explorer: 算法原创 2013-08-26 18:07:31 · 1222 阅读 · 0 评论 -
数据挖掘笔记(5)——数据处理、模型评估、可视化、十大经典算法
可视化目标: 利用人类的视觉从数据中提取信息 对复杂数据集提供概览 标识数据中的结构、模式、趋势、异常和联系 分类: 科学可视化 虚拟现实 信息可视化举例: 雷达图:描述几个物体的多维属性(也可实现每个属性和理想属性的对比); x1yn原创 2013-08-26 18:06:32 · 6325 阅读 · 0 评论 -
内存异常的解决之道
类型 java.lang.OutOfMemoryError: PermGen space (经常出现)是说JVM里的Perm内存区的异常溢出,由于JVM在默认的情况下,Perm默认为64M,而很多程序需要大量的Perm区内存,尤其使用到像Spring等框架的时候,由于需要使用到动态生成类,而这些类不能被GC自动释放,所以导致OutOfMemoryError: PermGen s原创 2012-11-02 16:10:14 · 633 阅读 · 0 评论 -
数据挖掘笔记(3)——聚类、离群点分析
聚类基本概念聚类: 将对象分成相似的类特征: 不考虑数据的类标号,而是通过聚类产生新类标号评价: 最大化类内相似性(similarity),最小化类间相似性。相似性需要定义,作为聚类的标准数据挖掘的要求 可解释性 发现任意形状的聚类 处理不同类型属性的能力原创 2013-08-26 18:04:51 · 14095 阅读 · 0 评论 -
CXF的web service 学习笔记
规范 规范只是接口,如JAX-WS和JAX-RS有CXF具体实现,有三种规范:JAXM&SAAJ(暴露了更多细节),JAX-WS和JAX-RS(rest风格的服务规范)。 JAX-WS(JAX-RPC): 底层使用JAXB,JAX-RPC已被JAX-WS替换,位于javax.xml.ws.* 提供api操作web服务。 WS-MetaData:是JAX-WS的依赖规范,位原创 2014-07-25 10:38:55 · 14796 阅读 · 0 评论 -
Spring in action 笔记
基本特性 AOP, 远程调用 , 数据库封装, Security, DI, JavaMS ,定时服务 基本bean装配 作用: 容器负责将协作组件的引用给于多个组件 applicationContext: 国际化支持、载入资源的通用方案、向注册为监听器的bean发送事件, 有ClassPathXmlApplicationContext, FileSystemXmlApplicatio原创 2014-07-29 09:54:44 · 691 阅读 · 0 评论 -
apache common book 笔记
第一章基本对象操作1.4自动生成 toStringReflectionToStringBuilder.toString(this) 自动输出各属性的valueToStringStyle:指定toStrig的格式1.6构建hashCodeHashcodeBuilder:使用两素数作为起始,使用append增加hash的属性,如果属性值相同,则hash值相同1.7 实现co原创 2014-08-27 10:43:26 · 2314 阅读 · 0 评论 -
正则表达式——NotPad++
1. 行合并 搜索串: ([a-z]) \n([a-z]) # \n 表示回车符号 替换串: \1 \2 # \1\2中间有一个空格#************************************************************************************************##转载 2015-01-22 15:11:31 · 1563 阅读 · 0 评论 -
事务和锁
基本概念:statement: 一个SQL语句。session: 一个由ORACLE用户产生的连接,一个用户可以产生多个SESSION ,但相互之间是独立的。transaction:所有的改变都可以划分到transaction里,一个transaction包含一个或多个SQL。当一个SESSION建立的时候就是一个TRANSACTION开始的时刻,此后transaction的开始和结束原创 2016-12-27 17:46:07 · 287 阅读 · 0 评论 -
Google、亚马逊、微软 、阿里巴巴开源软件一览
Google,亚马逊,微软,和阿里巴巴都是体量最大的几个互联网公司,也都是作为云厂商的几个大玩家。 在这几家技术公司的合力推动之下,云计算的时代真正来到了我们身边。优秀的技术公司不会缺少自己的技术思考,这些思考有些深藏在云端,我们难以窥见,但不少也会凝结成开源软件这种最能体现互联网技术创新的人类文明成果,推动整个行业的进步。下面就让我们一起观察这几家公司的重点开源项目,来尝试一探行业未来转载 2017-04-30 19:30:21 · 1390 阅读 · 0 评论 -
java多线程(一)——简单介绍
基本概念 Thread.currentThread()获取当前线程,函数start end sleep(占用处理器,休眠当前线程) 当所有非守护线程停止时,守护线程自动停止 线程优先级越高,得以运行的机会就越大, max是10 阻塞不能被中断:从inputstream读取一个字节; 等待synchronized必须的锁 类的每个对象都有自己的锁,当类中有 sync原创 2014-06-05 19:15:39 · 800 阅读 · 0 评论 -
java多线程(二)——concurrent库
简单介绍 Util.concurrent包括互斥、信号量、集合类、工作队列、线程池实现 就算我们不主动使用线程,很多功能隐含有线程的实现:定时、Servlet、RMI、JSP 线程安全 多线程环境下,如何保证对变量的正确get和set,在JDK1.3之前只能使用synchronized 集合 集合是线程安全的重灾区,因为其除了get和set,还有iterator迭代、删除和判空原创 2014-06-05 19:19:57 · 1095 阅读 · 0 评论 -
数据挖掘笔记(7)——应用
数据流挖掘 场景: 网络安全, 骚扰短信等, 金融市场,视频流挖掘 特点: 高速到达, 连续不断的 , 计算一个精确结果不可能(时间要求高) 模型: 收银机模型 十字转门模型 算法:VFDT算法; fVFDT UFFT(超快速森林算法)CRM中的应用 客户分类 : 分类和聚类 交叉销售: 关联规则(买完这个还想买什么)原创 2013-08-26 18:08:51 · 942 阅读 · 0 评论 -
web service 介绍
Web service从表面上看,Web service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web来调用这个应用程序。服务采用WSDL (xml格式)进行描述服务使用消息(xml定义)来通信服务采用UDDI(universal description definition andintegration)进行定义、登记原创 2013-11-27 12:40:35 · 608 阅读 · 0 评论 -
SOA 介绍
概念面向服务的体系结构(Service-OrientedArchitecture,SOA)是一个组件模型,通过使用和组装构建模块来概念化、设计和构建应用程序。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言, 通过使用基于 XML 的语言(称为 Web 服务描述语言(Web ServicesDefinition Language,WSDL))来描述接口。S原创 2013-11-27 12:55:37 · 832 阅读 · 0 评论 -
xml rpc 相关学习
什么是XML_RPC 一个远程过程调用(远端程序呼叫)(remote procedure call,RPC)的分布式计算协议,通过XML将调用函数封装,并使用HTTP协议作为传送机制。有用特点压缩: 支持对传递的参数和返回值进行压缩Streaming Mode 以流的方式传输数据,适合大数据量和快速传输Handler创建原创 2012-09-14 12:59:38 · 1762 阅读 · 0 评论 -
语义网 相关
语义网简单介绍 将检索到的信息解释含义和提取有用的信息,要求内容是可以被机器所理解的。一种方法就是用一种新的方法描述信息,也就是语义网。意义 知识管理:根据含义用概念空间组织知识; 跨文档的问答功能;规定信息的权限。 电子商务:提取价格和补充信息; 企业间信息交换。xml必须要求双方对使用的词汇表达成了共识。 个人代理: 机械公敌中的原创 2014-04-21 10:39:28 · 897 阅读 · 1 评论 -
LOG4J简介
第1章. Log4j 的优点 Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。 log4j的好处在于: 1) 通过修改配置文件,就可以决定log信息的目的地——控制原创 2008-01-09 13:15:00 · 597 阅读 · 0 评论 -
java6 新特性
instrumentation 开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和协助运行在 JVM 上的程序,甚至能够替换和修改某些类的定义。有了这样的功能,开发者就可以实现更为灵活的运行时虚拟机监控和 Java 类操作了,这样的特性实际上提供了一种虚拟机级别支持的 AOP 实现方式,使得开发者无需对 JDK 做任何升级和改动,就可以实现某些 AOP 的功能了。原创 2014-06-05 11:01:05 · 688 阅读 · 0 评论