自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

甲凹I饕餮的博客

让分享成为一种习惯。

  • 博客(35)
  • 收藏
  • 关注

原创 5分钟带你看懂程序设计的七大设计原则

1.开闭原则def对扩展开放对修改关闭高大上说法抽象构建框架,用实现扩展细节Why do it ?提高软件系统的可复用性和维护性2.依赖倒置原则定义高层模块不应该依赖底层模块,二者都应该依赖其抽象抽象不应该依赖细节,细节应该依赖抽象高大上说法面向接口编程,不要面向实现编程目的减少类间耦合,提高代码可读性,降低修改程序带来的连锁反应3.单一职责原则不要存在多于一个导...

2020-04-30 10:35:36 287

原创 5分钟带你入门Ehcache与Spring整合

简单介绍Ehcache 是一个成熟的缓存框架,你可以直接使用它来管理你的缓存。Spring 提供了对缓存功能的抽象:即允许绑定不同的缓存解决方案(如Ehcache),但本身不直接提供缓存功能的实现。它支持注解方式使用缓存,非常方便。本文先通过Ehcache独立应用的范例来介绍它的基本使用方法,然后再介绍与Spring整合的方法。Ehcache是什么?EhCache 是一个纯Java的进程内...

2020-04-29 16:37:23 247

原创 5分钟带你看懂Spring中加载xml配置文件的六种方式

利用Spring去动态加载某一位置下的配置文件,总结了下Spring中加载xml配置文件的方式,我搜集到的有6种, xml是最常见的spring 应用系统配置源。Spring中的几种容器都支持使用xml装配bean,包括:XmlBeanFactory,ClassPathXmlApplicationContext,FileSystemXmlApplicationContext,XmlWebA...

2020-04-29 16:26:35 647 1

原创 5分钟带你看懂bit、byte、位、字节、汉字之间的关系

1、计算机存储信息的最小单位,称之为位(bit),音译比特,二进制的一个“0”或一个“1”叫一位。 2、计算机存储容量基本单位是字节(Byte),音译为拜特,8个二进制位组成1个字节,一个标准英文字母占一个字节位置,一个标准汉字占二个字节位置。 3、计算机存储容量大小以字节数来度量,1024进位制: 1024B=1K(千)B 1024KB=1M(兆)B 1024MB=1G(吉)B 1024G...

2018-05-11 09:40:31 1777

原创 5分钟带你看懂手机地图定位为啥老不准

首先,我们先来了解一下手机定位方式,目前主流的手机定位方式可以分为三类:GPS定位、基站定位、混合定位。 GPS定位是通过手机中GPS模块获取位置信息,精度比较高、信息全面;不仅能获取经纬度,还能包括海拔高度、方向角度等信息。 基站定位是依靠运营商的电信基站进行定位,由于不涉及到硬件消耗,所以功耗最低,通过算法和基站数据能够得到比较理想的定位精度,但基站定位精度对基站分布程度要求较高,基站密集...

2018-05-11 09:36:18 2841

原创 5分钟带你入门Android的shell命令

Android 常用adb shell 命令 adb 常用命令大全 1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器): android create avd –name 名称 –target 平台编号 4. 启动模拟器:

2017-08-29 10:47:36 420

原创 需求文档到底谁来写

有专门的产品经理,由产品经理负责(自己写或安排产品顾问/产品分析人员编写)。需求文档,一般产品写出来的需求文档,偏业务需求、目的与目标、产品组成及模块、业务流程和逻辑、界面交互等;不会涉及系统层面,如系统边界、输入输出、系统模块等。专业的产品人员,会从诉求/目的(痛点)、场景、用户过程入手,辅助调研、思考、沟通(包括团队/研发沟通),形成业务性强、逻辑性强的方案,然后形成文档,评审–修正–revie

2017-08-15 14:58:40 8795

原创 5分钟带你看懂 Mina

1.概述ApacheMINA是一个网络应用程序框架,用来帮助用户简单地开发高性能和高可扩展性的网络应用程序。它提供了一个通过Java NIO在不同的传输例如TCP/IP和UDP/IP上抽象的事件驱动的异步API。2.Mina几个重要接口:IoServiece :这个接口在一个线程上负责套接字的建立,拥有自己的 Selector,监听是否有连接被建立。 IoProcessor :这个接口在另一个线

