- 博客(10)
- 资源 (3)
- 收藏
- 关注
原创 MySql千万级limit优化方案
经过实践,总结以下比较好的limit分页优化方案1. 模仿百度、谷歌方案(前端业务控制)类似于分段。我们给每次只能翻100页、超过一百页的需要重新加载后面的100页。这样就解决了每次加载数量数据大 速度慢的问题了2. IN获取idselect * from table_name where id in (select id from table_name where ( user = xx...
2019-05-22 13:04:48 10575
转载 微服务架构设计基础之领域驱动设计(转载)
DDD早于微服务「出道」十年,这两个「忘年交」的软件设计哲学是如何相爱相杀的?背景微服务现在可以说是软件研发领域无人不提的话题,然而业界流行的对比多数都是所谓的Monolithic(单体应用),而大量的系统在十几年前都已经是以SOA(面向服务架构)为基础的分布式系统了,那么微服务作为新的架构标准与SOA有什么差异点呢?其本质区别在于设计原理,微服务是去中心化设计,SOA是「集成」形成中心设...
2019-05-14 15:47:40 212
原创 Vue+Element UI封装Axios请求,支持PayLoad、Form Data两种方式
由于Element的Loading是全局等待条,每次请求都需要显示,有时候不太方便。下面做了一个处理,根据情况,在请求参数中添加showLoading=true,自行显示全局等待条。import Axios from 'axios'import qs from 'qs'import { Message, Loading } from 'element-ui';let loadi...
2019-05-14 11:24:06 2960
原创 Vue+iView LoadingBar封装Axios请求
import Axios from 'axios'import qs from 'qs'import iView from 'iview'Axios.defaults.timeout = 60000Axios.defaults.baseURL = ''//http request 拦截器Axios.interceptors.request.use( config =>...
2019-05-14 11:17:42 1804
原创 mybatis批量新增和批量更新的效率对比
今天,为了更多了解下,mybatis批量新增和批量更新在simple/batch模式 + MySQL的rewriteBatchedStatements下效率有什么区别,做了一次实验。实验结果,让人意想不到,如果没有亲自测试,可能一直会被网上帖子误导。实验参数mybatis的执行类型ExecutorTypesimply模式batch模式形成的SQL语句方式insert:批...
2019-05-12 23:24:39 7491 5
原创 mybatis如何开启batch模式
一般来说,对于SSM项目工程来说,mybatis的ExectoryType默认是simple,那么又如何能动态使用batch模式呢?直接上源码实现干货:import org.apache.ibatis.session.ExecutorType;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.sessi...
2019-05-12 22:39:59 11464 2
原创 扩展tk.mybatis的批量更新的功能
tk.mybatis没有带批量更新的功能,批量更新却是经常使用的,所以需要自己实现。批量更新网上主要有2种方式:case when方式、foreach方式但是foreachzhe这种方式效率非常低下,不知道为何那多么帖子在流传,请看我另一个文章。扩展tk.mybatis的批量更新,采用case when方式,源码干货如下:首先定义下mapper接口import org.apache....
2019-05-12 22:32:39 12671 11
原创 javascript XMLHttpRequest实现下载文件
查阅网上关于JavaScript实现下载文件功能,主要有几种方式:1. window.open(url) 这是最差劲最不负责任的做法,因为会下载会弹出白页面2. 构造form表单,form.submit() 这种方式有一个问题:不能加入等待对话框3. 使用XMLHttpRequest,获取response 实现下载, 但是有一个小问题:后台header中filename不能...
2019-05-11 11:32:22 11298
原创 扩展tk.mybatis的流式查询功能
mybatis查询默认是一次获取全部, 有时候需要查询上万上百万数据时,如果一次性读取到内存中,会容易导致OOM问题。这时候需要采用流式查询。以下扩展了tk.mybatis的流式查询功能。 直接上干货:@Options注解是关键import org.apache.ibatis.annotations.Options;import org.apache.ibatis.annotations.S...
2019-05-09 14:37:57 3006 1
原创 基于SpringBoot和tk.mybatis的支持事务的读写分离的源码实现
至于什么是读写分离,请大家自己去百度吧。直接上干货源码:先定义数据源读写类型/** * 数据源类型 * * @author sunchangtan */public enum DataSourceType { WRITE, READ}定义数据库连接的Holderimport java.sql.Connection;import java.util.HashM...
2019-05-06 20:18:47 1609 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人