
【java】
文章平均质量分 81
莫川
阿里巴巴集团高级无线开发专家
展开
-
C++服务器与java进行socket通信案例
注:本代码版权所有!!!转载时请声明源地址:http://blog.youkuaiyun.com/nuptboyzhb/article/details/8047619你可以学习,分享,修改,教学等。但是不得用于商业目的。目前已经发现互联网上大量与本文完全相同的文章,但是却把作者信息删除的干干净净,并且据为己有,打上某培训机构的广告!实属可恶!最新消息:项目成品连接:http://blog.csdn.n原创 2012-10-08 12:03:12 · 33427 阅读 · 50 评论 -
Java反射那点事(一)
简介JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的方法;原创 2013-11-14 22:05:52 · 1637 阅读 · 0 评论 -
SSH框架系列:Spring读取配置文件以及获取Spring注入的Bean
1.简介在SSH框架下,假设我们将配置文件放在项目的src/datasource.properties路径下,Spring的配置文件也是src/applicationContext.xml路径下,那么我们可以借助Spring的property-placeholder读取配置文件,然后注入Bean中。我们在程序中,可以根据Bean的Id,获取注入的值。这样我们就可以借助Spring来读取配置文件原创 2013-12-09 16:29:28 · 5006 阅读 · 0 评论 -
SSH框架系列:Spring配置多个数据源
1.问题的引入 对于普通的SSH框架而言,一般配置一个数据源,一个SessionFactory,一个事务管理和对应的ProxyCreate。那么当项目需要操作多个数据库时,如何配置呢?方案1配置2个数据源,2个对应的SessionFactory,2个事务等。Spring的配置如下:<beans xmlns="http://www.springframework.o原创 2013-12-09 16:59:55 · 7152 阅读 · 0 评论 -
SSH框架系列:Spring AOP应用记录日志Demo
1.简介Spring 中的AOP为Aspect Oriented Programming的缩写,面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。以下是Spring AOP的小例子源代码:https://github.com/nuptboyzhb/SpringAOPDemo2.例子简介2.1切面aspect:Logging.java/* * $fi原创 2013-12-10 18:53:16 · 4599 阅读 · 0 评论 -
数据库同步和使用JSONObject让Java Bean“原地满状态复活”
简介我为什么写这样一个简单的问题呢?首先介绍一下项目背景。最近需要做一个数据库同步的工作,也就是一个Web程序有两个数据库,一个是它自身的本地数据库,另外一个是远程的数据库。当我们对访问web项目,对其本地数据库进行增删改的时候,也要同时对远程数据库进行增删改。我们的思路是:我们首先在Spring的配置文件中,注入两个Dao对象,然后在service层进行增删改的时候,会在BaseDao中先调原创 2013-11-28 21:04:02 · 2703 阅读 · 0 评论 -
java与MySQL数据库的连接
java与MySQL数据库的连接1.数据库的安装和建立参见上一篇博客中的第1,2步骤。(http://blog.youkuaiyun.com/nuptboyzhb/article/details/8043091)2.Eclipse的配置。导入包mysql-connector-java-5.0.5-bin.jar3.java代码的编写[java code]/* *@原创 2012-10-06 15:14:53 · 8739 阅读 · 6 评论 -
Java SSH框架系列:用户登录模块的设计与实现思路
1.简介用户登录模块,指的是根据用户输入的用户名和密码,对用户的身份进行验证等。如果用户没有登录,用户就无法访问其他的一些jsp页面,甚至是action都不能访问。二、简单设计及实现本程序是基于Java的SSH框架进行的。1.数据库设计我们应该设计一个用户表,其Userinfo表,对应的SQL语句为(Oracle数据库):create table userinfo(原创 2014-01-19 16:14:54 · 18014 阅读 · 4 评论 -
Java:JVM参数设置
参考博客:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html原创 2014-06-01 22:07:30 · 2402 阅读 · 0 评论 -
Java线程同步问题:设备独占
首先做个宣传:2013年度博客之星,希望大家为我投宝贵的一票:http://vote.blog.youkuaiyun.com/blogstaritem/blogstar2013/NUPTboyZHB简介应用场景:如果有一设备,同一时间只能有一个线程访问,并且每次访问都需要等待较长时间来获取设备返回的数据。如果使用排队机制,当大量线程同时访问时,就会出现排队过久的情况。当然,如果原创 2013-12-17 19:50:09 · 2001 阅读 · 0 评论 -
Java线程中interrupt那点事
1.先看一下例子程序:import java.io.IOException;import java.net.ServerSocket;import javax.rmi.CORBA.Tie;/* *@author: ZhengHaibo *web: http://blog.youkuaiyun.com/nuptboyzhb *mail: zhb931706659@126.c原创 2014-03-19 10:53:58 · 2096 阅读 · 0 评论 -
Eclipse+Java+OpenCV246人脸检测
1.环境搭建:见上一篇博客2.编写DetectFaceDemo.java,代码如下:package com.njupt.zhb.test;import org.opencv.core.Core;import org.opencv.core.Mat;import org.opencv.core.MatOfRect;import org.opencv.core.Point;impor原创 2013-08-16 21:44:53 · 76624 阅读 · 51 评论 -
JavaWeb:SSH项目在Sinaapp上的部署及域名的绑定
1. 首先在SAE中创建一个新应用创建应用时,需要我们填写二级域名,比如XXXXXX。在“开发语言”一栏中,选择Java,然后选择对应的JVM级别。2.查看应用信息我们可以在“应用首页”查看当前应用的配置,如下图:图1 应用的信息其中,我们一定要注意,这里面的Access Key和Secret Key这两项,访问MySQL的时候,它们分别是用户名和密码3.管理MySQL在服务管理项,选择MySQL原创 2015-01-11 14:26:54 · 3083 阅读 · 0 评论 -
Java:使用HttpClient进行POST和GET请求以及文件上传和下载
1.HttpClient大家可以先看一下HttpClient的介绍,这篇博文写的还算不错:http://blog.youkuaiyun.com/wangpeng047/article/details/19624529当然,详细的文档,你可以去官方网站查看和下载:http://hc.apache.org/httpclient-3.x/2.本博客简单介绍一下POST和GET以及文件下载的应用。代码如下:packa原创 2015-01-14 23:30:10 · 44684 阅读 · 8 评论 -
JCodeModel使用Demo
CodeModelDemoA demo of JCodeModelCodeModel代码生成常用类在 CodeModel中,常用的类有JCodeModel、JDefinedClass、JMethod、JBlock、JFieldVar、JVar、JType、JExpr 等。JCodeModelJCodeModel 类是生成 Java 代码的根。通过它生成JDefinedClass类,然后再生成构造方法原创 2016-03-30 17:55:05 · 3681 阅读 · 0 评论 -
Java自定义AnnotationProcessor处理自己的Annotation
Java使用Annotation Processor获取代码中的Annotation使用Java的Annotation Processing Tool (apt)可以在编译期获取Java代码文件中的Annotation。项目源码:https://github.com/nuptboyzhb/CustomAnnotationProcessorAnnotation的定义如下,定义了一个MyMethodA原创 2016-03-30 19:09:28 · 17783 阅读 · 2 评论 -
java观察者模式举例
简介观察者模式(有时又被称为发布-订阅Subscribe>模式、模型-视图View>模式、源-收听者Listener>模式或从属者模式)是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来实现。此种模式通常被用来实作事件处理系统。我一向都是例子驱动学习,一下简单的举一个例子。例子的逻原创 2013-11-13 22:24:17 · 2150 阅读 · 0 评论 -
MyEclipse Hibernate逆向工程的使用
简介MyEclipse自带很多非常实用的工具,本次将介绍Hibernate工具的使用。1.首先打开MyEclipse的Hibernate视图2.然后在左上角的DB Browser视图中,右键,新建数据库连接驱动,如:下图是连接MySQL数据库的示例3.为Java Web项目添加MyEclipse的Hibernate兼容项4.按如下步骤一步一步往下走(1)原创 2013-11-25 21:25:47 · 4500 阅读 · 0 评论 -
Java设计模式之Iterator模式
所谓Iterator模式,即是Iterator为不同的容器提供一个统一的访问方式。本文以java中的容器为例,模拟Iterator的原理。参考:马士兵 Java设计模式 Iterator1.首先定义一个容器Collection接口.package com.njupt.zhb.learn.iterator;public interface Collection { void add原创 2013-07-15 10:58:59 · 2388 阅读 · 0 评论 -
有关《查找两个List中的不同元素》的问题解答与编程实践
有关《查找两个List中的不同元素》的问题解答与编程实践 郑海波 2013-07-08问题:有List list1和List list2,两个集合各有上万个元素,怎样查找两个集合中不同的元素呢?问题分析:由于每个list中都有上万个元素,如果用简单的遍历查找算法,那么至少需要10000*10000次判断比较。显然,这样做的效率极低。那么有没有比较好的方案呢?原创 2013-07-15 10:16:18 · 4816 阅读 · 0 评论 -
利用JDOM解析xml文件
利用JDOM解析xml文件JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。JDOM直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和DOM的功能有效地结合起来。JDOM的官方地址:http://www.jdom.org/参考:马士兵 设计模式 工厂模式1.首先新建一个原创 2013-07-15 14:17:25 · 2428 阅读 · 0 评论 -
struts2与前台交互时序图
大致总结一下,总结的比较粗略和肤浅!1.js取得jsp或html标签中的值2.js经过简单处理,向struts2的action中的method传递参数值,传递方式为: url:actionName?param1=XX¶m2=XXX&...3.传递过程中,首先去struts.xml配置文件中查找ActionName对于的类及其方法,然后执行该方法,在执行该方法之前,原创 2013-08-20 21:54:12 · 2629 阅读 · 0 评论 -
Eclipse+Java+OpenCV246环境搭建和代码测试
1.首先下载OpenCV2.4.6,下载的时候,选择windows版的。然后安装2.其实安装的过程就是解压的过程,并没有什么安装向导之类的,安装完成后,我们最关心的是这个目录:opencv\build\java 如下图所示注意:opencv-246.jar是需要在opencv的java类库,但是,真正的实现是opencv_java246.dll(X86和X64之分,关键看你的计算机原创 2013-08-16 20:53:28 · 9287 阅读 · 1 评论 -
Lucene全文检索之HelloWorld
Lucene全文检索之HelloWorld1.下载Lucene4.4 然后解压2.新建一个Java项目,名称为HelloLucene3.新建一个lib文件夹,将需要的jar文件复制到lib中,本项目所需要的jar文件如下:[图]然后将这些jar文件添加到buildPath中3.新建一个包com.njupt.zhb,新建一个类:HelloLucene.java,代原创 2013-08-18 21:35:13 · 3457 阅读 · 1 评论 -
Lucene之删除索引
1.前言之前的博客《Lucene全文检索之HelloWorld》已经简单介绍了Lucene的索引生成和检索。本文着重介绍Lucene的索引删除。2.应用场景:索引建立完成后,因为有些原因,被索引的文件已经删除。此时,索引仍然存在,为了不产生“虚假检索结果”,需要将失效的索引删除3.HelloLucene类(重点关注deleteIndexByQuery方法)package com原创 2013-08-30 22:22:48 · 2589 阅读 · 0 评论 -
Jquery+ajax+json+servlet原理和Demo
Jquery+ajax+json+servlet原理和Demo大致过程:用户时间点击,触发js,设置$.ajax,开始请求。服务器响应,获取ajax传递的值,然后处理。以JSON格式返回给ajax。ajax在sucess对应的函数中将返回的json数据进行解析,然后输出到jsp页面。1.前台index.jsp java" import="java.util.*" p原创 2013-09-01 20:49:11 · 15326 阅读 · 6 评论 -
Jquery progressbar通过Ajax请求获取后台进度演示
1.简介本文主要演示Jquery progressbar的进度条功能。js通过ajax请求向后台实时获取当前的进度值。后台将进度值存储在cookie中,每次请求后,将进度条的值增2个。以此演示进度条的实时显示功能。2.前台index.jspjsp代码如下<%String path = request.getContextPath();String basePath =原创 2013-09-13 17:20:21 · 13159 阅读 · 4 评论 -
Jquery zTree演示程序Demo总结
前言:最近的项目需要用到zTree树,于是想将zTree树总结一下。前段时间一直没有时间总结,趁国庆还有这么点时间,总结一下。zTree树控件是基于Jquery的,官方提供了很好的API文档和Demo用户可以从如下地址下载:http://www.ztree.me/hunter/zTree.html1.帮助文档和APIzTree的帮助文档和API都是非常全面的,只是有些Demo的原创 2013-10-01 21:45:49 · 18496 阅读 · 3 评论 -
Jquery DataGrid演示程序 分页 java
前言最近的项目一直用到DataGrid组件,于是就抽时间整理一下思路。DataGrid主要是设置url和分页,通过在前台DataGrid的属性中添加pagination:true属性,就会在表格末尾显示分页工具栏。后台添加一个int page和int rows保存第几页和每页的数量即可。当然,url返回的是JSON格式的数据。一下是我写的一个Demo页面(index.jsp)<%原创 2013-10-11 21:57:31 · 3572 阅读 · 0 评论 -
Jquery ComboTree树的绑定-数据源JSON格式-操作
前言ComboTree也是表单中一种常见组件,如:有些输入框,限定只能选取一些特征的数据,而且这些数据时需要动态从数据库中读取的。我这里就演示一下这个过程(数据库就不涉及了,后台能产生Combotree所需的Json格式数据就行了)。以下是我写的一个Demo。前台的操作有:1.绑定树的url,设置是否多选 2.获取用户所选的值 3.设置特定的值 4.Disable和Enable页面原创 2013-10-14 20:13:45 · 7756 阅读 · 1 评论 -
Top-N算法的实现(Java版)
简介在搜索引擎中,如Lucene,搜索的结果是最相似 的前N条,那么如何从一个无序的数组中得到前N个最大(或最小)的值呢?以下是我写的一个Top-N的演示程序。主要用到的数据结构是TreeSet,TreeSet会自动化实现插入排序,前提是该类要实现Comparable接口。实体类/* * $filename: Student.java,v $ * $Date: 2013-10-原创 2013-10-23 22:27:00 · 5432 阅读 · 0 评论 -
Java反射那点事(二)动态代理
代理四要素:1.被代理对象实现的接口2.代理逻辑类,须实现InvocationHandler接口,在invoke方法中实现代理的逻辑3.产生代理对象:Proxy.newProxyInstance(MyInterface.class.getClassLoader(),new Class[] { MyInterface.class }, handler);4.调用代理对象的方法代理原创 2013-11-16 21:31:04 · 1744 阅读 · 0 评论 -
Java工作队列和线程池
背景 最近的需要做一个与设备通信的web项目。当然,我们需要写好与设备之间的通信协议(socket)。大致的时序逻辑时:当用户用浏览器点击页面某一控件后,它就向后台发送一个post请求,后台解析前台发送的参数,然后封装成相应的帧格式,然后与设备进行通信,设备接到指令后,完成相应的功能,然后将数据信息返回给后台服务器,后台服务器将这些返回的数据组织好,一方面返回给前台页面,一方面将数据存储到原创 2013-11-21 20:29:05 · 3833 阅读 · 3 评论 -
用Java写脚本,常用的一些方法
用Java写脚本,常用的一些方法平时用的一些小方法,总结之1.运行一个可执行程序比如,你如果想运行如下命令 C://test//aapt.exe -f params1 -M params2try { ProcessBuilder pb = new ProcessBuilder("C://test//aapt.exe","-f","params1","-M","params2");原创 2016-04-15 19:22:40 · 41028 阅读 · 3 评论