- 博客(14)
- 收藏
- 关注
原创 Mybatis多数据源动态切换,原来这么简单!
首先需要建立两个库进行测试,我这里使用的是master_test和slave_test两个库,两张库都有一张同样的表(偷懒),表名 t_user字段名类型 备注id int主键自增IDnamevarchar名称表中分别添加两条不同数据,方便测试 主数据库记录name为xiaobin,从库为xiaoliu。目录结构开始使用Springboot 整...
2019-09-30 11:18:20 1412
原创 springboot无法跳转页面的问题解决方案
这篇文章主要介绍了springboot无法跳转页面的问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下首先我登录页面直接通过浏览器请求直接访问的,项目结构如图所示登录页面<form action="index" id="frm"> <input type="text" name="dname"> &...
2019-09-29 16:16:14 7106 2
转载 Java如何对一个对象进行深拷贝?5种方法你知道几种
介绍在Java语言里,当我们需要拷贝一个对象时,有两种类型的拷贝:浅拷贝与深拷贝。浅拷贝只是拷贝了源对象的地址,所以源对象的值发生变化时,拷贝对象的值也会发生变化。而深拷贝则是拷贝了源对象的所有值,所以即使源对象的值发生变化时,拷贝对象的值也不会改变。如下图描述:了解了浅拷贝和深拷贝的区别之后,本篇博客将教大家几种深拷贝的方法。拷贝对象首先,我们定义一下需要拷贝的简单对象。/** *...
2019-09-29 15:30:47 4608
原创 你数据库查询怎么这么快?MySQL分页查询优化技巧介绍
当需要从数据库查询的表有上万条记录的时候,一次性查询所有结果会变得很慢,特别是随着数据量的增加特别明显,这时需要使用分页查询。对于数据库分页查询,也有很多种方法和优化的点。下面简单说一下我知道的一些方法。准备工作为了对下面列举的一些优化进行测试,下面针对已有的一张表进行说明。表名:order_history描述:某个业务的订单历史表主要字段:unsigned int id,tinyin...
2019-09-27 20:00:38 458
转载 告诉你一种精简、优化代码的方式
相对于Java8之前的Java的相关操作简直是天差地别,Java8 的流式操作的出现,也很大程度上改变了开发者对于Java的繁琐的操作的印象,从此,Java也走向了函数式编程的道路!我相信只要长期的使用,一定可以精简你的代码,写的更加顺手,你也会喜欢上它的!1 流的创建1.1 流的创建方法既然需要聊聊流的操作,那么,首先还是先看看怎么创建流。创建流的方法有三种,分别是:Stream.of...
2019-09-27 15:02:28 372
原创 解码Redis最易被忽视的CPU和内存占用高问题
我们在使用Redis时,总会碰到一些redis-server端CPU及内存占用比较高的问题。下面以几个实际案例为例,来讨论一下在使用Redis时容易忽视的几种情形。一、短连接导致CPU高某用户反映QPS不高,从监控看CPU确实偏高。既然QPS不高,那么redis-server自身很可能在做某些清理工作或者用户在执行复杂度较高的命令,经排查无没有进行key过期删除操作,没有执行复杂度高的命令。...
2019-09-26 19:49:49 5929 1
原创 Java实现文件的归档和解档
这篇文章主要为大家详细介绍了Java实现文件的归档和解档,具有一定的参考价值,感兴趣的小伙伴们可以参考一下本文实例为大家分享了Java实现文件归档和解档的具体代码,供大家参考,具体内容如下文件的归档package cn.yimen.archiver; import java.io.ByteArrayOutputStream;import java.io.File;import jav...
2019-09-26 16:02:09 589
原创 Java秒杀系统方案优化,高性能高并发实战
Validatorspringboot validation为我们提供了常用的校验注解,比如@notNull,@notBlant等注解,但有时候这些并不能满足我们的需求。比如当用户登录的时候需要输入手机号和密码,那么如何判断手机号码格式是否正确呢,这时就需要我们自定义Validator来校验手机号码首先在pom.xml引入spring-boot-starter-validation依赖&l...
2019-09-25 14:44:28 700
转载 你不知道的我都告诉你,Spring事务5个特性详解
本文将按照声明式事务的五个特性进行介绍:事务传播机制事务隔离机制只读事务超时回滚规则Spring事务传播机制事务的特性原子性(Atomicity):事务是一个原子操作,由一系列动作组成。事务的原子性确保动作要么全部完成,要么完全不起作用。一致性(Consistency):一旦事务完成(不管成功还是失败),系统必须确保它所建模的业务处于一致的状态,而不会是部分完成部分失败。在...
2019-09-24 20:40:27 436
原创 开发过程中Spring Boot自动配置功劳不小,原理成面试官常问问题
小伙伴们是否想起曾经被 SSM 整合支配的恐惧?相信很多小伙伴都是有过这样的经历的,一大堆配置问题,各种排除扫描,导入一个新的依赖又得添加新的配置。自从有了 Spring Boot 之后,咱们就起飞了!各种零配置开箱即用,而我们之所以开发起来能够这么爽,自动配置的功劳少不了,今天我们就一起来讨论一下 Spring Boot 自动配置原理,看完心里有个大概,不至于被面试官问的面红耳赤。1. Spr...
2019-09-24 15:34:40 408
原创 去大厂面试的java程序员肯定对这几个题有印象,高频面试题解析
面试题:说一下的 dubbo 的工作原理?注册中心挂了可以继续通信吗?说说一次 rpc 请求的流程?面试题剖析dubbo 工作原理l 第一层:service 层,接口层,给服务提供者和消费者来实现的l 第二层:config 层,配置层,主要是对 dubbo 进行各种配置的l 第三层:proxy 层,服务代理层,无论是 consumer 还是 provider,dubbo 都会给你生成代...
2019-09-23 17:06:34 404
原创 Spring Boot中配置定时任务、线程池与多线程池执行的方法
这篇文章主要给大家介绍了关于Spring Boot中配置定时任务、线程池与多线程池执行的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring Boot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧配置基础的定时任务最基本的配置方法,而且这样配置定时任务是单线程串行执行的,也就是说每次只能有一个定时任务可以执行,可以试着声明两个方法,在方法内写一个死循环,会发现一直...
2019-09-21 14:06:37 6201
原创 Redis中内存溢出问题和持久化方法
一、内存溢出问题解决办法1. 设置key的过期时间 2. 按需求使用8种数据淘汰策略volatile-lru(Least Recently Used):从已设置过期时间的数据集中挑选最近最少使用的数据淘汰volatile-lfu(Least Frequently Used):从已设置过期时间的数据集中挑选一段时间内使用频率最少的数据淘汰volatile-ttl(Time To...
2019-09-20 10:26:35 2904
原创 SpringMvc 处理请求的流程详情介绍
java 相关的后端框架接触较深的有 Jfinal 和 SpringBoot。Jfinal 因为是国产的框架,当时心里也是有股执念在,就大致过了一遍源码,后续的项目中只要是没有技术栈限制,一般我都会用 Jfinal ,但渐渐发现生态相比 SpringBoot 还是有差距的,为了缩短项目开发周期,继而转变战略去研究了一下 SpringBoot 。生态真的很重要啊!这真不是技术的高低问题。没接触 S...
2019-09-18 16:06:14 383
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人