自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ANGEL CITY

No accumulation of steps,can't lead to thousand miles. No integration of streams,can't result in seas and oceans.

  • 博客(47)
  • 资源 (3)
  • 收藏
  • 关注

原创 微信企业号授权(含代码)

先暂时贴上代码,有时间再编辑文字,大家有问题可以留言讨论/** * 根据code获取userId后跳转到需要带用户信息的最终页面 * @param request * @param code 获取微信重定向到自己设置的URL中code参数 * @return */ @ResponseBody @RequestMapping(value = { "/oauth2url"...

2019-01-31 10:44:05 9906 1

原创 MySql数据库--存储过程

在MySQL 5中,终于引入了存储过程这一新特性,这将大大增强MYSQL的数据库处理能力。在本文中将指导读者快速掌握MySQL 5的存储过程的基本知识,带领用户入门。  存储过程介绍  存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程可由应用程序通过一个调用来执行,而且允许用户声明变量 。...

2019-01-31 10:03:19 1249

原创 mysql分库、分表解决方案

一、Mysql分库分表方案1.为什么要分表:当一张表的数据达到几千万时,你查询一次所花的时间会变多,如果有联合查询的话,我想有可能会死在那儿了。分表的目的就在于此,减小数据库的负担,缩短查询时间。mysql中有一种机制是表锁定和行锁定,是为了保证数据的完整性。表锁定表示你们都不能对这张表进行操作,必须等我对表操作完才行。行锁定也一样,别的sql必须等我对这条数据操作完了,才能对这条数据...

2019-01-30 16:03:40 2221

原创 CSDN---冒泡排序(Bubble Sort)

冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。1.1 算法描述比较相邻的元素。如果第一个比第二个大,就交换它们两个;对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样...

2019-01-30 14:49:59 6116

转载 为什么构建网站时常会用到负载均衡

对于用户数较多、负载较大的网站,我们通常都会使用负载均衡(LB:Load Balance)来增加服务器的承载能力。负载均衡是云计算的一个基本服务组件,通常都会搭配云主机来构建云服务,比如阿里云的SLB(Server Load Balancer)、腾讯云的CLB(Cloud Load Balancer)。负载均衡可以将客户端请求分摊到多个操作单元上进行处理硬件负载均衡负载均衡有很多种不...

2019-01-30 10:58:26 1340

原创 CSDN-让你一看就懂的排序算法(就是这么简单)

算法概述算法分类十种常见排序算法可以分为两大类:非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。算法复杂度相关概念稳定:如果a原本在b前面,而a=b...

2019-01-30 10:37:16 28766 4

原创 MySQL分页排序中的坑

今天项目提测,被测出了一个奇怪的bug,第一页最后一条数据和第二页的第一条数据重复了,并且神奇的丢失了一个条数据,下面开始来分析一下这个场景。第一页第二页场景为对一些作业进行按时间排序,但是有的作业时间是相同的。对代码进行查看发现,代码并没有什么问题,只是简单的查询全集并按时间排序分页返回给前端。所以去看一看mysql对limit的解释,从官方文档中发现了这样一句话...

2019-01-29 16:54:04 28181

原创 MySQL大数据量分页查询方法及其优化

---方法1: 直接使用数据库提供的SQL语句---语句样式: MySQL中,可用如下方法: SELECT * FROM 表名称 LIMIT M,N---适应场景: 适用于数据量较少的情况(元组百/千级)---原因/缺点: 全表扫描,速度会很慢 且 有的数据库结果集返回不稳定(如某次返回1,2,3,另外的一次返回2,1,3). Limit限制的是从结果集的M位置处取出N条输出,其余抛弃....

2019-01-29 16:40:09 1181

原创 java创建线程常用的两种方式

一、继承Thread类创建线程类(1)定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代 表了线程要完成的任务。因此把run()方法称为执行体。(2)创建Thread子类的实例,即创建了线程对象。(3)调用线程对象的start()方法来启动该线程。二、通过Runnable接口创建线程类(1)定义runnable接口的实现类,并重写该接口的run()方法,该run...

2019-01-29 14:47:32 1959

原创 微信企业号下的消息推送接口

一般在微信企业号下做软件开发,基本都会用到消息推送,用户在完成一个操作之后,会在企业号中推送一条消息,这条消息可能是文本、图文等不同类型,在具有审批流程的消息推送中,下一级人员审批完成会给上一级推送一条审批消息,后者可以直接点开推送消息进入审批页面,进行审批。下面是消息推送接口代码:import java.text.SimpleDateFormat;import java.util.Arr...

2019-01-29 11:50:00 11320

转载 spring与redis集成之aop整合方案

java使用redis缓存可以使用jedis框架,jedis操作简单,没有什么复杂的东西需要学习,网上资料很多,随便看看就会了.将spring与redis缓存集成,其实也是使用jedis框架,只不过spring对它进行了一层封装,并将这层封装库命名为spring-data-redis.下面将要使用spring-data-redis与jedis的jar包,并通过spring的aop功能,将r...

2019-01-29 10:09:46 1350

原创 springboot常用注解

说起注解,就不得不说到三个最基本的注解:Target:声明注解用于什么地方,用的最多的是注解在类上(@Target({ElementType.TYPE}))和方法(@Target({ElementType.METHOD}))上。 Retention:定义该注解的生命周期 RetentionPolicy这个枚举类型的常量描述保留注释的各种策略,它们与元注释(@Retention)一起指定注释...

2019-01-28 10:00:40 1625

原创 springboot和springmvc的区别

Spring 框架就像一个家族,有众多衍生产品例如 boot、security、jpa等等。但他们的基础都是Spring 的 ioc和 aop ioc 提供了依赖注入的容器 aop ,解决了面向横切面的编程,然后在此两者的基础上实现了其他延伸产品的高级功能。Spring MVC是基于 Servlet 的一个 MVC 框架 主要解决 WEB 开发的问题,因为 Spring 的配置非常复杂,各种XML...

2019-01-28 09:43:33 2771

原创 软件开发模式对比(瀑布、迭代、螺旋、敏捷)

1、瀑布模型是由W.W.Royce在1970年最初提出的软件开发模型,瀑布式开发是一种老旧的计算机软件开发方法。瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求分析、设计、编码、集成、测试、维护的步骤顺序进行。步骤成果作为衡量进度的方法,例如需求规格,设计文档,测试计划和代码审阅等等。        瀑布式的主要的问题是它的严格分级导致的自由度降低,项目早期即作出承诺导致对后期需求的变化...

2019-01-25 16:03:41 1669

原创 Java线程面试题

Java线程面试题 Top 50下面是Java线程相关的热门面试题,你可以用它来好好准备面试。1) 什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。Java在语言层面对多线程提供了卓越的...

2019-01-25 14:45:21 1571 2

原创 java经典面试题

进步就是不断进行学习、实践、归纳、总结一、基本语法包括static、final、transient等关键字的作用,foreach循环的原理等等。面试问你static关键字有哪些作用,如果你答出static修饰变量、修饰方法会认为你合格,答出静态块,会认为你不错,答出静态内部类会认为你很好,答出静态导包会对你很满意,因为能看出你非常热衷研究技术。二、集合非常重要,也是必问的内容。基本...

2019-01-25 10:55:27 981

原创 已倒闭某科技公司前员工辟谣声明

转发这个并不是我赞同或者支持某一方,但事实真相如何,我们不能仅听公司老板的一面之词,要是都这样甩锅,那你我还会热爱这个行业吗,程序员是一个默默无闻的幕后工作,任何光鲜亮丽的事情与我们无关,但默默无闻并不代表我们就好欺负,我们不惹事但也不怕事,当有人要我们去背锅甚至侮辱我们的人格时,要坚决的站出来,勇敢的和他们斗争。...

2019-01-25 10:25:04 8943 12

原创 java中 static,final,transient,volatile关键字的作用

static 和final  static  静态修饰关键字,可以修饰 变量,程序块,类的方法; 当你定义一个static的变量的时候jvm会将将其分配在内存堆上,所有程序对它的引用都会指向这一个地址而不会重新分配内存;  修饰一个程序块的时候(也就是直接将代码写在static{...}中)时候,虚拟机就会优先加载静态块中代码,这主要用于系统初始化;  当修饰一个类方法时候你就可以...

2019-01-24 17:20:13 1089

原创 SpringMVC工作原理概述

SpringMVC框架介绍Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Spring 框架是高度可配置的,而...

2019-01-24 16:04:55 43040 1

原创 数据库设计缺陷导致的数据恢复

数据库设计是信息系统设计的基础,一个好的数据库设计在满足软件需求之外,还要易维护、易扩充等等。作为一个好的数据库应该满足以下几点(作者的观点,意见不同者可以留言讨论)首先要满足用户的需求 其次要便于维护和扩充 数据库设计要具有可读性 能满足空间和设计的要求 可以简化业务逻辑设计接下来说一下本文主要讲的一次数据库设计缺陷,导致用户操作之后,改变了之前存储的数据,为什么会导致这种结果...

2019-01-24 10:07:07 1261 1

原创 list中内容转化为逗号分隔的字符串

实际项目经常用到的方法1String symbol = Joiner.on(",").join(symbolList);方法2:String symbol = StringUtils.join(symbolList.toArray(), ",");用来代替下面的方法 StringBuffer sb = new StringBuffer(); for(Object _...

2019-01-23 15:33:35 2649

原创 MySQL引擎、索引和优化

MySQL引擎、索引和优化(li)一、存储引擎  存储引擎,MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。InnoDB存储引擎是5.5版本后Mysql的默认数据库,事务型数据库的首选引擎,支持ACID事...

2019-01-22 14:44:33 675

转载 红黑树-漫画版

————————————二叉查找树(BST)具备什么特性呢?1.左子树上所有结点的值均小于或等于它的根结点的值。2.右子树上所有结点的值均大于或等于它的根结点的值。3.左、右子树也分别为二叉排序树。下图中这棵树,就是一颗典型的二叉查找树:1.查看根节点9:2.由于10 > 9,因此查看右孩子13:...

2019-01-22 13:45:40 2381

原创 MySQL几种索引类型的区别和应用

Mysql目前主要有以下几种索引类型:FULLTEXT,HASH,BTREE,RTREE。全文索引、hash索引、B-Tree索引、RTree(范围索引或空间索引)这几种索引功能和性能上的区别:FULLTEXT全文索引,目前只有MyISAM引擎支持。其可以在CREATE TABLE ,ALTER TABLE ,CREATE INDEX 使用,不过目前只有 CHAR、VARCHAR ...

2019-01-22 11:31:20 3690

原创 CSDN---R树

R树对于B/B+-Trees 由于它的线性特点,通常用来索引一维数据。(比它大的往一边走,比它小的往一边走,但只是在一个维度下进行比较)。B树是一棵平衡树,它是把一维直线分为若干段线段,当我们查找满足某个要求的点的时候,只要去查找它所属的线段即可。这种思想其实就是先找一个大的空间,再逐步缩小所要查找的空间,最终在一个自己设定的最小不可分空间内找出满足要求的解。一个典型的B树查找如下:...

2019-01-22 11:02:24 1490

原创 CSDN---Mysql的B-Tree索引和Hash索引的区别。

hash索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不想B-Tree索引从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以hash索引的查询效率要远高于B-Tree索引。可能很多人会有疑问,既然hash索引的效率要高于B-Tree索引,为什么大家不用hash索引取代B-Tree索引呢?这是一个哲学命题,任何事物都有其两面性,hash索引也一样,虽然hash索引效率高...

2019-01-22 09:55:43 1866

原创 CSDN---B+树

B+树是对B树的一种变形树,它与B树的差异在于:有k个子结点的结点必然有k个关键码; 非叶结点仅具有索引作用,跟记录有关的信息均存放在叶结点中。 树的所有叶结点构成一个有序链表,可以按照关键码排序的次序遍历全部记录。如下图,是一个B+树:下图是B+树的插入动画:B和B+树的区别在于,B+树的非叶子结点只包含导航信息,不包含实际的值,所有的叶子结点和相连的节点使用链表相连...

2019-01-21 15:41:43 1162 2

原创 B树

B 树可以看作是对2-3查找树的一种扩展,即他允许每个节点有M-1个子节点。根节点至少有两个子节点 每个节点有M-1个key,并且以升序排列 位于M-1和M key的子节点的值位于M-1 和M key对应的Value之间 其它节点至少有M/2个子节点下图是一个M=4 阶的B树:可以看到B树是2-3树的一种扩展,他允许一个节点有多于2个的元素。B树的插入及平衡化操作和2-3树...

2019-01-21 15:28:28 11763 3

原创 2-3树

2-3树是最简单的B-树(或-树)结构,其每个非叶节点都有两个或三个子女,而且所有叶都在统一层上。2-3树不是二叉树,其节点可拥有3个孩子。不过,2-3树与满二叉树相似。高为h的2-3树包含的节点数大于等于高度为h的满二叉树的节点数,即至少有2^h-1个节点。2-3树是最简单的B-树(或-树)结构,其每个非叶节点都有两个或三个子女,而且所有叶都在统一层上。2-3树不是二叉树,其节点可拥有3个孩...

2019-01-21 15:24:45 841

转载 浅谈对Spring IOC以及DI的理解

学习过spring框架的人一定都会听过Spring的IoC(控制反转) 、DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC 、DI这两个概念是模糊不清的,是很难理解的,笔者入门之时就深受其苦,今天和大家分享网上的一些技术大牛们对Spring框架的IOC的理解以及个人对Spring Ioc的理解。一、个人对IoC(控制反转)和DI(依赖注入)的理解我们平时在开发java ...

2019-01-21 14:12:02 1017

原创 mysql索引详解

本文从以下几点介绍mysql索引:1、如何建立mysql索引;2、介绍mysql类型;3、mysql索引的利与弊;4、建立索引的注意事项首先假设你有一张表,该表有10万条数据,其中有一条数据是nickname='css',如果要拿这条数据的需要些的sql是select * from award where nickname=‘css’一般情况下,在没有建立索引的时候,mys...

2019-01-21 13:34:03 1921

原创 dubbo和zookeeper间的关系

节点角色说明:Provider:暴露服务的服务提供方; Consumer:调用远程服务的服务消费方; Register:服务注册与发现的注册中心; Monitor:统计服务调用次数和调用时间的监控中心; Constainer:服务运行容器。调用关系说明:0.服务容器负责启动,加载,运行服务提供者; 1.服务提供者在启动时,向注册中心注册自己提供的服务; 2.服务消费者在启...

2019-01-21 11:42:13 47974 3

原创 java程序猿成长的14个阶段

这是一个非常好的模型,我在看的时候,觉得如果有一个更细致的阶段划分,会对开发者定位自己更有帮助,所以,就总结了出了下面的14个阶段:看书,看视频,看博客,听课等等 对着书敲代码 脱离书自己敲代码 自己实现一些小DEMO 进项目看代码 在别人指点下写代码 独立在别人搭建好的框架内填写代码 独立负责别人设计好的模块的实现 独立负责一个软件模块的设计和实现 负责较大的软件模块,拆分...

2019-01-18 11:17:37 699

原创 python下载安装BeautifulSoup库

 python下载安装BeautifulSoup库1、下载https://www.crummy.com/software/BeautifulSoup/bs4/download/4.5/2、解压到解压到python目录下:3、“win+R”进入cmd;依次输入如下代码:C:\Users\Administrator>cd D:\softwareIT\Python27\b...

2019-01-16 15:37:34 2947

原创 python学习笔记

一、python火了好几年了,为什么最近才开始学习python,是因为项目需要被逼无奈o(╥﹏╥)o,凭借多年的java开发经验,对于python的学习也是手到擒来,首先是基础语法的学习,大概看了一目十行看了一遍,与java差别不大,具体的差别如下: 以下划线开头的标识符是有特殊意义的,以单下划线开头 _f 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx im...

2019-01-16 14:25:49 1617

原创 java面试技术准备

面试开始会让自我介绍,主要业务架构和技术架构两部分。业务架构一般不会深究,但要面试官听明白,并且一般面试官会顺着问是如何根据这些业务去设计技术架构的。技术架构部分,会根据自我介绍中提到的技术点问,是为什么使用这些技术,解决了哪些问题,碰到哪些困难,是如何思考和解决的,最后再顺带一些技术本身底层的设计方面的问题:例如:有redis,会问哪些场景用,解决了什么问题,数据量有多少,用的过程出现过...

2019-01-16 10:00:28 6761

原创 java#python#c#技术交流QQ群

2019-01-15 14:23:27 2731

原创 解决python代码问题SyntaxError: Non-UTF-8 code starting with '\xb8'

程序中出现中文,运行的时候出现如下错误导致的根源就是编码问题解决方案:在程序的首行加上: 

2019-01-15 10:04:06 12108 1

转载 MyEclipse和Eclipse中配置Python插件

亲测有效插件PyDev的下载地址:http://sourceforge.net/projects/pydev/files/言归正传, 本文教你在eclipse中安装 Python 插件, 下面我们就跟着步骤一起做吧。1. 首先安装window下Python环境:下载地址: https://www.python.org/downloads/我安装的是: python-3.4.0.m...

2019-01-15 09:42:05 1709

转载 十大编程语言之父——每个程序员都应该记住!

Dennis Ritchie(丹尼斯里奇)被世人尊称为“无形之王的C语言之父”、“伟大的UNIX之父”,开创了计算机网络技术的先河,为乔布斯等IT巨匠提供肩膀的巨人。1978年与布莱恩科尔尼干(BrianW Kernighan)一起出版了名著《C程序设计语言》,被翻译为多种语言,是C语言方面最权威的教材之一。2011年10月12日(北京时间10月13日),“巨人”陨落。Niklau...

2019-01-11 16:23:31 12263

java开发面试知识汇总

java基础、springboot、mybatis、Redis等技术面试总结

2023-02-27

TrainingSystemNew.pdm

在线培训平台是一款集培训、学习、考试、积分兑换等于一体的企业级应用,这是数据库设计模型,请大家参考学习。

2019-12-20

wechat.rar

微信企业号消息推送,包含具体实现和工具类,通过企业号推送,用户在微信端接收消息,进入相关页面

2019-08-19

阿里巴巴java开发手册

阿里巴巴java开发手册,包括最新的java编码规范级优化方案

2019-01-31

空空如也

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

TA关注的人

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