自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(100)
  • 问答 (1)
  • 收藏
  • 关注

原创 服务注册与发现组件Eureka

服务注册与发现组件Eureka一.Eureka简介Eureka是一个用于服务注册和发现的组件,分为Eureka Server 和 Eureka Client,Eureka Server为Eureka的服务注册中心, Eureka Client为Eureka客户端。它是Spring Cloud推荐的服务注册与发现组件,与Spring Cloud其他组件可以无缝对接。 服务消费基本过程如下:...

2018-06-07 15:18:42 965

原创 Spring Cloud简介

Spring Cloud简介一.什么是Spring CloudSpring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将目前各家公司开发的比较...

2018-06-06 15:33:31 3472

原创 什么是微服务

什么是微服务微服务架构的系统是一个分布式的系统,按业务进行划分为独立的服务单元,解决单体系统的不足,同时也满足越来越复杂的业务需求。一.单体架构1.1什么是单体架构 在软件设计的时候经常提到和使用经典的3层模型,即表现层,业务逻辑层,数据访问层。虽然在软件设计中划分了3层模型,但是对业务场景没有划分,一个典型的单体架构就是将所有的业务场景的表现层,业务逻辑层,数据访问层放在一个工程中...

2018-06-05 11:09:42 23632

原创 Spring Boot 自定义配置文件及配置文件属性读取

Spring Boot 自定义配置文件及配置文件属性读取一.读取核心配置文件核心配置文件是指在resources根目录下的application.properties或application.yml配置文件,读取这两个配置文件的方法比较简单application.properties内容如下:com.my.name = sunming使用@Value方式(常用)...

2018-06-01 15:25:52 2459

原创 SpringBoot多环境配置

SpringBoot 多环境配置一.properties多环境配置在我们工作中使用几套环境应该是很正常的,比如开发环境,测试环境,生产。每套环境的配置信息可能都是不一样的,所以频繁修改配置文件很容易出错。有人会很容易想到使用不同的配置文件,开发使用dev.properties,测试使用test.properties,生产使用pro.properties。但是这样就可以了么,文件名称没有要求...

2018-05-25 17:13:10 446

原创 Spring Boot整合Shiro进行权限授权管理

Spring Boot整合Shiro进行权限授权管理上次咱们说到了在Spring Boot中整合Shiro进行身份验证,在其基础上咱们今天继续来说说Shiro另一个很重要的功能权限管理。一.自己定义的域重写doGetAuthorizationInfo方法上一章中咱们的域MyShiroRealm中doGetAuthorizationInfo方法直接返回null,不做权限的处理。现在我...

2018-04-26 15:37:37 2369

原创 Spring Boot整合Shiro框架进行身份验证

Spring Boot整合Shiro框架进行身份验证一.什么是ShiroApache Shiro 是 Java 的一个安全框架,Shiro 可以帮助我们完成:认证、授权、加密、会话管理等。相比较Spring Security 她更加的小巧易用。其基本功能点如下图所示: Authentication:身份认证 / 登录,验证用户是不是拥有相应的身份;Authorization:...

2018-04-24 17:35:48 5534 2

原创 Spring Boot 整合Mybatis

Spring Boot 整合MybatisMybatis是用的比较多的ORM开源框架,传统的Spring中整合Mybatis要引入各种jar包,还要注意jar包的版本,工程中还需要一对的配置文件。下面来看看在Spring Boot中使用Mybatis有多么的简单。一.创建工程具体创建过程可以参考第一篇文章,注意在选择组件的时候奖mybatis加上。 二.配置工程文件...

2018-04-21 15:30:09 271

原创 Spring Boot中Thymeleaf模板引擎的使用

Spring Boot中Thymeleaf模板引擎的使用一.什么是Thymeleaf引擎Thymeleaf是面向Web和独立环境的现代服务器端Java模板引擎,能够处理HTML,XML,JavaScript,CSS甚至纯文本。SpringBoot默认使用的就是themeleaf模板引擎。创建工程1.创建Spring Boot工程,pom.xml文件中加入Thymeleaf的...

2018-04-18 17:50:37 234

