自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (10)
  • 收藏
  • 关注

转载 svn无法使用命令行

解决方法;windows安装svn的时候默认是不安装 svn command line这个东西的,重新打开svn的安装exe,选择modify,将“command line client tools”允许安装,然后next继续安装。转:http://blog.csdn.net/mitea90/article/details/19075673

2014-12-01 10:37:00 1463

原创 Spring高级事务管理难点剖析

整理网上相关文档,主要介绍Spring事务的管理,多种持久方法混合使用,以及各种注意事项

2014-08-23 18:45:07 1009

原创 nodejs入门——搭建一个聊天室应用

nodejs越来越火了,网上经常能看到nodejs应用,如果不会运行个nodejs,感觉马上就要落伍了。之前了解过nodejs,最大特点是函数时编程,无阻塞,适用于高并发,通过js可以写服务器。正好看到一个nodejs的开源聊天室,就从搭建这个聊天室开始入门学习。

2014-08-06 21:59:28 2467

转载 AOP那些事儿

原文地址:http://my.oschina.net/huangyong/blog/161338

2014-07-02 21:14:22 1543

转载 Web Service 那点事儿 —— 使用 CXF 开发 SOAP 服务

选框架犹如选媳妇,选来选去,最后我还是选了“丑媳妇(CXF)”,为什么是它?因为 CXF 是 Apache 旗下的一款非常优秀的 WS 开源框架,具备轻量级的特性,而且能无缝整合到 Spring 中。其实 CXF 是两个开源框架的整合,它们分别是:Celtix 与 XFire,前者是一款 ESB 框架,后者是一款 WS 框架。话说早在 2007 年 5 月,当 XFire 发展到了它的

2014-07-02 21:06:51 1373 1

转载 Web Service 那点事儿-基本概念和JDK发布调用

原文地址:http://my.oschina.net/huangyong/blog/286155

2014-07-02 21:04:47 788

原创 数据库逆向框架代码生成工具:MyBatis Generator的使用

通过MyBatis Generator可逆向生成持久层的代码,与Spring实现无缝融合,本文是基于Intellij+Maven实现。

2014-06-30 09:33:25 2947

原创 Log4j的配置和使用

Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、邮箱等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。

2014-06-26 10:02:29 1057

原创 Intellij IDEA创建Maven Web项目

Intellij IDEA作为最好的Java IDE,创建Maven项目还是比较简单的,但是创建一个Maven Web项目还是要修改一些配置的,下面进行总结整理

2014-06-25 09:34:05 2823

原创 浅谈信息加密技术和算法

1单向散列加密    单向散列加密是指通过对不同输入长度的信息进行散列计算,得到固定长度的输出,这个散列计算过程是单向的,不可逆的。常用的单向散列算法有MD5,SHA等。    比如网站中,用户密码,一般可以进行MD5加密后保存,用户登录时,对用户输出的密码进行加密后和数据库密文进行比较,如果一致,则验证成功。   为了加强计算的安全性,可以对数据加上密钥,增加破解

2014-06-24 09:29:06 1442

转载 mybatis调用oracle存储过程

存储过程在小公司用的不多,但是如果业务比较复杂或者性能要求比较苛刻的时候存储过程就派上用场了,ibatis的前期的一些版本貌似不支持存储过程因此我选择了mybatis来做实验。1.无输入和输出参数的存储过程,我写了一个比较简单的,需要注意的是Oracle无参存储过程不能写括号[sql] view plaincopyCREATE OR 

2014-06-22 00:36:28 1188

转载 Spring Bean的生命周期

开篇先用一张老图描述下Spring中Bean容器的生命周期。 插叙一下,记得某个博文中提到:“Spring的Bean容器只管理非单例Bean的生命周期,单例Bean的生命周期不在管理范围内”,其实我认为这句话恰好说反了。首先明确一点,并非Spring容器中所有的Bean都有生命周期行为,只有接受容器管理生命周期的Bean才具有生命周期行为:而单例(Singleton)Bean接受容器管

2014-06-22 00:29:34 599

原创 Intellij+Resin环境的集成搭建

目前网上的相关资料太少了 自己只能摸索着尝试 最后在领导的帮忙下 成功实现了环境的集成 网上查到的一般都是修改resin的配置文件等等 其实完全没有必要本人之前在intellij下部署resin遇到了以下几个问题1.项目无法部署到resin服务器下2.项目部署到resin服务器下  intellij修改jsp java类 web访问不能实时更新

2013-08-27 12:16:08 6287 1

