- 博客(62)
- 资源 (9)
- 收藏
- 关注
原创 【数据结构】链表的原理及java实现
一:单向链表基本介绍链表是一种数据结构,和数组同级。比如,Java中我们使用的ArrayList,其实现原理是数组。而LinkedList的实现原理就是链表了。链表在进行循环遍历时效率不高,但是插入和删除时优势明显。下面对单向链表做一个介绍。单向链表是一种线性表,实际上是由节点(Node)组成的,一个链表拥有不定数量的节点。其数据在内存中存储是不连续的,它存储的数据分散在内存中,每个结点只能也只有它
2016-04-20 13:57:30
115563
41
原创 【数据结构】ArrayList原理及实现学习总结
一、ArrayList介绍ArrayList是一种线性数据结构,它的底层是用数组实现的,相当于动态数组。与Java中的数组相比,它的容量能动态增长。类似于C语言中的动态申请内存,动态增长内存。 当创建一个数组的时候,就必须确定它的大小,系统会在内存中开辟一块连续的空间,用来保存数组,因此数组容量固定且无法动态改变。ArrayList在保留数组可以快速查找的优势的基础上,弥补了数组在创建后,...
2016-04-19 18:09:27
22193
7
原创 【Spring】Spring注解注入
一.Spring组件扫描机制Spring能在Classpath下自动扫描被某些注解标识的类,并把它们放到IoC容器中,作用和使用XML配置是一样的,但是效率要高很多。 特定的组件有如下几个(不止): 1. Autowired是自动注入,自动从spring的上下文找到合适的bean来注入 2. Resource用来指定名称注入 3. Qualifier和Autowired配合使用,指定bean
2016-03-09 17:44:54
3798
原创 【Spring】Spring 依赖注入方式
这一节主要通过一个实例来展现几种注入方式的区别:有两个组件A和B,A依赖于B。假定A是一个类,且A有一个方法importantMethod使用到了B. 要使用B,类A必须先获得组件B的实例引用。若B是一个具体类,则可通过New关键字直接创建组件B的实例。但是,如果B是接口,且有多个实现,则问题就变得复杂了。我们固然可以任意选择接口B的一个实现类,但这也意味着A的可重用性大大降低了,因为无法采用B的其
2016-03-09 17:38:50
957
原创 【Spring】Spring依赖注入与控制反转理解
Spring是一个庞大的框架,封装了很多成熟的功能,能够让我们无需重复造轮子;其次,它使用IOC进行依赖管理,利用JAVA的反射机制,将实例的初始化交给Spring,Spring可以通过配置文件管理实例,我们就不用自己初始化实例啦。有人会问 “那我们可以直接使用工厂模式呀。工厂模式也可以管理实例的初始化呀,为什么一定要使用Spring呢?” 这是因为IOC是通过反射机制来实现的。当我们的需求...
2016-03-09 17:35:26
17911
2
原创 【Spring】Spring Security 相关知识学习总结
Spring 是一个非常流行和成功的 Java 应用开发框架。Spring Security 基于 Spring 框架,提供了一套 Web 应用安全性的完整解决方案。一般来说,Web 应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分。用户认证指的是验证某个用户是否为系统中 的合法主体,也就是说用户能否访问该系统。用户认证一般要求用户提供用户名和密码。
2016-03-07 19:06:00
1655
原创 Java JPA知识的理解与总结
1. ORM映射元数据,JPA支持XML和JDK 5.0注解两种元数据的形式,元数据描述对象和表之间的映射关系,框架据此将实体对象持久化到数据库表中; 2. JPA的API,用来操作实体对象,执行CRUD操作,框架在后台替我们完成所有的事情,开发者从繁琐的JDBC和SQL代码中解脱出来。 3. 查询语言,这是持久化操作中很重要的一个方面,通过面向对象而非面向数据库的查询语言查询数据,避免程序的SQL语句紧
2016-03-07 14:36:00
24145
原创 ORM框架的学习总结
1. 什么是ORM?对象-关系映射(Object-Relational Mapping,简称ORM),面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承
2016-03-04 17:34:56
14113
原创 Java生成NO201601270001这样的流水编号
首先从数据库查询出已有的最大编号拼成NO+当前时间格式的字符串判断最大编号是否存在,最大编号中是否包含当天时间如果最大编号不存在,则直接生成第一个编号NO201601270001如果最大编号存在且包涵当天时间,则给最大编号加1,拼成编码 具体代码实现如下:public class Main { public static void main(String args[]) {
2016-01-27 09:26:20
15911
2
原创 Spring框架注解学习
注解Annotation,是一种类似注释的机制,在代码中添加注解可以在之后某时间使用这些信息。跟注释不同的是,注释是给我们看的,java虚拟机不会编译,注解也是不编译的,但是我们可以通过反射机制去读取注解中的信息。注解使用关键字@interface,继承java.lang.annotition.Annotition。 spring框架为我们提供了注解功能。 使用注解编程,主要是为了替代xm
2016-01-14 21:01:04
1575
转载 Openfire开发配置,Openfire源代码配置,OpenFire二次开发配置
Openfire开发配置,Openfire源代码配置,OpenFire二次开发配置
2016-01-14 13:39:14
861
原创 Spring的MVC框架认识
Spring的MVC框架主要由DispatcherServlet、处理器映射、处理器(控制器)、视图解析器、视图组成。 原理图 、SpringMVC接口解释
2016-01-14 13:17:03
1945
原创 git操作命令
1.$ cd d: 打开磁盘2.$ cd ltappgit 查找目录3.$ pwd 显示当前的目录4.$ git init 把这个目录变成git可以管理的仓库5.$ git add readme.txt 添加到暂存区里面去6.$ cat readme.txt 查看文件内容 7.$ git commit -m read
2016-01-14 13:12:46
658
原创 openfire服务端消息回执插件(接收方离线时的情况),判断用户的在线状态
该插件主要处理当接收方处于离线状态时,服务器端发送回执给客户端。工作原理是首先对消息进行拦截,判断消息类型为chat时,查询接收方是否在线,如果在线直接忽略,如果是离线状态,则将消息存放到离线消息列表,再对发送方进行回执。另一方面,在网络不稳定时,openfire容易出现掉包情况,原因是在客户端掉线,openfire并不能马上知道客户端已经断线。 为解决掉包问题,需要在客户端发消息时设置要求回执就行。
2016-01-14 12:21:41
4497
原创 微信公众平台Token验证
1. 首先给出测试项目的整体目录:2. CoreServlet类:当get请求的时候会执行get方法,post请求的时候会执行post方法,分别来处理不同的请求package com.zjn.servlet;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.Serv...
2015-12-16 19:31:44
11948
3
原创 Linux centOS下安装配置openfire
升级一下yum,执行下面命令#yum update在配置好java环境的基础上执行下一步 下载openFire安装包:openfire-3.10.3-1.i386.rpm用FTP工具将上传到opt目录下使用命令安装cd /opt //打开opt目录rpm -ivh openfire-3.6.2-1.i386.rpm //安装默认安装到/opt/openfire目录下在linux上
2015-12-14 21:26:28
1477
原创 linux CentOS 6.5 下安装jdk1.7, tomcat7.0环境配置
CentOS 6.5 下安装jdk1.7, tomcat7.0环境配置
2015-12-03 19:24:49
3080
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人