- 博客(69)
- 资源 (7)
- 收藏
- 关注
原创 学习笔记-Spring Boot 源起-Spring AOP 编程
一、AOP面向方面编程AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向方面编程。OP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现。AOP带来了新的编程革新。 使得软件设计更加细化,代码的编写顺序不再决定其运行顺序,诞生动态组件概念,结合IOC DI模式,可以实现软件编写和运...
2018-09-03 18:21:35 244
原创 学习笔记-Spring Boot 源起-Spring 的依赖注入和Java配置
我们说 Spring Boot 是 Spring 框架对“约定优先于配置(Convention Over Configuration)”理念的最佳实践产物,一个典型的Spring Boot 应用本质上其实就是一个基于 Spring 框架的应用。本篇,将学习Spring 框架中较为经典的依赖注入和Java配置知识,并通过实践样例对知识点进行加强,以更好的理解 Spring Boot 的精髓。...
2018-08-19 16:56:23 1367
原创 学习笔记-Spring Boot 开发 RESTful Web API(二)
题记:上一篇我们讲解了Spring Boot开发RESTful API的基础知识,本篇将继续这方面的学习,通过一个样例来展示使用Spring Boot开发RESTful Web API,另外,本篇还使用MyBatis来访问数据库数据。 一、使用MyBatis1、什么是 MyBatis ?MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBa...
2018-08-12 10:50:41 1190 6
原创 学习笔记-Spring Boot 开发 RESTful Web API(一)
题记:本篇是Spring Boot 开发学习系列中基础知识学习的一部分,为 RESTful Web API 相关基础知识,为实践操作奠定理论基础。REST不是一个标准,而是一种软件应用架构风格。基于SOAP的Web服务采用RPC架构,如果说RPC是一种面向操作的架构风格,而REST则是一种面向资源的架构风格。REST是目前业界更为推崇的构建新一代Web服务(或者Web API)的架构风...
2018-08-11 10:11:06 11186
原创 学习笔记-Spring Boot-web开发使用FreeMarker模板
Spring Boot 提供了spring-boot-starter-web来为Web开发予以支持,spring-boot-starter-web为我们提供了嵌入的Tomcat以及SpringMVC的依赖,用起来很方便。本篇将采用Freemarker模板来做一个用户登录、注册以及查看用户列表的功能(不包含权限控制),来展示简单的Spring Boot 的web开发,数据库访问等等。一、项目结...
2018-07-29 13:59:29 789
原创 学习笔记-Spring Boot入门-项目结构和调试
一、Spring Boot项目目录结构Spring Boot的基础结构共三个文件:1、src/main/java 程序开发以及主程序入口;2、src/main/resources 配置文件;3、src/test/java 测试程序;如下图所示:二、Spring Boot 建议的目录结构如下图所示为Spring Boot 建议的源码目录结构:说明:1、Ap...
2018-07-21 12:24:09 331
原创 Windows环境搭建VUE前端开发环境-项目新建与调试
经过前面的两个步骤基本环境搭建完毕,接下来应该进行项目的新建和调试工作,以验证环境是否正常了。1、新建一个文件夹(我这里是:D:\work\web\vue),cd到该目录下,然后输入命令:vue init webpack vue-test (项目默认的名称)。根据引导输入参数,等待执行完毕,截图如下:此时,观察文件夹下又多了一个vue-test文件夹,这个就是vue的模版项目。2、进入项目目录,启...
2018-02-13 14:25:25 826
原创 Windows环境搭建VUE前端开发环境-安装VUE+webpack
前篇目介绍了Node.js的安装,本篇继续后续操作——安装VUE+webpack。由于许多npm的源都是在国外的地址,安装起来特别慢,所以我们这里利用淘宝的镜像服务器,然后开始后续的安装操作。1、安装淘宝镜像安装命令为:npm install -g cnpm --registry=https://registry.npm.taobao.org 之后回车等待命令......2、安装全局vue-cl...
2018-02-13 11:30:18 649
原创 Windows环境搭建VUE前端开发环境-安装NodeJS
因为前端框架依赖于NodeJS,因此Windows环境搭建VUE前端开发框架,首先需要安装Node.js。1、进入官网 https://nodejs.org/en/download/ 下载Node.js。页面如下(根据系统的实际配置选择版本,我这里选择Windows 64位二进制包)2、下载完成后,解压到相关的目录,我这里解压到 D:\Program Files\Java\node-v8.9.4-...
2018-02-13 10:50:13 792
原创 学习笔记:Android基本组件之Service
Service简介Service(服务)是一个没有用户界面的在后台运行执行耗时操作的应用组件。其他应用组件能够启动Service,并且当用户切换到另外的应用场景,Service将持续在后台运行。另外,一个组件能够绑定到一个service与之交互(IPC机制),例如,一个service可能会处理网络操作,播放音乐,操作文件I/O或者与内容提供者(content provider)交互,所有这些活
2016-01-04 22:11:55 1208
原创 学习笔记:Android基本组件之Activity
Android开发基本学习笔记记录,本文章主题为百度百科中的章节,稍有改动。Activity概述 Activity是Android组件中最基本也是最为常见用的四大组件(Activity,Service,Content Provider,Broadcast Receiver)之一。 Activity是一个应用程序组件,提供一个屏幕,可以为用户完成某项任务进行交互。 Ac
2016-01-04 12:32:28 554
原创 【服务端开发】配置tomcat服务器
开发web服务端,需要配置tomcat服务器,这是一个轻型服务器,配置非常简单。配置的前提:要安装好Java环境第一步:下载tomcat安装包直接在官网下载即可,我下载了最新安装包,tomcat8第二步:解压安装目录:解压安装包到一个目录,我这里是:D:\Program Files\apache-tomcat-8.0.26第三步:配置环境变量:配置环境变
2015-08-30 08:17:38 1710
原创 设计模式学习之设计模式原则(二):依赖倒置原则和接口隔离原则
依赖倒置原则和接口隔离原则的记录。依赖倒置原则:高层模块不应该依赖低层模块,两者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象;接口隔离原则:建立单一接口,不要建立臃肿庞大的接口;
2015-05-12 13:30:04 3581
转载 电商时代,谁是手持数据采集巴枪的终结者【转】
2014年,移动互联时代的物流装备迎来新机遇。 终端设备在智能手机的领跑下,不断推陈出新,谷歌眼镜,语音拣选,智能手环…除了在生活领域的不断发展,创新应用也已经在物流领域得到充分应用,物流终端设备将迎来一次洗牌,谁将是现有产品的终结者,我们将持续关注!一、未来谁将取代巴枪诺基亚千亿美金,被苹果和安卓颠覆了;柯达十年蒸发了99%的市值,被自己发明的数码相机颠覆了;数码产品的霸主索尼公
2014-05-19 15:10:35 2197
原创 Visual Studio 2008编译多平台切换时出现的编译问题解决记录
在工程解决方案中使用多平台时,会有些意想不到的问题发生,今天我就遇到了两个问题,一个是编译时资源重复定义的问题,另一个是预编译头文件的问题。第一 资源重复定义问题我的一个工程需要支持一个新的平台,我直接选择了这个平台,但是,我的一些配置是从另外的之前的平台复制过来的,可能是一些原因,导致好一些选项在这两个平台之间有些差异。编译时,出现如下错误提示:1>CVTRES : fata
2013-12-10 17:19:20 1943
原创 Win7 系统下配置WinCE 5.0 模拟器网络环境
最近进行WinCE平台的开发,涉及到网络连接的问题,可是我的模拟器环境却无法连接到网络,需要进行配置方可连接。 参考XP下的配置文章《wince模拟器连接activesync和wince5.0模拟器共享PC网络上网》,网址:http://antiblood.blogbus.com/logs/177340430.html。 因为Win7 系统有自带的同步工具,因此,Win7下的配
2013-11-27 12:41:00 11797 5
转载 DLL导出类避免地狱问题的完美解决方案 (转)
备注:在设计导出类时,在网上找到了这篇文章,非常的好,收藏了!网址:http://club.topsage.com/thread-497586-1-1.html DLL动态链接库是程序复用的重要方式,DLL可以导出函数,使函数被多个程序复用,DLL中的函数实现可以被修改而无需重新编译和连接使用该DLL的应用程序。作为一名面向对象的程序员,希望DLL可以导出类,以便在类的层次上实现复用。所
2013-11-20 21:53:37 4501
转载 让我生不如死的Windows CE内存泄漏【转载】
作者:IT168 潘少红责任编辑:McLaren 很多实时嵌入式设备是长时间不间断运行的,即使是少许的内存泄漏,也会积少成多,对嵌入式系统带来灾难性的影响。这几天,我在嵌入式软件项目中就饱尝到这个痛苦,让我明白到嵌入式实时系统的应用软件也会有许多内存问题,从而导致嵌入式系统的崩溃。例如非法的内存访问、各种死锁以及诸如堆栈溢出、数组越界和内存泄漏等。 Windows CE作为
2013-11-11 11:35:22 1971
原创 Visual Studio 2008 定位内存泄露简单方法
刚刚解决了一个内存泄露的问题,是个疑难问题。在网上找了各种方法都没有效果。最终找到如下方法: 首先确定自己的程序使用的是哪个C运行库: 方法是程序Propertise -> C/C++ -> Code Generation -> Runtime Library选项,若为Multi-threaded Debug(/MTd),则为静态链接,若为Multi-threaded De
2013-09-21 21:16:42 1608
原创 不稳定的排序算法(二)
快速排序(Quick sort)快速排序(Quick sort)是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。设要排序的数组是A[0]……A[N-1]
2013-08-23 16:50:47 1536
原创 不稳定的排序算法(一)
选择排序(Selection sort)选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交
2013-08-23 11:08:37 4083
原创 稳定的排序算法(二)
基数排序(radix sort)基数排序(radix sort)属于“分配式排序”(distribution sort),基数排序法又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog(r)m),其中r为所采取的基数,而m为堆数,在某些时候,
2013-08-22 17:31:07 955
原创 稳定的排序算法(一)
冒泡排序(Bubble Sort)冒泡排序(Bubble Sort,台湾译为:泡沫排序或气泡排序)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。冒泡排序对n个项目需要O(n^2)的比较次数,且
2013-08-22 10:24:18 1516
原创 读书摘录之《重构-改善既有代码的设计》简要摘录
重构的原则重构的定义:对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。也可以说:使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构。定义的扩展:第一,重构的目的是使软件更容易被理解和修改。第二,重构不会改变软件可观察的行为。是用重构技术时,需要把时间分配给两种截然不同的行为:添加新功能,以及重构。添加新功能时,不应该修改既有代
2013-08-15 10:11:09 913
原创 Visual Studio 2012使用OpenGL辅助库的问题解决方案
这几天学习OpenGL的开发,由于我使用的参考书是使用Visual Studio C++ 6.0开发的,因此,在录入样例并且编译的时候,遇到了不少问题。今天,遇到了关于辅助库的问题。 按照参考书进行样例的录入,因为辅助库貌似在Visual Studio 2012中没有支持,因此,对于辅助库的包含工作略去了,这样,就导致,在编译时出了问题。我使用了一个这样的函数 auxSolidSpher
2013-04-14 13:09:19 2300
原创 C#调用耗时函数时显示进度条浅探
最近在做一个VSS日志分析工具,使用C#进行开发,在完成了所有功能后,发现,从服务器下载VSS日志非常耗时,因为此,导致工具使用体验不好,所以,准备增加一个进度条。鉴于C#不经常使用,一下子搞个进度条貌似比较难,而且其他的开发任务也在一并进行,所以,昨天一天,并没有多大的进展。今天,是周末,正好可以利用,在查阅了大量网上资料以及实例后,我制作了几个实例,以备后来之用。使用C#显示进度条
2012-10-20 14:44:47 61603 14
原创 关于记事本[另存为]时,提示“共用对话框错误”的问题
最近的研发中,有一个应用需要打开记事本,有用户在打开的记事本中进行编辑,然后【另存为】时,发生了错误,提示“共用对话框错误”。初次看到这个问题感觉十分奇怪,以前没有遇到过,一筹莫展呀!因为应用程序中打开记事本是直接使用Window系统函数的,刚开始以为是函数调用时发生了错误,经过调查,没有问题。考虑到这个问题并不是一直出现,只有当用户没有生成文件路径时,才会发生,而当用户未设置路径时,程序会把
2012-08-06 12:28:45 2329 1
原创 ListCtrl设置单个单元格颜色的实现
近日的开发中,需要对List中某个单元格的颜色进行处理,以用来显示不同的效果,提示不同的状态,在网上找了不少资料,发现这一种是最简单的,最适合目前的需求。该文章的原址:http://hi.baidu.com/crazykay/blog/item/aa3e2b45f076773586947322.html,再次感谢作者。下面我稍微做了点修改,这里仅仅记录一下。实现这个的最简单的方法就是重载L
2012-03-11 14:00:36 7942 4
原创 容器vector含有谓词的排序查找和删除样例
题记:使用容器时,经常会使用其进行排序查找和删除,简单的sort, find, erase/remove不用多说了,关键是使用谓词时的使用比较麻烦,这里仅仅列举了个例子进行保留,以备以后可以直接拿来使用。 样例代码: COPY后编译可以直接运行(使用Visual Stud
2011-08-18 22:03:23 1244
原创 C#读写XML文档
题记:目前在制作一个工具,需要使用的XML文档,因此读取和写入文档是个十分重要的,今天进行了一下探索,在这里记录一下,以作为笔记。 C#读取XML文档使用XMLDocument对象,可以很方便的读取XML文档,C#中对XML的操作进行的封装,相比较于C++,则要方便很
2011-08-07 15:48:17 1410
转载 基本的2D图形变换&变换矩阵推导(转)
平时开发程序,免不了要对图像做各种变换处理。有的时候变换可能比较复杂,比如平移之后又旋转,旋转之后又平移,又缩放。直接用公式计算,不但复杂,而且效率低下。这时可以借助变换矩阵和矩阵乘法,将多个变换合成一个。 最后只要用一个矩阵对每个点做一次处理就可以得到想要的结果。另外,矩阵乘法
2011-07-07 20:54:15 2220
原创 读书笔记:《代码大全》之不常见数据类型
* 结构体结构体:是指使用其他类型组建的数据。通常情况下,我们希望创建类而非结构体,这样除了能使用结构体可以提供的公用数据外,还能利用类所提供的私密性和功能性。但是,有是直接操纵成块的数据会十分方便,下面列出了一些使用结构体的理由。# 用结构体来明确数据关系结构体可以把相关联的一组数据项聚集在一起。# 用结构体简化对数据块的操作可以把相关的元素组织到结构体里,然
2011-06-03 14:20:00 1607
原创 C++读取文本文件
C++读取文本文件,使用ANSI,UNICODE,UTF-8三种类型的文本文件进行了测试,附有测试源代码,以备不时之需。
2011-04-15 18:05:00 24169 1
CEDB操作的简单封装
2013-12-18
CrossChess游戏共享
2011-06-08
SMTP示例工程(Visual Studio 2008版本)
2010-11-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人