因为系统里需要同时用到多个数据源,于是对mybatis以及jpa都做了多数据源的一些配置。原理呢就是利用切面的前置通知加注解的方式实现动态切换数据源。
创建一个注解
创建该注解的目的是利用注解的value告诉程序我们需要切换的目标数据源名称是哪个。
@Target(ElementType.METHOD)
……继续阅读 »
6年前 (2019-04-01) 1626浏览 0评论
0个赞
微服务是针对目前复杂的业务系统的一种模块化梳理吧,相比较之前传统的垂直应用的模块化部署,微服务注重的是分布式、高并发、高可用、集群部署、负载均衡。
将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用能更快速的响应多变的市场需求。此时,用于提高业务复用及整合的分布式服务框架(RPC)是关键。
……继续阅读 »
6年前 (2019-02-19) 1224浏览 0评论
0个赞
程序访问共享的可变数据需要同步机制来保证线程安全性,不使用同步机制的方式就是不共享数据,将数据封闭在单个线程中,实现线程封闭(Thread Confinement)。
实现线程封闭的技术主要有以下三种:一是Ad-hoc线程封闭,这种线程封闭的职责完全由程序实现来承担,非常脆弱;二是栈封闭,栈封闭主要采用局部变量……继续阅读 »
6年前 (2018-08-22) 1229浏览 0评论
0个赞
《Java concurrency in practice》一书说道,
When a thread requests a lock that is already held by another thread, the requesting thread blocks.
But because intrinsic locks are reentrant, ……继续阅读 »
7年前 (2018-08-01) 1474浏览 0评论
0个赞
本文转载自FreeBuf-如何安全的存储用户的密码
大多数的web开发者都会遇到设计用户账号系统的需求。账号系统最重要的一个方面就是如何保护用户的密码。一些大公司的用户数据库泄露事件也时有发生,所以我们必须采取一些措施来保护用户的密码,即使网站被攻破的情况下也不会造成较大的危害。如果你还在存储用户密码的MD5,那可真的有点弱了。赶紧……继续阅读 »
7年前 (2018-03-24) 1677浏览 0评论
0个赞
简介
hutool 是一个很甜美的java开源工具包,简化了我们的开发工作。由几个大佬维护在github上,最近在项目中有些许小功能迫在眉睫要实现,于是想到了hutool进行快速开发。
hutool项目的地址 https://github.com/looly/hutool/
遇到的问题
使用hutool连接……继续阅读 »
7年前 (2018-01-24) 2965浏览 0评论
4个赞
单例模式简介
单例模式,确保了一个类只有一个实例,为整个系统提供全局访问点的一种设计模式。
(1)、在任何情况下,单例类永远只有一个实例存在
(2)、单例需要有能力为整个系统提供这一唯一实例
单例对象通常作为程序中的存放配置信息的载体,因为它能保证其他对象读到一致的信息。例如在某个服务器程序中,该服务器的配置信息可能存放在数据库或文件……继续阅读 »
7年前 (2017-12-25) 1792浏览 1评论
0个赞
什么是redis
redis是一个key-value内存数据库,是一个速度非常快的非关系型数据库(non-relational database),它可以存储键(key)与5种不同类型的值(value)之间的映射(mapping),可以将内存中存储的键值对数据持久化到硬盘,使用复制特性来扩展读性能,使用客户端分片来扩展写性能。
redis的特性
……继续阅读 »
7年前 (2017-10-29) 1501浏览 0评论
0个赞
静态工厂和构造器都有个共同的局限性,不能很好的扩展大量的可选参数。
对于多种参数的类,我们一向习惯于使用重叠构造器,不同的构造器提供不同的参数,这种构造器模式可行,但是代码难以阅读,客户端代码难以编写。
public class Peopel {
private String name;
private String sex;
private……继续阅读 »
7年前 (2017-09-21) 1290浏览 0评论
0个赞
可以参考 静态工厂方法
用静态工厂方法代替构造器的几个优点:
1.静态工厂方法有名称
我们可以为静态工厂方法起不同的名称,从而在调用时识别出该方法创建的实例是哪种类型的。
2.避免创建重复的对象
我们在使用静态工厂方法时不必在每次调用时创建一个新的对象。可以将构建好的实例缓存起来,进行重复利用,从而避免创建不必要的重复
对象。可以将构造方法私有化,通过一个函……继续阅读 »
7年前 (2017-09-20) 1369浏览 0评论
0个赞