自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Andyの笔记

人生在勤,不索何获。

原创 Maven搭建Spring+Struts2+Hibernate项目详解

前言        这篇主要采用Maven搭建Spring+Struts2+Hibernate的整合项目,复习一下SSH框架,虽然spring提供自己的MVC框架,但是Spring也提供和其他框架的无缝整合,采用组件形式对个框架进行管理,项目实例是按照真实企业里面的开发搭建,也是web的最后一片了...

2015-03-01 13:39:34 11355 23

原创 Maven搭建SpringMVC+Hibernate项目详解

前言      今天复习一下SpringMVC+Hibernate的搭建,本来想着将Spring-Security权限控制框架也映入其中的,但是发现内容太多了,Spring-Security的就留在下一篇吧,这篇主要搭建SpringMVC4.1.4和Hibernate4.3.8,之前也打了好多Sp...

2015-02-08 11:39:31 17182 30

原创 Maven搭建SpringMVC项目详解

前言         上一次复习搭建了SpringMVC+Mybatis,这次搭建一下SpringMVC,采用的是SpringJDBC,没有采用任何其他的ORM框架,SpringMVC提供了一整套的WEB框架,所以如果想搭建纯的SpringMVC的话,而且不必映入别的任何框架,SpringMVC都...

2015-02-02 15:04:15 17388 7

原创 Maven搭建SpringMVC+Mybatis项目详解

前言          最近比较闲,复习搭建一下项目,这次主要使用Spring+SpringMVC+Mybatis。项目持久层使用Mybatis3,控制层使用SpringMVC4.1,使用Spring4.1管理控制器,数据库连接池使用druid数据源,该项数据库暂使用MySQL。 1、 数据库表...

2015-01-29 10:23:18 32584 70

原创 Redis实现分布式锁

在集群等多服务器中经常要使用到同步处理一下业务,这时普通的事务是满足不要业务需求,需要分布式锁。分布式锁的实现方式有多种,如redis实现分布式锁,zookeeper实现分布式锁等,这篇先实现redis分布式锁。 实现原理:1、通过setnx(lock_timeout)实现,如果设置了锁返回1,已...

2016-12-10 22:08:21 15691 13

原创 Nginx配置HTTPS和HTTP

HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer)安全超文本传输协议,是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即将HTTP用SSL/TLS协议进行封装,HTTPS的安全基础是SSL/TLS 1、HTTP和H...

2016-12-03 13:41:27 10618 0

原创 支付宝支付-APP支付服务端详解

支付宝APP支付服务端详解前面接了微信支付,相比微信支付,支付宝APP支付提供了支付分装类,下面将实现支付宝APP支付、订单查询、支付结果异步通知、APP支付申请参数说明,以及服务端返回APP端发起支付的签名、商户私钥、支付宝公钥的配置使用等。支付注意事项1、APP支付不能在沙箱测试、只能申请上线...

2016-11-18 13:58:57 47233 43

原创 微信支付-企业付款到个人详解

微信支付-企业付款到个人企业付款实现企业向个人付款,实现付款到用户零钱。项目实现了企业付款到个人和企业付款个人账单查询。代码包括签名实现,双向证书验证,付款功能等支付流程付款功能 企业付款到授权用户的零钱企业付款注意注意: 1、所有接口需要双向证书验证 2、需要设置接口秘钥,签名用详细参考:...

2016-11-17 19:05:26 30700 18

原创 微信支付-App支付服务端详解

微信App支付服务端详解引言主要实现app支付统一下单、异步通知、调起支付接口、支付订单查询、申请退款、查询退款功能;封装了https对发起退款的证书校验、签名、xml解析等。支付流程具体支付流程参考“微信APP”文档,文档地址APP支付:APP端点击下单—-服务端生成订单,并调起“统一下单”,返...

2016-11-17 14:45:41 13779 11

原创 Http和Https网络同步请求httpclient和异步请求async-http-client