原创 verlet-js物理引擎

verlet-js是一个使用JavaScript编写的物理引擎,支持粒子系统、距离约束、角度约束等,通过verlet-js,你可以在应用中实现一些非常酷的、具备物理特性的效果,比如碰撞、滚动、滑动或弹跳。 verlet-js的一些特性如下: Simulation(模拟):包含复合实体的根对象,用于在一个场景中驱动实体的所有物理特性和动画效果Composites(复合实体):

2013-06-05 23:26:40 1203

原创 [开源]Android手机控制电脑----服务器端

首先是要有一个服务器端   开启端口监听  界面如下输入端口号  点击开启  即可实现端口的监听public void run(){ try { //创建一个DatagramSocket对象,并指定监听的端口号 DatagramSocket socket; try{ socket = new

2013-05-25 12:04:01 3444

原创 [开源]Android手机控制电脑---项目背景介绍

这个项目是  一年前  自己做的一个小项目    没做之前感觉非常酷   其实把原理弄清楚以后 就会觉得非常简单     项目背景:大二时候 老师做的软件  实现塞班手机蓝牙控制电脑的PPT 感觉非常拉风 大三寒假 自己看了android的视频 掌握了基础  然后过了几个月 参加一个比赛 需要弄一个项目 加上当时社团有个孩子  学嵌入式  实现遥控器控制电脑就想到了手机控制电脑

2013-05-24 00:17:06 5091 2

原创 PhoneGap实现跨域ajax访问的demo

相关链接 : PhoneGap   PhoneGap中国  入门教程前几天了解一下PhoneGap 觉得很方便 可以轻松实现跨手机平台 对于从事web开发的程序员来说 移动开发变得很简单回去试了下搭建第一PhoneGap    使用的是Android开发平台 由于快一年没碰android的 所以环境比较老下载的PhoneGap 2.7.0的里面的demo  im

2013-05-13 11:28:30 2092

原创 DiskFileUpload + BeanUtils 轻松实现无框架文件上传表单取值

文件上传中form表单的enctype="multipart/form-data"  为二进制文件传输在struts2中 表单取值比较简单  因为框架已经帮我们做好的表单域的取值 但是在非框架中 取值就相对麻烦了 不能通过request.getParameter(name) 去取值不过我们可以使用相关的jar去实现文件的上传和下载  比如 DiskFileUpl

2013-05-13 09:49:27 769

转载 Java解析 properties

方法一import java.io.InputStream;import java.util.Enumeration;import java.util.List;import java.util.Properties;import java.util.ResourceBundle;import org.junit.Test;/** * 获取*.properties配置文件中的

2013-03-21 14:43:23 651

转载 Oracle SQL性能优化

Oracle SQL性能优化(1)      选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersectio

2013-03-21 14:38:09 537

转载 Java MD5加密类

Java MD5加密类 直接调用类的静态方法 可进行加密package com.qianyan.utils;import java.security.*;import java.text.DateFormat;import java.util.Date;import java.util.regex.Matcher;import java.util.regex.Patte

2013-03-21 13:42:58 550

转载 CKEditor与CKFinder整合并实现文件上传功能

一.需要的资源:用到的网站,文件自己下载:a) ckeditor_3.6.2 (解压)download.cksource.com/CKEditor/CKEditor/CKEditor%203.6.2/ckeditor_3.6.2.zipb) ckeditor-java-3.6.2 (解压)download.cksource.com/CKEditor/CKEdit

2013-03-21 13:35:52 638

转载 Java解析 WORD

一、POI对Word处理1、读取Word1、读取Excel3、下载地址:http://www.apache.org/dyn/closer.cgi/poi/dev/代码实现:package com.qianyan.test; import java.io.File; import java.io.FileInputStream; imp

2013-03-21 13:24:58 1589

转载 Java解析 HTML

一、垂直搜索介绍1、垂直搜索--即需要抓去大量的网页,分析其中的数据。垂直搜索更着重于正文内容模式分离,数据调整,相关链接分析,是一种结构化分析过程。2、垂直搜索技术主要分为两个层次:模版级和网页库级3、模版级是针对网页进行模版设定或者自动生成模版的方式抽取数据,对网页的采集也是针对性的采集,适合规模比较小、信息源少且稳定的需求,优点是快速实施、成本低、灵活性强,缺点是后期

2013-03-21 13:23:46 1018 1

转载 Java解析 PDF

1、使用PDFBox处理PDF文档PDF全称Portable Document Format,是Adobe公司开发的电子文件格式。这种文件格式与操作系统平台无关,可以在Windows、Unix或Mac OS等操作系统上通用。PDF文件格式将文字、字型、格式、颜色及独立于设备和分辨率的图形图像等封装在一个文件中。如果要抽取其中的文本信息,需要根据它的文件格式来进行解析。幸好目前已经有

2013-03-21 13:22:00 3115

转载 Java文档 XML

认识XMLXML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。XML是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标

2013-03-21 13:20:32 862

转载 Lucene 分词

分词的基本原理:1、分词是用来对文本按语言特征按算法进行过滤、分组处理的一种技术。2、分词的对象是文本,而不是图像动画脚本等等。3、分词的方式就是过滤和分组。4、过滤主要把文本中那些没有实际意义的字或词过滤掉。5、分组就是按照”分词数据库“内已添加好的词,进行匹配。下面来看Lucene分词器的使用[java] view

2013-03-21 13:16:12 880

转载 Lucene 搜索二

Lucene分页搜索的实现:[java] view plaincopypackage com.qianyan.lucene;    import java.io.IOException;    import org.apache.lucene.document.Document;  import org.apache.lu

2013-03-21 13:14:18 599

转载 Lucene 搜索

Lucene的常用检索类1、IndexSercher:检索操作的核心组件,用于对IndexWriter创建的索引执行,只读的检索操作,工作模式为接受Query对象而返回ScoreDoc对象。2、Term:检索的基本单元,标示检索的字段名称和检索对象的值,如Term("title", "lucene")。即表示在title字段中搜索关键词lucene。3、Query:表示查询

2013-03-21 13:13:25 8499

转载 Lucene 索引

Lucene的核心索引类:1、IndexWriter:建立索引的核心组件。2、Directory:代表一个lucene索引项的位置。3、Analyzer:对文本内容进行分析的抽象类,具体实现中有停用词切除 、词干分析、大小写切换等功能。4、Document:可以视作文本经过处理后所对应的对象,由多个字段组成 ,如路径、标题、摘要、修改日期等等。5、Field

2013-03-21 13:09:18 632

转载 Lucene 基本概念

首先、要做一个自己的企业内部搜素引擎呢,要认识Lucene:1、Lucene的贡献者Doug Cutting是一位自身全文索引/检索专家,曾经是V-Twin搜索引擎(Apple的Copland操作系统的成就之一)的主要开发者,后在Excite担任高级系统架构设计师,目前从事于一些INTERNET底层架构的研究。他贡献出的Lucene的目标是为各种中小型应用程序加入全文检索功能。2001年年

2013-03-21 13:06:53 771

阿里巴巴Java开发手册(终极版)

对软件来说,适当的规范和标准绝不是 消灭代码内容的创造性、优雅性,而是限制过度个性化,以一种普遍认可的统一方式 一起做事,提升协作效率。代码的字里行间流淌的是软件生命中的血液,质量的提升 是尽可能少踩坑,杜绝踩重复的坑,切实提升质量意识。

2017-09-25

android手机控制电脑

android手机控制电脑 2012年4月份做的 代码当时写的不是很规范 功能基本没有问题 鼠标控制模式: 鼠标的移动 鼠标左键点击 鼠标右键点击 鼠标滑轮 文件的拖动 自定义音量键功能 键盘输入模式: 向电脑发送文字(中英) 回车 退格 以及DOS下的输入 电脑方向键的控制 WSAD模式 和 UP DOWN LEFT RIGHT 音量键可根据用户需求自定义设置功能 手柄控制模式: 横屏下 左边为控制方向 右边为操作 可自定义 左边控制方式为鼠标控制 和 键盘控制 右边 可自定义操作方式

2013-05-25

C语言拼图游戏

很详细的拼图过程,教你一步步做C拼图游戏,大量调用API函数,

2012-05-23

数据库流程画法

数据库流程图的详细话法,老师给的东西,很容易看懂,易于理解

2012-05-18

串口资料(移动开发)

很好的串口资料,可以更好地了解串口,更好的学习移动开发

2012-05-09

分页管理(操作系统分页存储管理.模拟多进程内存动态分配)

真正的模拟操作系统中 内存的分配 (分页存储管理)(操作系统模拟多进程内存分配) 连续的分配方式会形成许多碎片,虽然通过紧凑的方法将血多碎片拼接成可用的大块空间 但须付出很大的开销。如果允许将一个进程直接分散地装入到许多不相邻接的分区中,则无需紧凑。基于这一思想产生了离散分配方式。如果离散分配方式是页,则被称为分页存储管理方式 1. 目的: 内存管理是操作系统的核心内容。本设计要求用高级语言编写模拟一个简单的内存管理程序。通过本实验可以加深对常见操作系统的内存管理模块的实现方法的理解。 2. 要求 (1)设计用户程序数组、PCB、页表、内存分配表等数据结构; (2)编程模拟OS内存的动态分配过程。 (1)初始条件 用txt文件存储如下数据:内存总大小、进程数据(到达时间、结束时间、所需内存大小) (2) 运行过程 程序先读入初始txt文档,获得数据;然后根据数据的内容来模拟操作系统进行内存的分配与回收过程; 要求程序能够给出运行的中间过程和结果(最好输出到文件)。包括:某时刻进程的页表、总得内存分配情况。最好能够动态的演示此过程。

2011-12-21

分页管理(操作系统分页存储管理,模拟多进程内存动态分配)

真正的模拟操作系统中 内存的分配 (分页存储管理)(操作系统模拟多进程内存分配) 连续的分配方式会形成许多碎片,虽然通过紧凑的方法将血多碎片拼接成可用的大块空间 但须付出很大的开销。如果允许将一个进程直接分散地装入到许多不相邻接的分区中,则无需紧凑。基于这一思想产生了离散分配方式。如果离散分配方式是页,则被称为分页存储管理方式 1. 目的: 内存管理是操作系统的核心内容。本设计要求用高级语言编写模拟一个简单的内存管理程序。通过本实验可以加深对常见操作系统的内存管理模块的实现方法的理解。 2. 要求 (1)设计用户程序数组、PCB、页表、内存分配表等数据结构; (2)编程模拟OS内存的动态分配过程。 (1)初始条件 用txt文件存储如下数据:内存总大小、进程数据(到达时间、结束时间、所需内存大小) (2) 运行过程 程序先读入初始txt文档,获得数据;然后根据数据的内容来模拟操作系统进行内存的分配与回收过程; 要求程序能够给出运行的中间过程和结果(最好输出到文件)。包括:某时刻进程的页表、总得内存分配情况。最好能够动态的演示此过程。

2011-12-21

基于SpringMVC annotation 的图形验证码

基于SpringMVC annotation 的图形验证码 主要是controller的写法 实现前台验证码的显示 和刷新 验证功能相信大家都能写出来 访问 http://localhost:8080/SpringMVC_annotation_volidate/login jsp页面关键代码 function changeValidateCode(obj){ var timeNow = new Date().getTime(); obj.src="checkCode/service.do?time="+timeNow; } .. .. .. .. Controller package qianyan.mofi.controller; import java.awt.BasicStroke; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.AffineTransform; import java.awt.image.BufferedImage; import java.io.IOException; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller @RequestMapping("/checkCode") public class CheckCodeController extends HttpServlet { public CheckCodeController() { super(); } public void destroy() { super.destroy(); } public void init() throws ServletException { super.init(); } public Color getRandColor(int s, int e) { Random random = new Random(); if (s > 255) s = 255; if (e > 255) e = 255; int r = s + random.nextInt(e - s); int g = s + random.nextInt(e - s); int b = s + random.nextInt(e - s); return new Color(r, g, b); } @RequestMapping("service.do") public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 禁止缓存 response.setHeader("Pragma", "No-cache"); response.setHeader("Cache-Control", "No-cache"); response.setDateHeader("Expires", 0); // 指定生成的响应是图片 response.setContentType("image/jpeg"); int width = 200; int height = 60; BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); // 创建BufferedImage类的对象 Graphics g = image.getGraphics(); // 创建Graphics类的对象 Graphics2D g2d = (Graphics2D) g; // 通过Graphics类的对象创建一个Graphics2D类的对象 Random random = new Random(); // 实例化一个Random对象 Font mFont = new Font("华文宋体", Font.BOLD, 30); // 通过Font构造字体 g.setColor(getRandColor(200, 250)); // 改变图形的当前颜色为随机生成的颜色 g.fillRect(0, 0, width, height); // 绘制一个填色矩形 // 画一条折线 BasicStroke bs = new BasicStroke(2f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL); // 创建一个供画笔选择线条粗细的对象 g2d.setStroke(bs); // 改变线条的粗细 g.setColor(Color.DARK_GRAY); // 设置当前颜色为预定义颜色中的深灰色 int[] xPoints = new int[3]; int[] yPoints = new int[3]; for (int j = 0; j < 3; j++) { xPoints[j] = random.nextInt(width - 1); yPoints[j] = random.nextInt(height - 1); } g.drawPolyline(xPoints, yPoints, 3); // 生成并输出随机的验证文字 g.setFont(mFont); String sRand = ""; int itmp = 0; for (int i = 0; i 1.1f) scaleSize = 1f; trans.scale(scaleSize, scaleSize); g2d_word.setTransform(trans); /************************/ g.drawString(String.valueOf(ctmp), 30 * i + 40, 16); } // 将生成的验证码保存到Session中 HttpSession session = request.getSession(true); session.setAttribute("randCheckCode", sRand); g.dispose(); ImageIO.write(image, "JPEG", response.getOutputStream()); } }

2011-12-08

通讯录---C语言

C语言课程设计 通讯录 进入管理需要管理员密码 忘记管理员密码可删除system.dat文件 可再次进行设置 采用数组 没有使用链表 简单的C语言课程设计 puts("\t\t\t 欢迎进入通讯录管理系统 "); puts("\t\t********************菜单********************\n"); puts("\t\t* 【1】添加信息 *\n"); puts("\t\t* 【2】显示信息 *\n"); puts("\t\t* 【3】查询信息 *\n"); puts("\t\t* 【4】修改信息 *\n"); puts("\t\t* 【5】删除信息 *\n"); puts("\t\t* 【6】修改密码 *\n"); puts("\t\t* 【7】退出系统 *\n"); puts("\t\t********************************************\n");

2011-12-08

哈夫曼编码译码--数据结构

哈夫曼编码译码 包括默认编码 和 自定义编码 数据结构课程设计 一、题目: 哈夫曼编码/译码的设计与实现 二、目的与要求 1、目的: 通过布置具有一定难度的实际程序设计项目,使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法;使学生掌握分析问题,求解问题的方法并提高学生设计编程实现的能力。 2、要求: 基本要求: 1. 要求利用C\C++语言来完成系统的设计; 2. 突出C语言的函数特征(以多个函数实现每一个子功能)或者C++语言面向对象的编程思想; 3. 画出功能模块图; 4. 进行简单界面设计,能够实现友好的交互; 5. 具有清晰的程序流程图和数据结构的详细定义; 6. 熟练掌握C语言或者C++语言的各种操作。 创新要求: 在基本要求达到后,可进行创新设计,如系统用户功能控制,改进算法的实现,实现友好的人机交互等等 三、问题描述和求解方法: 首先根据给定的n个权值构造哈夫曼树。通过遍历此二叉树完成哈夫曼编码。 四、解题过程 1. 分析程序的功能要求,划分程序功能模块。 2. 画出系统流程图。 3. 代码的编写。定义数据结构和各个功能子函数。 4. 程序的功能调试。 5. 完成系统总结报告以及使用说明书 五、进度安排 此次课程设计时间为一周,分以下几个阶段完成: 1. 选题与搜集资料:每人选择一题,进行课程设计课题的资料搜集。 2. 分析与概要设计:根据搜集的资料,进行程序功能与数据结构分析,并选择合适的数据结构、并在此基础上进行实现程序功能的算法设计。 3. 程序设计:运用掌握C/C++语言编写程序,实现各个模块功能。 4. 调试与测试:调试程序,并记录测试情况。 5. 完成课程设计报告。 6. 验收与评分:指导教师对每个同学的开发的系统进行综合验收,并由学院考核小组进行随机抽查评分。 六、撰写课程设计报告或课程设计总结 课程设计报告要求: 课程设计报告要求规范书写,应当包括如下6个部分: 1. 问题描述 2. 基本要求 3. 系统分析与设计 4. 测试数据及结果 5. 总结 6. 附录:源程序清单 七、答辩与评分标准: 1 、作业文档: 50 分; 2 、基本功能和要求: 20 分; 2 、设计报告及使用说明书: 10 分; 3 、设置错误或者按照要求改变结果: 10 分; 4 、回答问题: 10 分。 八、参考资料 《数据结构(C语言版)》 网上相关资料(....略) printf("---------------------------------------------\n"); printf(" 哈夫曼编码和译码 \n"); printf(" 1.使用默认初始化 \n"); printf(" 2.使用自定义初始化 \n"); printf(" 3.进行哈夫曼编码 \n"); printf(" 4.进行哈夫曼译码 \n") ; printf(" 5.退出哈夫曼操作 \n"); printf(" 请输入1.2.3.4.5 \n"); printf(" ---------------------------------------------\n");

2011-12-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除