原创 Spring Boot中SpringDateJPA的使用

Spring Boot中SpringDateJPA的使用一.什么是SpringDateJPASpring Data是一个用于简化数据库访问,并支持云服务的开源框架。JPA它主要是为了整合第三方ORM框架,建立一种标准的方式。Spring Data JPA就可以极大的简化JPA的写法,可以在几乎不用写实现的情况下,实现对数据的访问和操作。除了CRUD外,还包括如分页、排序等一些常用的功能...

2018-04-12 11:28:47 2564 1

原创 Spring Boot 的Hello World

Spring Boot 的Hello World一.什么是Spring BootSpring Boot是由Pivotal团队提供的全新框架,对spring框架的全系列组件进行了内部封装。对外只是提供maven或者gradle的形式来进行引入parent.pom或者parent.gradle,让每一个spring项目都是以spring的子项目的形式来运行,避免了spring项目烦繁琐的配置,...

2018-04-02 11:21:40 169

原创 CSS伪类选择器

CSS伪类选择器伪类通过冒号来定义,它定义了元素的状态,如点击按下,点击完成等,通过伪类可以为元素的状态修改样式。1. E:link (特指a标签)设置超链接在未被点击之前的样式 a:link{color:red}a href="#" >超链接a>点击前是红色的,点击完成后恢复成原来颜色。2. E:visited(特指a标签)设置超链接在其链接地址已

2018-01-24 15:26:12 1553

原创 CSS属性选择器

CSS属性选择器CSS属性选择器即是通过html的属性来选择元素,下面来分别看下CSS的几种元素选择器。1.E[att]选择具有att属性的E元素input[type]{height: 40px;background-color:red;}""> type="text" name="name" placeholder="请输入用户名"/> type="p

2018-01-24 14:43:37 2409

原创 CSS关系选择器

CSS关系选择器之前我们学了CSS中的基础选择器,现在来看下CSS中的关系选择器。1.包含选择器(E F)选择所有被E元素包含的F元素,中间用空格隔开ul li{color:green;}ul> li>宝马li> li>奔驰li>ul>ol> li>奥迪li>ol>2.子选择器(E>F)选择所有作为E元素的直接子元素F,对更深一层的元素不起

2018-01-24 10:34:35 7583

原创 CSS基础样式

CSS基础样式CSS指层叠样式表,它作用是控制页面内容的外观。这样就可以将网页的内容和表现形式分离。层叠的意思是 如果选择器的权重相同,则后面元素的样式会覆盖前面样式。样式表的组成CSS样式表由选择器和声明两个部分组成,其中选择器是通过名字来标识元素的,声明用于定义元素的样式。a{color:red;声明2;声明3}样式表比较常见的有三种引入方式 1.行内样式

2018-01-18 16:16:48 2759

原创 HTML5新增的语义化标签

HTML5新增的语义化标签html5相较于之前的版本提供了一些新的语义化标签,下面进行总结下。 1. 定义了文档的头部区域,在一个文档中可以定义多个元素。它是块元素header> p>这是文档的头部p>header>2. 定义文档页脚,它不只是页面的最底部,在文档中也可以定义多个。header> address>南京鼓楼address>header>

2018-01-17 15:48:26 14702 1

原创 Show Profile进行sql分析

Show Profile进行sql分析一.Show Profile是什么是mysql提供的用来分析当前会话中sql执行的资源消耗情况,比explain粒度更细的sql调优手段。二.查看该参数是否开启以及如何开启1.查看该参数是否开启show VARIABLES like 'profiling';2.开启 默认是关闭的,现在开启。set profiling = 1;三.sql分析1.在数据库中运行

2017-12-06 17:02:41 2653

原创 MySQL慢查询

MySQL慢查询一.什么是慢查询慢查询指运行时间超过long_query_time值的sql,它会被记录到慢查询日志中,long_query_time的默认值是10秒。默认情况下MySQL并没有开启慢查询日志,需要我们手动设置。如果不是调优需要一般不建议启动该参数。如何查看慢查询日志是否开启及如何开启1.查看慢查询日志是否开启show VARIABLES like '%slow_query_log%

