本文详细介绍了基于Spring创建一个“hello world” RESTful web service工程的步骤。 目标 构建一个service,接收如下HTTP GET请求: http://localhost:8080/greeting 并返回如下JSON格式的问候语: {'id':1,'content':'Hello, World!'} 你也可以通过指定查询...
编程语言
前言 现如今几乎大多数Java应用,例如我们耳熟能详的tomcat, struts2, netty...等等数都数不过来的软件,要满足通用性,都会提供配置文件供使用者定制功能。 甚至有一些例如Netty这样的网络框架,几乎完全就是由配置驱动,这样的软件我们也通常称之为'微内核...
Mobi Pick是一款Android风格的日期选择组件,主要利用了jQuery Mobile脚本库。Mobi Pick提供了3种不同的日期选择功能,最简单的日期选择功能是选择年月日,另外一种是可以自定义修改年月日,还有一种是可以下拉选择日期。由于Mobi Pick有着Android的风格样式...
近日,新闻爆料说谷歌正在使用一个机器学习人工智能系统“RankBrain”来对搜索结果排序。想知道它的工作原理以及如何在谷歌排序系统上运行吗?以下是我们对RankBrain的全部了解。 下面的信息来自于三个不同的地方。第一个,Bloomberg story,昨天发布了谷歌R...
前面的文章已经讲述了'随手拍'项目图像处理的技术部分,该篇文章主要是主界面的布局及屏幕滑动切换,并结合鸿洋大神的视频和郭神的第一行代码(强推两人Android博客),完成了下面的内容: (1).学习使用Include布局XML (2).通过添加适配器加载fragment (3).实现滑...
Lambda Lambda是第十一个希腊字母,大写Λ,小写λ,额,跑题了...Lambda表达式 是Java8的新特性之一: Lambda表达式 函数式接口 流API 默认方法 新的Date Time API Lambda表达式 取代了匿名类 ,取消了模板,允许用函数式风格编写代码。 由于最近接触了RxJava...
c++ 的代码包含头文件和实现文件两部分, 头文件一般是提供给别人(也叫客户)使用的, 但是一旦头文件发生改变,不管多小的变化,所有引用他的文件就必须重新编译,编译就要花时间,假如你做的工程比较大(比如二次封装chrome这类的开发),重新编译一次的时...
一个成功的男人背后,至少有一个伟大的女人;一个不成功的男人,至少有一双手。 而一个C程序,无论成功不成功,它的背后一定有一个操作系统,一个shell,一套工具链。 世界本就不公平。隐藏在显而易见的事实背后的,你若能看透,便可以站在对自己公平的那一...
我是一个Java程序员,这篇文章是关于我今年打算要做的5件事情。我相信它们能让我在Java领域更进一步,如果你和我的水平差不多,那么或许也能作为你接下来考虑的方向。1.使用NoSQL数据存储创建一个应用程序,并与Java相连 如果你还不了解NoSQL数据库,那么这是...
这是'成为GC专家系列'文章的第二篇。在第一篇理解Java垃圾回收中我们学习了几种不同的GC算法的处理过程,GC的工作方式,新生代与老年代的区别。到目前为止,你应该已经了解了JDK 7中的5种GC类型,以及每种GC对性能的影响。 在本篇中,我将介绍JVM在真实环境...
MPAndroidChart是一款基于Android的开源图表库,MPAndroidChart不仅可以在Android设备上绘制各种统计图表,而且可以对图表进行拖动和缩放操作,应用起来非常灵活。和前面介绍的AChartEngine相比,MPAndroidChart显得更为轻巧和简单,MPAndroidChart同样拥有常...
Java语言写的源程序通过Java编译器,编译成与平台无关的‘字节码程序’(.class文件,也就是0,1二进制程序),然后在OS之上的Java解释器中解释执行,而JVM是java的核心和基础,在java编译器和os平台之间的虚拟处理器。 一、JVM原理 1、JVM简介: JVM是java的...
Java程序员有许多应遵循的守则或最佳实践方式。该篇文章概述了每个开发者最应该遵循的10条守则或戒律,如果不遵循它们,将会导致灾难性后果。 1. 为代码添加注释(Add comments to your code). – 每个人都知道这一点,但不是每个人都会这么做。你有多少次...
该篇文章介绍一款Android ORM应用开发框架KJFrameForAndroid,很多时候我们也叫它KJLibrary。KJFrameForAndroid简介 KJFrameForAndroid是一款基于Android的ORM和 IOC应用开发框架,封装了很多Android开发中常用的功能,包括Android中对Bitmap的操作类库。KJF...
首先我们先提出两个问题: 什么是泛型? 为什么要使用泛型? 我们先来看看第一个问题什么是泛型。如果你对Java三大特性中的多态性理解的比较透彻的话,泛型就比较好理解了。多态性表示一个对象具备多种状态。比如说你自己,你首先是一个人,同时你在看这篇帖...
在Java中没有sizeof运算符,所以没办法知道一个对象到底占用了多大的空间,但是在分配对象的时候会有一些基本的规则,我们根据这些规则大致能判断出来对象大小。对象头 对象的头部至少有两个WORD,如果是数组的话,那么三个WORD,内容如下: 对象的HashCode...
Android PullToRefresh是一款可以再Android系统中下拉刷新的应用组件,可以很方便的让ListView拥有下拉刷新的功能。 Android PullToRefresh使用方法 界面布局代码: <!--The PullToRefreshListView replaces a standard ListView widget. --> <com....
前几日一朋友在学GO,问了我一些interface机制的问题。试着解释发现自己也不是太清楚,所以今天下午特意查了资料和阅读GO的源码(基于go1.4),整理出了此文。如果有错误的地方还望指正。 GO语言的interface是我比较喜欢的特性之一。interface与struct之间可...
PHP怎么样获取表单的POST数据呢?该篇介绍3种获取POST数据的方法,并将代码附上,希望可以帮助到你。 一、PHP获取POST数据的几种方法 方法1、最常见的方法是:$_POST['fieldname'];说明:只能接收Content-Type: application/x-www-form-urlencoded提交的数据...
有时候应用需要将数据写入到设备的外部存储上。列如,需要同其他应用或用户共享音乐、图片或者网络下载资料时,保存在外部设备的数据共享起来要比较方便。而且,外部设备通常具有更大的存储空间。 我们可以通过android.os.Environment.getExternalStorageDir...
首先追溯到Activity的启动,随便启动一个自己写的demo项目,使用DDMS进行debug标记,然后在Debug中把主线程暂停,可以看到调用栈。如下图所示: 于是我们先看android.app.ActivityThread的main()方法。 android.app.ActivityThread.main() main()方法中对一...
假设你是正在开发和维护一个包含2000个类并使用了很多框架的Java开发者。你要如何理解这些代码?在一个典型的Java企业项目小组中,大部分能够帮你的高级工程师看起来都很忙。文档也很少。你需要尽快交付成果,并向项目组证明自己的能力。你会如何处理这种状况...
关于StringBuilder,一般同学只简单记住了,字符串拼接要用StringBuilder,不要用+,也不要用StringBuffer,然后性能就是最好的了,真的吗吗吗吗? 还有些同学,还听过三句似是而非的经验: 1. Java编译优化后+和StringBuilder的效果一样; 2. StringBui...
使用过JavaMail的api发送邮件的人可能会有这样一个疑惑:本人如何知道本人调用该api发送的邮件是否成功呢?一般的开放的api给各位同行调用都会有个返回值或者状态码,来告诉各位同行执行成功与否。但是JavaMail却没有提供这样一个返回值。 所以在调用JavaMai...
准备工具 Java 1.6 For Mac OS X — 在Mac上运行Eclipse会提醒需要Java 6运行时支持库 Java 1.8 For Mac OS X — 本人开发时所用的jdk版本 Eclipse — 本人开发时所用版本为Eclipse Luna Release (4.4.0) Android Development Tools(ADT)— 安卓开发工具...