2017-07-28 10:26:06 352

原创 5分钟带你看懂 MybatisGenerator配置详解

同学们有福了,花了一些时间,重新整理了一个最完整的Mybatis Generator(简称MBG)的最完整配置文件,带详解,再也不用去看EN的User Guide了;<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator

2017-07-18 15:02:30 276

原创 5分钟带你入门WebService 实现文件上传与下载

实际上cxf webservice 的文件上传与下载的操作与普通的file操作思路是一样的。 只不过通过了webservice接口,下面说下细节和代码实现。 如果你不清楚cxf 的 webservice 部署,那么请参照我前面的两篇文章让webservice服务跑起来。1.封装一个文件对象package com.webService; /** * 全路径:com.webService.Da

2017-07-18 14:54:28 1358

原创 5分钟带你看懂JAVA 反射常用的三种机制

1.概念 主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。 反射是java中一种强大的工具,能够使我们很方便的创建灵活的代码,这些代码可以再运行时装配,无需在组件之间进行源代码链接。但是反射使用不当会成本很高!2.作用(1)反编译 : .class 到 .java (2)通过反射机制访问java对象的属性、方

2017-07-03 13:41:53 508

原创 5分钟带你入门Quartz 与 Spring 整合

定时任务一般分为两种: 1.每隔指定时间则触发一次,在Quartz中对应的触发器为:org.springframework.scheduling.quartz.SimpleTriggerBean 2.每到指定时间则触发一次,在Quartz中对应的调度器为:org.springframework.scheduling.quartz.CronTriggerBea算了不讲这些没用的概念了,直接上代码。

2017-06-16 09:29:22 320

原创 5分钟带你入门CXF与 SpringMVC 整合

1.准备cxf的jar包如果没有的话可以访问,链接:http://pan.baidu.com/s/1pLPpruV 密码:u13r2.在web.xml中配置cxf-servlet.xml <!-- CXF和servlet整合 走一下源码就知道它会找cxf-servlet.xml文件--> <servlet> <servlet-name>cxf</servlet-name>

2017-06-16 08:59:00 993 6

转载 资深的前端开发人员的忠告

Jquery基础知识准备   学习前端需要掌握的基础知识有jquery,css。做移动端开发最好掌握CSS3,CSS3的许多新特性会让布局简单很多。Jquery可以不用每个知识点都很熟练,但是最好都了解,用的时候知道有这个东西再进行细致学习会更牢固。必须掌握的几个点 1.选择器   基础的id样式选择器是必须掌握的,这里不多说。 2.事件绑定 不推荐的写法  Bar

2017-06-13 09:54:51 318

原创 5分钟带你看懂WebService

一、创建服务端 1、创建【Web Service Project】,命名为【TheService】。 2、创建【Class】类,命名为【ServiceHello】,位于【com.web.service】包下。 3、编写供客户端调用的方法,即编译方法代码。package com.web.service;import javax.jws.WebService;import javax.xml.

2017-06-12 08:41:24 379

原创 5分钟带你看懂JAVA多线程

使用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。 先在重述下多线程涉及的一些概念:* 多线程:指的是这个程序(一个进程)运行时产生了不止一个线程* 并行:多个cpu实例或者多台机器同时执行一段处理逻辑,是真正的同时。* 并发:通过cpu调度算法,让用户看上去同时执行,实际上从cpu操作层面不是真正的同时。并发往往在场景中有公用的资源,那么针对这个

2017-06-01 13:44:48 531

原创 5分钟带你入门Jeestie开发

1.jeestie 框架的功能它已经把spring+springMVC+mybatis基础配置文件全部做好了【注解式的开发,少了很多需要手动配置的文件】,它扩展了EaCache缓存机制,切入了Shiro安全权限控制,使用了SiteMesh来统一页面,集成Activiti做流程控制等,这些都做了相应的配置,目前开发暂时不用写相关的java代码,只要去理解一下它们的原理或者它们做了些什么就行了。2.程序

2017-05-31 17:37:08 7242

原创 5分钟带你看懂Jeesite10大功能要点

jeesite内容丰富,集成了大量优秀的组件,是一个值得研究的框架。它有:1.shiro安全权限控制2.mybatis查询缓存接口扩展3.ecache分布式缓存整合4.页面资源缓存优化5.多数据源灵活切换6.mybatismapper文件动态刷新7.activiti工作流流程管理8.excel注解式导入导出9.siteMesh保持页面统一10.异常处理机制这还没完 ,还有很多等等吧。1.shiro安

2017-05-31 14:27:55 1173

原创 深入理解计算机原理1.2 --HolleWord的程序运行到底经历了什么?

鉴于有一段时间了,我觉得有必要来回顾一下电子管的有关内容: 1946年2月14日,由美国军方定制的世界上第一台电子计算机“电子数字积分计算机”(ENIAC Electronic Numerical And Calculator)在美国宾夕法尼亚大学问世了。ENIAC(中文名:埃尼阿克)是美国奥伯丁武器试验场为了满足计算弹道需要而研制成的,这台计算器使用了17840支电子管,大小为80英尺×8英尺,

2017-05-26 16:16:11 436

原创 5分钟带简单让你入门Socket

1.网络中进程之间如何通信?本地的进程间通信(IPC)有很多种方式,但总可以总结为下面的4类:* 消息传递(管道、FIFO、消息队列)* 同步(互斥量、条件变量、读写锁、文件、写记录锁、信号量)* 共享内存(匿名的和具名的)* 远程过程调用(Solaris门和Sun RPC)本地通过PID来唯一标识进程,网络层的IP唯一标识主机,传输层的“协议+端口”唯一标识应用程序(进程),这样 IP+

2017-05-25 14:06:07 808

原创 什么是shiro 4——INI配置说明

1、对象名=全限定类名相对于调用public 无参构造器创建对象 2、对象名.属性名=值相当于调用setter方法设置常量值 3、对象名.属性名=$对象引用相当于调用setter方法设置对象引用[main]提供了对根对象securityManager及其依赖的配置securityManager=org.apache.shiro.mgt.DefaultSecurityManager…………se

2017-05-25 13:56:40 553

原创 什么是shiro 3——组件之授权

授权,也叫访问控制,即在应用中控制谁能访问哪些资源(如访问页面/编辑数据/页面操作 等)。在授权中需了解的几个关键对象:主体(Subject)、资源(Resource)、权限(Permission)、角色(Role)。 主体 主体,即访问应用的用户,在Shiro中使用Subject代表该用户。用户只有授权后才允许访 问相应的资源。 资源 在应用中用户可以访问的任何东西,比如访问JSP 页

2017-05-23 10:50:13 418

原创 什么是shiro 2——组件之身份验证

在 shiro 中,用户需要提供principals (身份)和credentials(证明)给shiro,从而应用能 验证用户身份: principals:身份,即主体的标识属性,可以是任何东西,如用户名、邮箱等,唯一即可。 一个主体可以有多个principals,但只有一个Primary principals,一般是用户名/密码/手机号。 credentials:证明/凭证,即只有主体知

2017-05-19 16:22:16 1062

原创 什么是shiro 1——基本概念

1.shiro的API 基本功能点:认证、授权、加密、会话管理、缓存等。 核心API Authentication:身份认证/登录,验证用户是不是拥有相应的身份; Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用 户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用 户对某个资源是否具有某个权限; Session

2017-05-18 16:41:36 473

原创 5分钟带你看懂Java设计模式之门面模式

本文先给个例子让你看懂了这个设计模式的概念,再分析这个这设计模式的优点,最后再具体的去看看实现方式。1.一个例子来让你理解门面设计模式概念最直观的需求是,有多个病人,病人直接挂号、划价、缴费、取药等。引入门面设计模式后,病人通过接待员,由接待员负责代为挂号、划价、缴费、取药等。2.分析门面设计模式的优点病人直接去挂号、划价、缴费、取药,必然有些不

2017-05-11 14:21:41 1138

原创 你有没有考虑过这些常见的网站哪些账号密码存在泄露呢?

1. 门户/平台网易,360,百度,新浪2.邮箱QQ,网易3.电商京东,淘宝4.团购美团,糯米5.社交网站/社区知乎,贴吧,新浪,人人6.生活服务大众点评,58,携程7.视频/娱乐爱奇艺,优酷,暴风,迅雷8.支付支付宝,财付通,微信,各大银行

2017-05-04 16:13:01 1042 1

原创 如何写出优美的代码2————10-50-500原则

我很推荐10-50-500原则。在大型软件系统中,代码的可维护性是件很有挑战的工作。新加入的开发人员经常会抱怨这些情况:谁写这么长的代码,思路理不清,还长得一点向下看的欲望都没有了。保持代码的整洁与可维护有一条很简单的规则:10:包内的类不超过10个50:方法的代码行数不超过50500:类的代码行数不超过500及时的把长代码变成几个短代码,有利于逻辑的可读性

2017-05-04 11:06:29 431

原创 深入理解计算机原理1.1 --HolleWord的程序运行到底经历了什么?

你是不是曾经疑惑为什么像英语单词和数学符合组成的代码能在计算机系统上运行?这背后到底经历了什么?难道只是算法逻辑加上数据结构?那这个逻辑是靠什么实现的呢?数据结构到底放哪的哪? 世界是物质的,物质是运动的,运动是有规律的,有规律的东西是我们能认识的。 我们认识的过程一般是从猜想到证明的。在你疑惑的时候心中应该已经有过无数种可能的猜想了,我直接从物理基础入手来一步一步的证明代码为什么

2017-04-28 15:58:22 459

原创 写博客的一点说明

3月初准备付费买一个公网服务,部署一个自己的网站开始写IT技术博客 。 刚开始的想法是, 虽然感觉自己什么都没会,但还是要去整理。 目的有两个,一是为以后项目复用作储备,未雨绸缪,方能轻车熟路; 二是作为分享交流 ,闻到有先后,术业有专攻, 和菜鸟分享可以提供参考和建议 ,和大牛交流可以发现自己技术认识的不完善。 4月10号开了博客园的账号写了几篇随笔,查资料的时

2017-04-28 10:49:45 250

原创 5分钟带你入门Redis做Mybatis二级缓存

一、原理:要缓存的 Java 对象必须实现 Serializable 接口,因为 Spring 会将对象先序列化再存入 Redis,比如本文中的 com.defonds.bdp.city.bean.City 类,如果不实现 Serializable 的话将会遇到类似这种错误:nested exception is java.lang.IllegalArgumentException: Defa

2017-04-24 16:16:43 624

原创 5分钟带你入门Tomcat配置Spring+JNDI

1.JNDI 是什么JNDI是 Java 命名与目录接口(Java Naming and Directory Interface)2.JNDI到底起什么作用?2.1传统的做法JDBC创建一个以JDBC连接数据库的程序,包含7个步骤: 1、加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lan

2017-04-24 16:16:40 592

原创 如何写出优美的代码——1 Null和工具类的复用

1.不要把业务逻辑和非业务逻辑混合多思考一下,尽量不要有错误的逻辑,和漏掉的情形常见的逻辑:(1)字符串的为空判断if(s == null || s.length() 如果 String 类型为null, 而去进行 equals(String) 或 length() 等操作会抛出java.lang.NullPointerException.(2)对象是否为空判断 public sta

2017-04-24 16:16:35 621

原创 自定义的plot函数参数date坐标模型[x,y]的使用建议

调用plot函数的方法如下:var plot = $.plot(placeholder, data, options)分析:data应该是data series的一个数组:[ [x1, y1], [x2, y2], ... ]data是从后台传数据过来,通常是用ajax去获取的json数据,那么我们就可以在java后台去考虑xy坐标模型的构造了。这里我先提一下JSON中的两种数据结构:对象

2017-04-24 16:16:30 1076

原创 多个柱状图重叠显示问题 jQuery.flot

1.多个柱状图并列显示重叠问题再现,如下图情形:2.分析出现重叠的原因 jquery.flot.js源码部分:barWidth 假设为1align 默认值的 center 坐标位置在x=-1处 (这里取得是柱状图的中心位置),left 坐标位置 在x=0处,right坐标位置 在x=-0.5处而barWidth 宽度为1,如此的相对位置必定有0.25的重叠区域。

2017-04-24 16:16:26 4074 2

原创 5分钟带你入门Java注解annotation

包java.lang.annotation中包含所有定义自定义注解所需用到的原注解和接口。接口 java.lang.annotation.Annotation是所有注解继承的接口,并且是自动继承,不需要定义时指定,类似于所有类都自动继承Object。

2017-04-24 16:16:21 257

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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