2017-12-05 16:17:43 726

原创 索引失效原因

索引失效原因一.准备工作创建student表,id是主键 创建复合索引create index idx_name_age on student(name,age);查看索引show index from student;二.索引失效原因1.全值匹配我最爱explain select * from student where name = '张三' and age = 1;2.最佳左前缀法则,带

2017-12-04 17:39:23 2080

原创 Explain使用简介

Explain使用简介什么是explainexplain关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL。分析你的查询语句或是表结构性能瓶颈。如何使用explain SQL语句返回的内容: (1) id: select 查询的序列号,包含一组数字,表示查询中select子句或操作表顺序。 id相同,执行顺序由上至下。 id不同,如果是子查询,id序号会递增,id值

2017-11-21 16:22:37 796

原创 MySQL索引简介

MySQL索引什么是索引MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构,索引的本质是数据结构。 也可以简单的理解为,排好序的快速查找数据结构。一般来说索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储在磁盘上。 我们平时所说的索引,如果没有特别说明,都是指B树组织的索引。其中聚合索引,次要索引,覆盖索引,复合索引,前缀索引,唯一索引默

2017-11-20 15:22:57 214

原创 MySQL查询语句

MySQL查询语句创建水果表:CREATE TABLE fruits(f_id char(10) NOT NULL,s_id INT NOT NULL,f_name char(255) NOT NULL,f_price decimal(8,2) NOT NULL,PRIMARY KEY(f_id) );插入数据:INSERT INT

2017-11-08 11:41:18 369

原创 MySQL存储过程

MySQL存储过程一.什么是存储过程存储过程是在大型数据库系统中,一组为了完成特定功能的sql语句集,存储在数据库中。经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字和参数来执行它。二.存储过程的优点存储过程只在创造时编译,以后每次执行存储过程都不需要再重新进行编译,而一般的sql语句每执行一次就需要编译一次,所有存储过程可以提高数据库的执行速度。当对数据库进行复杂操作时,可将

2017-11-07 19:25:31 235

原创 MySQL视图

MySQL视图一.视图的定义视图是由查询结果形成的一张虚拟表,是表通过运算得到的一个投影,同一张表可以创建多个视图 。 创建视图的语法:create view view_name as select xxx这个语句可以理解为,将该select结果命名为view_name。二.视图的作用(1).简化查询 例:查询平均价格前三高的商品 正常sql语句select pro_id avg(price)

2017-11-07 11:43:40 155

原创 MySQL的增删改查

MySQL数据的增删改查###MySQL插入数据 MySQL 插入数据使用insert语句,它可以向表中插入一行及多行数据 1.插入一行数据insert into 表名(column1,column2...)values (value1,value2,...);column1,column2是列名中间用逗号隔开,最后列的后面不需要加逗号。value1,value2是插入到对应列的值,中间也是用

2017-10-23 11:41:17 410

原创 MySQL中数据类型

MySQL中数据类型 数据类型 指定值和范围 描述

2017-10-23 11:03:36 178

转载 @Controller和@RestController的区别?

官方文档: @RestController is a stereotype annotation that combines @ResponseBody and @Controller. 意思是: @RestController注解相当于@ResponseBody + @Controller合在一起的作用。1)如果只是使用@RestController注解Controller,则Control

2017-10-20 17:21:59 1615

转载 @ResponseBody注解的使用

@ResponseBody注解的使用 @ResponseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据,需要注意的呢,在使用此注解之后不会再走视图解析器,而是直接将数据写入到输入流中,他的效果等同于通过response对象输出指定格式的数据。@RequestMapping

2017-10-20 17:08:48 328

原创 MySQL快速入门

MySQL快速入门一.什么是MySQL MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中。MySQL是开源的可以免费使用,并且支持大型的数据库可以处理拥有上千万条记录。她采用了GPL协议,你可以修改源码来开发自己的Mysql系统,目前阿里就是这么干的,他们使用的是自己开发的一套MyS

2017-10-20 16:42:51 429

原创 在tomcat服务器中增加一个debug端口