Http和https网络请求     主要总结一下使用到的网络请求框架,一种是同步网络请求org.apache.httpcomponents的httpclient,另一种是异步网络请求com.ning的async-http-client,总结一下常用的http请求方式封装使用,如post、get、...

2016-11-09 16:26:18 10116 2

原创 Linux下安装NFS共享文件资源

在集群环境下有可能我们需要将实时共享文件,不仅可以节约本地资源而且可以实现所有服务器之间操作文件数据的共享,从而减少文件管理的麻烦以及实现共享文件。譬如,集群服务器之间上传图片、语音等文件资源。NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,...

2016-11-04 18:58:12 2187 0

原创 Java实现DFA算法对敏感词、广告词过滤功能

开发中经常要处理用户一些文字的提交,所以涉及到了敏感词过滤的功能,参考资料中DFA有穷状态机算法的实现,创建有向图。完成了对敏感词、广告词的过滤,而且效率较好,所以分享一下。 具体实现: 1、匹配大小写过滤 2、匹配全角半角过滤 3、匹配过滤停顿词过滤。 4、敏感词重复词过滤。

2016-08-31 11:47:35 14751 12

原创 Redis Cluster集群的搭建与实践

Redis Cluster集群 一、redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper等,但从redis 3.0之后版本支持redis-cluster集群,Redis-Cluster采用无中心结构,每个节点保存数据和整个集群状态,每个节点都和其他所有节点连接...

2016-05-11 00:17:08 27154 13

原创 zookeeper分布式协调服务的使用一

