- 博客(43)
- 资源 (2)
- 收藏
- 关注
原创 ubuntu14.04 升级到 16.04
1. sudo apt update 2 . sudo apt dist-upgrade3. sudo do-release-upgrade -d
2016-12-05 11:36:00
6462
转载 二叉树后序遍历非递归实现
二叉树的先序,中序遍历的非递归遍历方法比较简单,只要借助一个栈就可以很容易实现。但其后序遍历就有些复杂了,这里借鉴下面这篇文章中的后序非递归遍历算法。http://blog.youkuaiyun.com/xingzhemoluo/article/details/40898233利用两个栈来实现后序遍历,一个栈用于存储遍历结果,另一个栈作为一个辅助栈。/*二叉树后序非递归遍历 * 借助两个栈可以
2016-07-09 20:56:09
718
原创 CSS为div添加尖角样式
先来看一下尖角效果一个div,右侧边框的上出现了一个尖角的形状。那么如何来实现这么一个效果呢?1.原理对于一个块级元素,但我们分别将元素的上下左右四个border设置成一个比较大的像素(如10px),样式设置成solid ,分别设置成不同的颜色的时候,同时将元素的width,height设置为0.这时我们将会看到四条边均呈现为三角形的形状。如图:其CSS样式为:
2016-07-09 12:06:07
29487
原创 响应式布局一
所谓响应式布局就是针对不同分辨率的设备,可以呈现出不同的布局效果。如一个网站在PC上呈现一种布局效果,在pad上呈现的是一种布局效果,而在手机上所呈现的又是另一种布局效果。这种不同分别率设备上呈现不同效果的布局方式就是响应式布局。CSS3为响应式布局提供了良好的支持,下面通过一个简单的例子来简单学习一下如何利用CSS3实现响应式布局。CSS3通过media query(媒体查询)对象来实现响应
2016-07-09 10:53:36
595
原创 CSS 元素垂直居中
1.对于固定宽高的元素居中固定宽高居中 content /** 固定宽高div居中*/.wrapper { width: 200px; height: 200px; border: 1px solid #cccccc; margin: 10px auto; position: relative;
2016-07-09 10:14:40
1120
原创 CSS 清除浮动的方法
CSS中利用float属性可以使元素脱离文档流浮动到父元素的左侧或者浮动的父元素的右侧,这时如果对元素使用浮动属性,会导致父元素不能被撑开。CSS代码:.wrapper{ width: 40em; border: 1px solid red;}.leftFloat{ width: 9em; height: 5em; background: #f
2016-06-25 22:41:00
420
原创 SpringAOP笔记
Spring AOP即面向切面编程,就是在多个业务逻辑代码段织如一段相同的代码,这段被织入 的代码被称为增强(advice),织入点成为切点(pointcut),织入方法的哪个位置成为连接点(Jointpoint)。关于AOP的一些概念问题不是我要记录的主要内容,下面主要说明记录一下AOP中我所遇到的比较细节的问题,增强织入方式和增强类型。1.通过XML配置文件的方式package com
2016-03-22 10:59:29
427
转载 Java并发编程:volatile详解
Java并发编程:volatile关键字解析http://www.cnblogs.com/dolphin0520/p/3920373.html
2015-12-03 14:44:11
331
原创 java多线程-interrupt
java中的interrupt(中断)很容易让人产生歧义,仅从字面意思上理解是如果一个Thread实例调用了interrupt方法会中断该线程。而事实并不是这样,该方法知识为我们提供了一种中断的协作机制,真正什么时候去中断线程需要我们自己去定义中断的逻辑。因为interrupt方法仅仅是为该线程设置了中断标志,并不会中断线程,我们可以利用该中断标志来中断该线程。我们一般采用两种方式中断当前线程
2015-12-02 11:20:35
370
原创 java多线程 wait与sleep的区别
java中的wait和sleep都可用于暂停当前线程的执行,执行另外一个线程。来看一个使用wait()来实现打印ABAB....的程序:package com.lql.thread2;public class Print1 implements Runnable { public int count = 10; @Override public void run() {
2015-11-24 15:26:09
637
原创 JSON数据解析
JSON数据的数据格式类似于map,详细格式在这里就详细说了。以下面这个JSON数据为例说明一下解析JSON的一种方法。{ "head": { "tip": "success", "result": 0 }, "boxs": [ { "picture": null, "b
2015-11-20 20:47:33
419
原创 java多线程 synchronized
在java多线程并发操作中,如果不加任何的同步控制,有可能会出现一些错误的情况。package com.lql.thread;public class MyTask10 implements Runnable { private int n = 10; public MyTask10() { } public void method(){ while (n > 0)
2015-11-17 19:27:36
357
原创 java多线程 学习笔记(二)——线程执行器 Executor
在JDK5中提供了 java.util.concurrent包下的Executor来管理Thread对象,从而简化了并发编程。Executor在客户端和子线程之间提供了一个中间层,由这个类的对象来管理线程的执行。ExecutorService(具有服务声明周期的Executor)知道如何构建恰当的上下文来执行Runnable对象。package com.lql.thread;import
2015-11-10 18:38:48
571
原创 Java多线程 学习笔记(一)
java多线程机制是java中十分重要的内容,在面试过程中也是被经常问到的内容。一.java使用多线程的方式1.继承Thread类package com.lql.thread;public class MyTask5 extends Thread { private static int count = 10; public synchronized void run()
2015-11-10 15:36:32
390
原创 Struts2+Spring+Hibernate整合的例子
最近学习了Struts2,Spring,Hibernate的内容。并做了一个简单的消息发送的例子,因为系统很小,所以也不好意思叫系统。虽然例子简单,但SSH整合的基本内容都包含了。就记录下来,方便以后查阅。这个是系统的基本需求。用户能够发送消息(多选用户进行群发),查看自己的收件箱(其实是看自己接收到的消息),查看发件箱(查看发送消息记录)。用户进行分组,每个分组也可以包含多个子分组。
2015-11-08 00:14:03
3428
原创 Spring集成Hibernate
1、Spring所需jar包。我是从Spring的官网上下载的Spring的全部jar包(有很多,我也不知道都是干嘛的,全部添加)。除此之外Spring还需要添加这个。2.hibernate的jar包。3.我的测试程序的目录:说明一下:model包下是实体类和对应的映射文件、dao和dao.imp分别是数据持久化的CRUD接口和方法、servic
2015-11-04 15:26:14
448
原创 java代理模式
代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式一般涉及到的角色有 抽象角色:声明真实对象和代理对象的共同接口代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口以便在任何时刻都能代替真实对象。同
2015-10-31 23:22:27
433
原创 java反射机制
在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法?答案是肯定的。这种动态获取类的信息以及动态调用对象的方法的功能来自于Java语言的反射(Reflection)机制。来通过代码来看看java反射机制的使用。package com.lql.demo;import java.lang.refl
2015-10-31 18:21:11
365
原创 java泛型笔记
我们最精彩用java泛型是在集合类中。比如List list = new ArrayList();1.不使用泛型时一个很严重的问题是会有可能出现java.lang.ClassCastException的异常。看下面一段代码:List list = new ArrayList(); list.add("123"); list.add(344); for(int i = 0 ;i <
2015-10-31 16:23:09
497
原创 hibernate关联关系笔记
hibernate中的关联关系分为多对一关联,一对一关联和多对多关联。这几种关联关系很容易弄错,索性就记录在博客里。一、多对一关联多对一是最常见的关联关系,我们以QQ中的联系人(ContactPerson)和分组(Group)为例说明。ContactPerson与Group是多对一关系。1.实体类public class ContactPerson { private in
2015-10-23 10:39:56
413
原创 Kerberos协议实现访问控制
Kerberos协议主要用于网络身份鉴别,该协议的特点是只要输入一次身份验证信息就可以访问多个服务,而且访问更加安全。其基本原理图如下所示:该协议主要分为两大步骤。第一步:Client获取TGT(ticket-grantingticket)1.客户端输入身份信息向KDC(密钥分配中心)发送请求,KDC根据客户端发送的身份信息向Ticket granting service请
2015-10-20 10:47:07
1554
原创 使用Viewpager 和 Fragment实现顶部导航
先看下效果不是特别清楚,凑活一下吧。上代码。先来看一下都需要那些文件:右边是布局文件,左边是java文件一 布局文件。activity_main.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas
2015-10-03 17:15:00
711
原创 android 仿美团支付的密码输入页
实现效果先来看布局文件activity_main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_pa
2015-10-02 17:14:15
885
原创 android 点击button 出现popupwindow的二级联动菜单
项目中遇到一个popupwindow的二级联动菜单,就花了时间搞了一下。先看一下实现效果。我用真机测试,就简单拍了一张。Demo结构:一.布局文件1.activity.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://
2015-09-21 21:37:45
7392
原创 仿QQ顶部圆角页面切换Button
实现效果,可点击切换。一.布局文件activity_main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_pa
2015-09-18 11:11:55
2041
原创 ImageLoder的简单使用
imageLoder是一个开源的第三方库,使用它我们可以很容易的实现图片的异步加载,可以到这里下载打开链接 imageLoder的jar包。下面通过代码的说明一下ImageLoader的使用。先看一下实现的效果图:上代码:ListViewActivitypackage com.example.mycsdndemo;import java.util.Lis
2015-08-27 11:47:47
697
原创 Jsoup解析Html
Jsoup是采用java编写的解析html文件的第三方库,使用Jsoup提供的API我们可以很方便的解析html文件。下面来介绍一下如何使用jsoup解析html。1.首先我们要了解一下html的dom文档结构DOM节点介绍,下面是我截取的html文件的部分,会有助于理解下面的代码2.使用jsoup我们可以解析本地文件中的html以及网络获取的html。网络获取的html居多,所以
2015-08-26 16:47:13
784
原创 android sharedPreference的用法
sharedPreference可以将一些简单的信息以xml形式保存到SD卡上,比如登陆时的用户名和密码,这样在下次登陆时,用户不必再从数据库或网络获取数据了。提升系统性能。下面简单记录一下sharedpreference的用法。package com.example.sharedpreferences;import java.util.HashMap;import java.util.
2015-08-18 09:32:54
563
原创 java 对新浪微博微博的发表时间解析
新浪微博时间的返回格式 Thu Aug 13 18:03:49 +0800 2015,Thu和+0800我也不晓得是什么,就没管这两个。我将微博的发表时间先统一格式化为20150813180349的格式,然后获取系统时间也格式化为这个形式,得到两个时间的毫秒差值,根据差值来确定时间的显示格式。虽然下面的代码是针对新浪微博的进行编写的,不过我觉得以后可能还会在其他地方用得着,索性就记录下来。上代码。
2015-08-16 16:49:30
883
原创 android 解析新浪微博json数据
从新浪微博服务器获取到了好友微博的json数据后如何去解析着实让我费了一番功夫。因为返回的json数据格式比较复杂。下面我就通过代码说明一下如何来解析新浪微博的json数据。先来看一下从服务器端返回的json数据:{ "statuses": [ { "created_at": "Thu Aug 13 18:03:49 +0800 2015",
2015-08-14 22:23:15
1431
原创 android 将数据读写到SD卡
本篇博文实现android将字符串数据保存到SD卡上以及从SD读数据返回。上代码:package com.example.android_file2;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundExcep
2015-08-13 17:55:50
613
原创 将activity铺满整个屏幕(去掉title以及状态栏)
实现这样的效果只需在这个Activity中onCreate()添加一下两句代码 requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.
2015-08-11 15:20:01
1262
原创 android ContentProvider的使用
contentprovider是android四大组件之一,他可以使另外一个应用访问本应用中的数据,例如通过内容提供者我们可以在自己的应用中访问通讯录中的数据。下面就通过代码说明如何使用内容提供者。1.创建一个数据库。package com.example.android_asynctask.database;import android.content.Context;impo
2015-08-11 08:36:15
466
原创 新浪微博OAuth2.0授权
最近学习新浪微博的开发。之前没有使用第三方API开发的经验,多方查阅之后得知要想调用新浪微博官方API首先要进行对自己的应用进行OAuth授权。我对OAuth的理解也不是特别深刻,OAuth是一个为 用户,用户信息存储服务器以及第三方应用程序之间所提供 的更加安全可靠地数据使用协议。其主要为了解决第三方应用程序访问用户存储在服务器上的数据时用户名密码的可能出现泄漏的问题,OAuth协议的出现,使得
2015-08-10 16:23:12
1075
原创 android animation的简单使用
今天学习了animation的部分内容。包括了四种动画效果,分别是AlphaAnimation(透明度渐变),scaleAnimation(大小渐变),translateAnimation(位置渐变),rotateAnimation(旋转动画)。animation定义有两种方法,一种是在XML文件中定义,另一种是在java代码中定义。通过点击按钮实现各种animation效果。acti
2015-08-08 14:16:01
471
原创 在使用Android-PullToRefresh前遇到的问题
今天在学习使用ListView下拉刷新时,遇到了一些问题,也是花了三个小时才搞定。把我遇到的问题分享出来,让后来者少走弯路。1.如何使用Android-PullToRefresh首相我们要去https://github.com/chrisbanes/Android-PullToRefresh下载解压后将library文件夹导入到eclipse中。这里要特别注意一定要勾选红色
2015-08-04 22:48:33
523
原创 java List在arrayList()括号里初始化List
通常我们采用的是List list = new ArrayList(); list.add("abc"); list.add("def");这种方式对list进行初始化。其实我们还可以采用这样的方式进行初始化List list = new ArrayList(Arrays.asList("abc","def"));的方式进行。
2015-07-31 21:23:15
4169
原创 android actionbar的简单使用
先来看效果图图上的黑色部分是actionbar的内容。1.如何去掉actionbar中的应用图标和应用名称。protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // requestWindowFeature(Window.FEATURE_NO
2015-07-31 16:00:14
589
原创 android fragment中使用ContextMenu
在fragment中使用ContextMenu和在Activity中使用的步骤是一样的。1.在layout--》menu文件夹下的.xml文件中定义菜单选项。<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"
2015-07-31 12:47:32
2639
原创 android 屏幕旋转 activity中多个fragment重叠
在activity中使用fragment时,屏幕旋转时activity会被销毁重新创建。这是会再次创建一个新的fragment,使多个fragment重叠。这时我们只需要在AndroidManifest.xml文件中的activity配置中加一个 android:configChanges="orientation|screenSize"的配置项,然后在代码activity中的onCreate方法
2015-07-31 08:45:19
1450
struts2+spring+hibernate的例子
2015-11-08
Spring集成Hibernate所需jar包
2015-11-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人