在tomcat服务器中增加一个debug端口用于远程debug:一般在bin的setvmargs.sh中新增JAVA_OPTS="$JAVA_OPTS "-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5888。其中address为端口号。

2017-09-21 22:04:01 2591

原创 单例模式

单例模式单例模式是对象的创建模式,单例模式确保一个类只有一个实例,且自行实例化并向整个系统提供这个实例。这个类就称为单例类。饿汉式单例模式饿汉式单例模式是在Java实现最为简单的单例类,下图类图描述了一个饿汉式单例类的典型实现。 代码:public class SingleTon { private static final SingleTon singleTon = new SingleT

2017-09-02 16:37:31 371

原创 Java对象与JSON对象相互转换

1.创建Address类public class Address { // 省 private String province; // 市 private String city; // 街道 private String street; public Address() { } public Address(String pro

2017-08-25 21:46:19 626

原创 JSON

什么是JSONJSON,全称是JavaScript Object Notation。它是基于JavaScript编程语言ECMA-262 3rd Edition-December 1999标准的一种轻量级的数据交换格式,主要用于跟服务器进行交换数据。跟XML相类似,它独立语言,在跨平台数据传输上有很大的优势。JSON 语法规则JSON 语法是 JavaScript 对象表示法语法的子集。 数据在名

2017-08-25 21:30:40 213

原创 网页爬虫--历史上的今天

网页爬虫–历史上的今天上篇博客中我们知道了,调用第三方的API获得我们想要的数据,如果我们要的数据没有现成的API怎么办?那就需要我们去网站上爬数据了。下面就教大家怎么去网页上爬我们需要的数据。一.使用Java JDK中的工具自己实现HTTP和HTTPS请求写一个HttpUtils 工具类:package org.sunming.util;import java.io.BufferedReader;

2017-08-19 12:51:32 4431

原创 天气预报

到目前为止,我们的公众号已经可以回复用户发出的消息,但是如果仅仅如此,就没必要设为开发模式了。完全不懂编程的人也可以在微信公众平台上设置回复用户的消息。现在我们来实现我们的公众号查询全国各个城市天气这么一个功能,像公众号输入天气+地名(天气南京)就可以查询当地的天气情况。 具体实现1.选择API我们使用阿里云的全国天气预报查询接口。根据API说明,调用地址:http(s)://ali-weathe

2017-08-17 20:47:37 2536

原创 响应消息的封装与转换

一.响应消息的封装到目前为止我们的公众号已经可以收到用户发过来的消息,那我们该怎样给用户响应呢,继续往下看。目前微信支持响应的消息有文本、图片、图文、语音、视频、音乐。下面看下各种回复消息的样式。回复文本消息<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[fromUser]]></FromUserNam

2017-08-14 21:58:25 818

原创 用户请求消息的封装和解析

一.请求消息的封装当普通微信用户向公众账号发消息时,微信服务器将POST消息的XML数据包到开发者填写的URL上。各消息类型的推送XML数据包结构如下:文本消息<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>134883

2017-08-09 22:22:52 650

原创 接入微信公众平台

接入微信公众平台验证消息是否来自于微信服务器开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址URL上,GET请求携带参数如下表所示: 参数 概述 signature 微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。 timestamp 时间戳 nonce 随机数 echostr 随机

2017-08-08 21:17:33 420

原创 微信公众号开发-Java

申请个公众号最近接触了微信公众号,在这对微信公众号开发过程做个记录。对想接触微信公众号的同学可以做个参考。下面进入正题。一.微信公众号申请微信公众号开发首先你得有一个微信公众号,申请微信公众号,点击立即注册,会让你选择公众号的类型。 一般个人选择订阅号,下面的例子也是已订阅号为例,服务号和订阅号类似只是多了些微信提供的服务接口。可以在微信公众平台查看接口权限 下面就是填写基本信息和邮箱验证什么的

2017-08-08 19:34:56 388

原创 Spring整合Redis

Spring整合Redis1.引入redis jar包 2.配置spring配置文件applicationContext.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/

2017-07-26 20:07:00 1358

空空如也

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

TA关注的人

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