Zookeeper是一个高性能,分布式的应用协调服务。 提供服务: 1、集群成员的管理(Group Membership) 2、分布式锁(Locking) 3、选主(Leader Election) 4、同步(Synchronization) 5、发布/订阅(Publisher/Subsriber...

2016-04-01 15:20:38 3568 0

原创 Redis实现Mybatis的二级缓存

一、Mybatis的缓存 通大多数ORM层框架一样,Mybatis自然也提供了对一级缓存和二级缓存的支持。一下是一级缓存和二级缓存的作用于和定义。       1、一级缓存是SqlSession级别的缓存。在操作数据库时需要构造 sqlSession对象,在对象中有一个(内存区域)数据结构(...

2016-01-25 17:56:42 14390 4

原创 Redis实现分布式session功能的共享

最近项目设计集群,实现了一下session的共享功能,其原理是将session保存到分布式缓存数据库中如:redis, memcache等,然后多个服务器tomcat 每次请求都通过NoSql数据库查询,如果存在,则获取值;反之存放值。 我是通过redis来实现session的共享,其主要有一下两...

2016-01-25 17:00:50 18239 29

原创 Maven使用yuicompressor-maven-plugin打包压缩css、js文件

最近项目想使用在maven打包的时间压缩js,css文件,采用yuicompressor-maven-plugin插件进行压缩,但只是压缩减小大小,提高请求速度,并没有对js进行混淆。下面就写一下这个插件的使用。 假设项目包含如下结构 需要把项目中设计的css和js全部压缩,但是需要配...

2016-01-19 15:21:17 9421 1

原创 Mybatis使用技巧

以下就总结一下Mybatis的使用中的一些不太注意的技巧,算是Mybatis的总结笔记。 1、插入时主键返回      我们向数据库插入一条记录是,使用Mybatis的是无法返回插入的主键的,而我们需要这个刚插入的主键,可以如下返回          自增主键:使用last_insert_id()...

2015-12-12 11:26:24 3511 0

原创 Linux常用到的命令

记录一下日常用到的Linux命令,就当做日志了 1、查看Linux 端口号  netstat -apn | grep 80 2、杀死进程   kill -s 9 pid (tomcat 启动不起来有可能是远程调试端口未关闭 或者tomcat端口未关闭) 3、改变文件的权限  chmod 755...

2015-12-09 18:43:13 1449 0

原创 Linux下mysql数据库的自动备份与还原 远程备份和本地备份

Linux系统下Mysql备份还原 MySql的还原与备份 1 备份     mysqldump -u root -p shop > /home/andy/shop20150910.sql      其中:root为用户名,shop为要备份的数据库,自动会备份到/home/andy/文件目录...

2015-12-09 18:32:28 1681 0

原创 App开放接口api安全性—Token签名sign的设计与实现

前言        在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些接口需要进行身份的认证,那么这就需要用户提供一些信息,比如用户名密码等,但是为了安全起见让用户暴露的明文密码次数越少越好,我们一般在web项目中,大多数采用...

2015-09-27 17:44:55 73526 7

原创 Nginx+Tomcat负载平衡

Nginx负载均衡 最近项目要设计到并发,所以设计项目架构时考虑到用Nginx搭建Tomcat集群,再用Redis搭建分布式Session,下面将一步步分享我摸索的过程。     Nginx虽然小,但是功能方面确实非常的强大,支持反向代理,负载平衡,数据缓存,URL重写,读写分离,动静分离等方面。...

2015-08-17 16:40:05 4327 2

原创 Nginx配置文档详解

Nginx的配置文档详解,在这儿做个总结,以便以后使用的时间查看。     以下大部分自己整理,部分来自参考     #设置用户 #user  nobody; #启动进程数(一般和服务器的CPU相同) #可以使用 $ cat /proc/cpuinfo 查看内核数 worker_process...

2015-08-17 15:52:37 1637 0

原创 jQuery判断浏览器是移动端还是电脑端自动跳转

一个段小代码,同一个网站针对移动端查看和电脑端查看跳转不同的页面。 首先加载jQuery文件。 $(function(){ var MobileUA = (function() { var ua = navigator.userAgent.toLower...

2015-07-27 19:13:16 8693 0

原创 Nginx在Linux下的安装部署

一、Nginx简介           Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 服务器。Nginx作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行...

2015-07-23 12:29:06 1479 0

原创 微信支付-公众号支付H5调用支付详解

最近项目需要微信支付,然后看了下微信公众号支付,,虽然不难,但是细节还是需要注意的,用了大半天时间写了个demo,并且完整的测试了一下支付流程,下面分享一下微信公众号支付的经验。

2015-05-11 11:14:08 62357 70

原创 Eclipse调试远程服务器

Eclipse提供能调试远程服务器的功能,最近做微信开发,需要部署到远程服务器上才能和手机互调,所以配置了本地Eclipse调试远程服务器tomcat,下面做一个分享。 1、首先在tomcat的catalina文件中配置                window下配置catalin...

2015-04-19 10:12:52 3277 0

原创 Git操作的基本命令

最近项目组使用git作为版本控制工具,下面就总结一下工作中使用的git做版本的git命令 按照一般的工作流程,首先你需要在官网(https://github.com/)注册一个git账号,安装git软件。 安装成功后,新建目录,存放git项目,然后右键会出现如下:                 ...

2015-04-16 11:44:20 1428 1

原创 HashMap实现原理及源码分析

在数据结构与算法中,给我们介绍了常用的几种数据结构:数组,链表,哈希表。 数组结构:其在内存分配是一段连续的内存空间,可能会占用内存空间严重,空间复杂度很大,时间复杂度小,其优点是易于寻址,但是插入、删除困难。 链表结构:其在内存分配是一系列离散的内存空间,占用内存少,空间复杂...

2015-04-11 20:16:20 1560 1

原创 Poi读写Excel文件

Apache的Poi读写Excel比较强大,对xlsx和xls都能够支持,当然也支持更多的设置,下面是Poi的demo。 详细查看poi的api:http://poi.apache.org/spreadsheet/quick-guide.html 一、使用的包     maven的相关依赖坐标  ...

2015-04-09 12:21:09 1593 0

原创 Jxl读写Excel文件

最近要使用Excel文件的导入导出,比较了一下Jxl和poi两种方式,Jxl相对简单,但是不支持xlsx格式的(2003之上版本的),下面先写一下Jxl的demo。无论是那方式,将Excel分为 Workbook(代表Excel的整个工作空间),Sheet(代表Workbook的每一个Sheet页...

2015-04-09 12:14:41 2269 0

原创 多线程之生产者与消费者问题

生产者消费者问题(Producer-consumer problem):生产者不断地生产产品,消费者取走生产者生产的产品。生产者生产出产品后将其放到一个区域之中,消费者从这个地方去除数据。 涉及的问题:要保证生产者不会在缓冲区满时加入数据,消费者也不会在缓冲区中空时消耗数据。 ...

2015-03-20 11:51:31 1745 0

原创 Java实现单链表翻转

单链表翻转比如有如下链表:       需要按照C B A 输出,我们可以有好几种方法: package org.andy.test; import java.util.ArrayList; import java.util.List; /** * @author andy * @...

2015-03-19 17:10:32 1804 0

原创 控制层SpringMVC和Struts2的区别

我们现在流行的常用的MVC层,控制层Controller层的框架主要有Struts2和SpringMVC两个框架,分别对应着Action和Controller。那么SpringMVC和Struts的主要区别有那些呢? 一、框架机制        我们知道Struts2采用Filter实现,而S...

2015-03-18 17:06:11 4000 0

原创 spring整合SpringMVC Controller 和 Struts2 Action控制层Bean的默认作用域

Spring在整合SpringMVC 时的Controller作用域默认是单例。 Spring在整合Strut2时Action是作用域原型。     我们知道Spring在配置bean时默认是单例。那么对于的service和dao层的bean也是使用的单例模型。  我们做个测试 packag...

2015-03-03 17:38:53 4380 6

原创 Maven搭建Spring Security3.2项目详解

前言         这篇主要是采用 Maven搭建Spring+SpringMVC+Hibernate+Security整合,而Spring+SpringMVC+Hibernate已经在上一篇介绍了,在这篇将不再重复写了,主要说明一下SpringSecurit配置,权限管理,以及权限认证国际化提...

2015-02-12 18:27:51 4599 2

原创 Hibernate二级缓存以及ehcache的搭建配置

Session级别的以及缓存总是有效的,当应用保持持久化实体、修改持久化实体时,Session并不会吧这种改变flush到数据库,而是缓存在当前Session的一级缓存中,除非程序显示调用session的flush方法,或者查询关闭session时,才会把这先改变一次性的flush到底层数据库,这...

2015-02-07 20:27:36 12355 1

原创 Java类的加载顺序

一个类中有静态方法,有静态代码块,普通代码块,构造函数,普通方法,静态方法,那么它们的加载顺序是什么?如果有之类继承该类,也有如上的方法,那么加载顺序又是如何? 先加载父类的静态代码块/静态成员(父类中中都有或有多个有,按书写顺序) ------------- 加载子类的静态代码块/静态成...

2015-02-04 15:51:49 1665 0

原创 SpringMVC jdbcTemplate中queryForObject以及queryForList返回映射实体使用

使用SpringMVC搭建项目时,我打算直接使用SpringMVC的JDBC,如果引入Mybatis和Hibernate等ORM是感觉太过的麻烦,所以直接使用springframework.jdbc。SpringMVCJDBC提供了两个数据jdbc操作类,分别是:jdbcTemplate和name...

2015-01-30 18:05:13 20723 1

原创 Spring声明式事务配置的两种策略SpringAop和Bean后处理器的代理BeanNameAutoProxyCreator

Spring的事务配置有两种:1编程式事务管理配置;2声明式事务管理配置。下面介绍两种声明式事务的配置,声明式事务相比于编程式事务代码耦合更低,无序书写任何事务管理的先关代码。两种声明式事务配置策略分别是:SpringAop事务管理和Bean后处理器的代理BeanNameAutoProxyCrea...

2015-01-29 21:57:21 3621 1

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