- 博客(21)
- 收藏
- 关注
原创 lambda 表达式
lambda表达式List转ListList转MapList转ListList specialIdList = specialList.stream().map(s -> s.getId()).collect(Collectors.toList());list过滤:List moduleAnchors = activityModules.stream().filter(t ->...
2019-05-09 17:40:49
304
原创 Spring AOP 切面实践
@Around: 需要代理的方法执行在其中,只有异常才会被@AfterThrowing捕获1.1 使用场景 因为dubbo接口的异常,nodeJS中无法拿到返回值,ReponseData对象只在provider层进行封装。因此需要基于切面捕获异常,封装成ResponseData对象package com.showjoy.activity.aspect;import co...
2019-05-09 17:13:28
206
原创 分布式锁
文章参考:http://www.importnew.com/27477.html以下是自己在工作中遇到得问题,参考各种资料,最终实现,以做整理。现在大环境都是用分布式服务,原先单服务基于Java-API,多线程(Synchronized/ReentrantLock)已经不能满足所需。分布式锁一般有三种形式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeepe...
2019-05-09 17:01:12
556
原创 Python - 连接数据库
配置文件:showjoy.conf[mysql]#开发环境product_conn_str=192.168.0.223:3306:productsc_conn_str=192.168.0.223:3306:sctrade_conn_str=192.168.0.151:3306:tradeuser_conn_str=192.168.0.151:3306:user#shop_conn...
2018-10-12 16:31:52
241
原创 Python - 对excel内容操作
xlrd模块 1.1.1 读取excel内容,安装xlrd模块 pip install xlrd#coding=utf-8import sysreload(sys)sys.setdefaultencoding('utf-8')import xlrdclass module(object): @staticmethod def get_table_info():...
2018-09-26 19:29:48
686
原创 Python - 环境及模块安装
1,pip命令, pip命令必须切换到pip.exe目录pip install xlrd -- 安装xlrd模块
2018-09-21 18:04:45
258
原创 mongoTemplate --API
主要讲解MongoTemplate 相关API, 使用springboot + mongoDB环境1.1 保存,插入文档数据 下图中指定保存当前文档的集合为col, 如果不指定默认即为当前Model对象@RestControllerpublic class ShopController { @Autowired MongoTemplate mongoTempl...
2018-09-11 15:32:02
23786
1
原创 MongoDB - 基本操作命令
admin: 从权限的角度来看,这是"root"数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。local: 这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合config: 当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。test: 默...
2018-09-11 14:00:25
183
原创 MongoDB — 初识 (MongoRepository)
MongoRepository 与HibernateRepository类似,通过继承MongoRepository接口,我们可以非常方便地实现对一个对象的增删改查,要使用Repository的功能,先继承MongoRepository<T, TD>接口,其中T为仓库保存的bean类,TD为该bean的唯一标识的类型,一般为ObjectId。之后在service中注入...
2018-09-06 16:33:49
975
原创 MongoDB — 初识 (安装、启动、基本操作)
MongoDB 非关系型数据库1.1 Windows环境下安装 官网地址:https://www.mongodb.com/download-center#community1.2 数据目录安装 安装成功后,目录结构如下:MongoDB将数据目录存储在 db 目录下。但是这个数据目录不会主动创建,我们在安装完成后需要创建它。请注意,数据目录应该放在盘根目录下...
2018-09-06 15:34:35
230
原创 JetCache - 通用缓存框架
JetCacheJetCache是由阿里巴巴开源的通用缓存访问框架,如果你对Spring Cache很熟悉的话,请一定花一点时间了解一下JetCache,它更好用。JetCache提供的核心能力包括:提供统一的,类似jsr-107风格的API访问Cache,并可通过注解创建并配置Cache实例 通过注解实现声明式的方法缓存,支持TTL和两级缓存 分布式缓存自动刷新,分布式锁 (2....
2018-08-30 17:33:22
3486
1
原创 Redis key过期机制
Redis提供了一套“美好”的过期数据清理机制:主动过期: Redis对数据是惰性过期,当一个key到了过期时间,Redis也不会马上清理,但如果这个key过期后被再次访问,Redis就会主动将它清理掉。被动过期: 如果过期的Key一直没被访问,Redis也不会一直把它放那不管,它会每秒10次的执行以下的清理工作: 随机从所有带有过期时间的Key里取出20个 ...
2018-08-01 15:37:19
2189
原创 Springboot之持久层Mybatis
四、整合Mybatis整合 MyBatis 有两种方式:1) 使用 mybatis 官方提供的 Spring Boot 整合包实现。2) 使用 mybatis-spring 整合的方式,也就是传统的方式(推荐,此方式容易控制 MyBatis 的配置)。4.1配置依赖方式一:添加依赖<!-- mybatis --><dependency>...
2018-03-19 16:26:51
647
原创 springboot 之web篇(二)
一、前言上一篇《Spring Boot 入门之基础篇(一)》介绍了 Spring Boot 的环境搭建以及项目启动打包等基础内容,本篇继续深入介绍 Spring Boot 与 Web 开发相关的知识。二、整合模板引擎由于 jsp 不被 SpringBoot 推荐使用,所以模板引擎主要介绍 Freemarker 和 Thymeleaf。2.1 整合 Freemarker2.1.1...
2018-03-19 15:45:59
258
原创 Springboot 初创Demo
一、前言Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。本系列以快速入门为主,可当作工具小手册阅读二、环境搭建创建一个 maven 工程,目录结构如下图:2.1 添加依赖创建 mave...
2018-03-19 10:37:09
180
原创 Spring Boot 入门之web基础篇(二)
原文地址:Spring Boot 入门之 Web 篇(二)一、前言上一篇《Spring Boot 入门之基础篇(一)》介绍了 Spring Boot 的环境搭建以及项目启动打包等基础内容,本篇继续深入介绍 Spring Boot 与 Web 开发相关的知识。二、整合模板引擎由于 jsp 不被 SpringBoot 推荐使用,所以模板引擎主要介绍 Freemarker 和 Thyme...
2018-03-19 10:19:23
2581
翻译 Springboot 初创Demo
一、前言Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。本系列以快速入门为主,可当作工具小手册阅读二、环境搭建创建一个 maven 工程,目录结构如下图:2.1 添加依赖创建 maven 工程,在 pom.x...
2018-03-16 08:57:09
178
转载 Jvm类加载机制
在面试java工程师的时候,这道题经常被问到,故需特别注意。 Java中的所有类,都需要由类加载器装载到JVM中才能运行。类加载器本身也是一个类,而它的工作就是把class文件从硬盘读取到内存中。在写程序的时候,我们几乎不需要关心类的加载,因为这些都是隐式装载的,除非我们有特殊的用法,像是反射,就需要显式的加载所需要的类。 Java类的加载是动态的,它并不会一次性将所有类全部加...
2018-03-01 23:35:16
170
转载 那为什么在重写equals方法时都要重写hashCode方法呢:
首先equals与hashcode间的关系是这样的:1、如果两个对象相同(即用equals比较返回true),那么它们的hashCode值一定要相同;2、如果两个对象的hashCode相同,它们并不一定相同(即用equals比较返回false) 自我的理解:由于为了提高程序的效率才实现了hashcode方法,先进行hashcode的比较,如果不同,那没就不必在进行equals的比较了,这样就大...
2018-03-01 22:50:54
120
原创 Spring事务特性
事务的四大特征1.原子性:一个事务中所有对数据库的操作是一个不可分割的操作序列,要么全做要么全不做2.一致性:数据不会因为事务的执行而遭到破坏3.隔离性:一个事物的执行,不受其他事务的干扰,即并发执行的事物之间互不干扰4.持久性:一个事物一旦提交,它对数据库的改变就是永久的五个隔离级别1.default:默认的事务隔离级别,跟具体的数据有关,mysql默认的事务隔离级...
2018-03-01 22:40:00
183
转载 深入了解JVM
JVM的内存区域划分 学过C语言的朋友都知道C编译器在划分内存区域的时候经常将管理的区域划分为数据段和代码段,数据段包括堆、栈以及静态数据区。那么在Java语言当中,内存又是如何划分的呢? 由于Java程序是交由JVM执行的,所以我们在谈Java内存区域划分的时候事实上是指JVM内存区域划分。在讨论JVM内存区域划分之前,先来看一下Java程序具体...
2018-02-27 10:05:22
189
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人