- 博客(46)
- 收藏
- 关注
原创 DDD概念以及微服务划分
DDD是 Domain-Driven Design 的缩写,称为领域驱动设计。它是为了解决划分业务边界的问题,是一种架构模式,也是一种划分业务领域范围的方法论。
2023-06-25 18:53:57
2503
原创 maxHttpHeaderSize设置过大导致的内存溢出
一、生产案发现场以及排查过程3月23日晚上22:46:06,front服务挂掉发生告警,查看系统日志:可以看到堆栈溢出。马上猜想到跟下午新增的一个配置有关:server.maxHttpHeaderSize: 10240000(赶紧回滚镜像,恢复生产。。。)猜想归猜想,还是得拿出点证据。服务对应的jvm参数:java-Xms1024m-Xmx1024m-XX:MetaspaceSize=512m-XX:MaxMetaspaceSize=512m...
2021-04-15 19:56:02
7764
原创 记一次生产Mysql死锁
昨晚,生产监控发生告警,发生了死锁。错误日志是:### Error updating database. Cause: com.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException: Deadlock found when trying to get lock; try restarting transaction### The error may involve com.zz.saas.shoplus.product.dao.Pro
2021-03-24 15:54:38
310
原创 IDEA打开项目找不着界面
今天用IDEA打开一个项目,可是发现怎么都找不着项目界面,想着大概率是自己之前不小心把界面拖到了屏幕外面去了????然后上网找到了以下解决方法,这里记录一下:首先关闭对应项目然后找到对应项目目录下的 .idea/workspace.xml 文件编辑此文件,找到以下配置<component name="ProjectFrameBounds"> <option name="x" value="-32000" /> <option name="y" va
2020-06-15 14:33:17
2172
原创 手机号码归属地查询API
手机号码归属地查询API推荐几个可用的免费接口淘宝接口360接口阿里云上面还有一些收费接口附上我对接360接口的代码推荐几个可用的免费接口淘宝接口https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=13822228888360接口http://cx.shouji.360.cn/phonearea.php?number=13366662222阿里云上面还有一些收费接口0.01元/1000次免费10000次附上我对接360接口的代
2020-05-29 09:57:41
4510
1
转载 为什么Synchronized不可中断?
为什么Synchronized不可中断?首先中断操作是Thread类调用interrupt方法实现的。基本上所有人都说Synchronized后线程不可中断,百度后的大部分文章都是这样解释说道:不可中断的意思是等待获取锁的时候不可中断,拿到锁之后可中断,没获取到锁的情况下,中断操作一直不会生效。验证真伪以下为测试理论是否成立的Demo代码示例:publicclassUni...
2020-04-26 16:38:12
3672
4
转载 OpenOffice在linux下如何安装及使用
OpenOffice在linux下如何安装及使用官网OpenOffice安装根据实际的 Linux 版本决定下载类型 在 tar 包所在目录,输入tar -xzvf Apache_OpenOffice_4.1.3_Linux_x86-64_langpack-rpm_zh-CN.tar.gz解压下载的 tar 包 接下来出来的文件在同目录下的zn-CH中,里面包含三个...
2020-03-30 21:33:56
1328
原创 SpringCloud Alibaba Nacos入门及原理解析
一、介绍 Nacos,英文全称Dynamic Naming and Configuration Service,Na为naming命名,co为configuration配置,s为服务,动态命名与配置服务。 Nacos主旨是一个易于构建云原生应用的动态服务发现、配置管理和服务管理平台。它包含了注册中心、配置中心、健康检查、动态DNS、服务元数据和流量管理等功能。直接看...
2019-12-06 17:12:51
996
原创 Java使用openOffice预览文件
1.Java代码编写和依赖https://blog.csdn.net/asing1elife/article/details/82963363①纠正文中错误:下载JODConverter,在其 lib 目录中找到jodconverter-2.2.2.jar,并引入以下 jar 包补充:我是在src/main/resources/下建立了lib目录,并把jar包放进去,然后...
2019-09-04 10:48:09
2300
原创 docker-mysql同步数据库
使用 mysqldump 和 source 指令同步数据库的速度会比在Navicat快很多。1、进入mysql容器docker exec -it mysql bash2、导出(执行命令后可能等待时间有点久,取决于数据量)mysqldump -u test -p --default-character-set=utf8 --hex-blob --databases admindb...
2019-06-24 18:18:24
777
原创 泛谈Docker
一、Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有影响。Docker与虚拟机的区别:传统虚拟化是站在硬件物理资源的基础上,虚拟出多个OS,然后在OS的基础上构建相对独立的程序运行环境。人称硬件虚拟化。而Dokcer则是站在操作系统...
2019-06-24 18:08:26
159
转载 Lua快速入门
-- 单行注释--[[ [多行注释]--]]------------ 1. 变量 & 控制流----------num = 23 -- 数字都是双精度str = 'aspythonstring' -- 像 Python 一样不可变str = "aspythonuse" -- 可以双引号str = [[ 像 Python 的多行注释可用于 ...
2019-06-18 16:24:42
167
原创 延时队列
延时队列,顾名思义是带有延时功能的消息队列,列举几个使用场景:定时发公告 用户下单30分钟后未付款自动关闭订单 用户下单后延时短信提醒 延时关闭空闲客户端连接 ......延时队列实现方案: Java中的DelayQueue DelayQueue是一个无界阻塞队列,只有消息到期才能从中获取到消息。话不多说,实现一个Demo。消息实体:public class Me...
2019-06-13 16:58:24
7839
1
原创 docker 数据卷与挂载目录
一:数据卷 数据卷用来保存对容器的修改/数据,可供容器之间共享和重用,数据卷独立于容器,不会随着容器删除而删除创建数据卷docker volume create my-vol数据卷列表docker volume ls查看数据卷具体信息docker volume inspect my-vol删除数据卷docker volume rm my-vol清...
2018-09-29 21:09:24
6646
原创 docker mysql tomcat部署JavaWeb项目
一、根据之前的文章搭建好docker tomcat、mysql环境(做到本地访问tomcat首页成功,Navicat连接数据库成功)https://blog.csdn.net/deel_feel/article/details/82346540 二、本地IDEA/eclipse随便弄一个javaweb项目连接docker mysql的数据库#数据源jdbc.driverClas...
2018-09-29 20:56:46
425
原创 docker commit/Dockerfile制作镜像,save/load打包镜像
一、commit制作镜像 启动一个容器,对容器修改操作,会保存到容器的存储层,当容器销毁存储层也销毁。但我们可以用commit命令把存储层保存为镜像。①启动一个nginx容器docker run --name nginx -d -p 80:80 nginx②进入nginx容器修改访问首页docker exec -it nginx bashecho '<h1...
2018-09-19 15:21:57
5085
原创 Centos从零开始搭建Docker JavaWeb环境
-----centos安装docker------- 1、安装 yum-utils ,它可以提供 yum-config-manager 来管理repository及扩展包yum install -y yum-utils2、设置稳定的存储库sudo yum-config-manager --add-repo https://download.docker.com/linux/ce...
2018-09-03 11:37:42
448
转载 【scala】可变与不可变的理解
我们定义变量的时候分为var可变变量和val不可变变量。我们使用容器的时候也分为可变容器和不可变容器。List和Tuple本身就是不可变的,set和map分为可变和不可变的,默认为不可变。我们看这样一个例子 1 2 var list = List(“Hello”,“World”); list += “Scala”; 这样...
2018-08-14 09:52:34
1140
转载 深入理解Java内部类
一、什么是内部类? 内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权限)。内部类主要有以下几类:成员内部类、局部内部类、静态内部类、匿名内部类二、内部类的共性(1)、内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是...
2018-07-14 20:20:27
138
原创 读写分离模式不适合使用mybatis二级缓存
某个项目中使用了读写分离,但研究发现这种方式不适合使用mybatis二级缓存。原因分析:mybatis二级缓存是基于同一个namespace的,不同namespace下的操作是互不影响的。读写分离的结果就是每个实体读与写的数据源不同,即namespace也会不同。读和写的二级缓存不是同一个,所以当写更新对象的时候,写的二级缓存自动失效了,但是读的二级缓存却不会失效,还会继续使用该缓存。这样就会导致...
2018-04-23 14:06:28
622
原创 jQuery ajax 异步GET/POST/PUT/DELETE方式发送请求头RequestHeader、RequestBody
Http拥有GET、POST、PUT、DELETE四种操作方式,后台可以利用这四种方式实现Restful风格的查、增、改、删(一一对应)然而后台还需要接收特定的参数,除了可以通过url传参之外,还可以通过请求头RequestHeader或者RequestBody来进行传参。下面演示如何利用jQuery的异步方法传送RequestHeader或者RequestBody参数。GET只能设置Header...
2018-04-23 10:39:04
4783
1
原创 微信测试号实现个人第三方PC端网站二维码登录(代码实现篇)
我页面使用了生成二维码的js,是网上拿到的(太多转载,具体作者是啥不知道(#^.^#))点击打开生成二维码js链接 直接复制js就OK。好,正文来啦,我代码中是使用了springboot(SSM)+redis+shiro。。。页面代码: <!DOCTYPE html><html lang="zh_CN" xmlns:th="http://www.thym...
2018-04-16 17:04:09
8147
7
转载 js生成二维码
<script src="/js/qrcode.js"></script>var qrcode = new QRCode(document.getElementById("code"), { width : 200,//设置宽高 height : 200 });...
2018-04-16 16:27:59
2164
原创 微信测试号实现个人第三方PC端网站二维码登录
这里只提及微信二维码登录PC网站的实现方面,对于微信测试号如何申请,如何授权,本篇博客不去讲解。测试号申请:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login如何接收发送消息、生成菜单、授权等:https://blog.csdn.net/h295928126/article/details/53177001首先,经过摸索,明确...
2018-04-16 16:14:20
11872
3
原创 layui分页控件field参数接收对象问题
第一次使用layui分页控件,遇到的问题。。field: 'type.typeName' 获取不到值。页面代码table.render({ elem: '#bookTable' ,height: 'full-20' ,url: '/admin/getBook' //数据接口 ,request: { pageNam...
2018-04-12 11:36:20
10094
11
原创 Spring Boot Restful API 个人实际应用
大致学习了restful风格,本人结合springboot做了一个小项目,其中提供了获取book的api。Restful API设计如下:本文主要讲解第二种,摒弃直接获取所有图书的API,改用分页+条件查询+排序 获取图书信息。要想实现分页+条件查询+排序的功能,必须要传入相关参数,起初想通过用 /api/book/type='文学'&begin=1&length=10这样的方式传...
2018-03-29 17:39:46
769
原创 Springboot+shiro-ehcache 热部署自动重启时报错
Another CacheManager with same name 'es' already exists in the same VM. 这里报错的意思是在虚拟机上有相同名字的CacheManager ,其中es是ehcache-shiro.xml配置文件ehcache 的名称,热部署自动重启的时候又重新创建了es,然而虚拟机里面依然存在es,就冲突了。正确姿
2018-03-15 14:12:47
1162
原创 【Springboot+Themeleaf模板+Shiro标签】找不到类AbstractProcessorDialect解决
本人在学习使用Themeleaf模板,直接上手项目,然后想在themeleaf上使用shiro标签实现权限控制,然后踩到这个坑,上网一查这方面的知识少之又少。踩下去两天才找到解决方法。Caused by: java.lang.ClassNotFoundException: org.thymeleaf.dialect.AbstractProcessorDialectat java.net.URLCl...
2018-03-14 15:33:33
9705
3
原创 Spring Boot使用FastJson解析JSON数据
阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser。包括自称最快的JackJson;功能强大,完全支持Java Bean、集合、Map、日期、Enum,支持范型,支持自省。下面就演示如何在Spring boot中使用FastJson:先在pom...
2018-03-01 17:38:46
714
原创 Spring AOP三种方式定义增强
一、通过实现(implements)的方式增强BeforeLog:package cn.log;import java.lang.reflect.Method;import org.springframework.aop.MethodBeforeAdvice;public class BeforeLog implements MethodBeforeAdvice { /*
2018-01-20 17:23:34
2156
原创 Spring IOC 依赖注入的五种方式
一、设值注入(属性的setter访问器)dao:package firstIOC;public class UserDao { public void say(){ System.out.println("I am UserDao"); }}service:package firstIOC;public class UserServi
2018-01-20 15:12:53
767
原创 Spring4.x的Java配置方式SpringMVC(Web)
//入口类,此类相当于web.xmlpublic class WebInitializer extends AbstractAnnotationConfigDispatcherServletInitializer{ @Override protected Class[] getRootConfigClasses() { return new Class[] { SpringConfig
2018-01-12 16:34:21
382
原创 Spring4.x的Java配置方式和spring以前的xml配置方式
Spring的Java配置方式:@Configuration //通过该注解来表明该类是一个Spring的配置,相当于一个xml文件@ComponentScan(basePackages = "cn.itcast.springboot.javaconfig") //配置扫描包@PropertySource(value={"classpath:jdbc.properties"},igno
2018-01-12 15:08:36
1541
原创 Shiro与Spring整合
首先把Spring、springmvc环境搭建好(跑起来可以访问页面没报错.).....此处省略一万行代码第一步、在web.xml中配置shiro filter shiroFilter org.springframework.web.filter.DelegatingFilterProxy target
2017-12-22 15:48:25
161
原创 Apache Shiro学习笔记(1)
Apache Shiro是Java的一个安全(权限)框架主要功能:认证、授权、加密、会话管理(让Java se中也可以使用session)、与web集成、缓存Shiro的结构:application code-----> Subject(门面)------>Shiro SecurityManager(核心)--------->Realm(相当于dao、存放用户信息、权限等等数据)
2017-12-22 14:56:41
211
转载 漫谈分布式集群的负载均衡
1 什么是分布式集群为了理解分布式集群这个概念,我们先说说这两个概念:“集群”和“分布式”。艺术来源于生活,计算机科学亦是如此。我们先通过例子,来了解一下现实生活中的“集群”和“分布式”。从开餐馆说起:你开了一家餐馆,自己掌勺后厨(即做菜)。随着生意越来越好,发现自己忙不过来。于是你聘请了两个厨师,你们三位厨师就是一个“集群”。主要的职责是:洗菜、配菜、炒菜。你们关系如下:
2017-09-29 16:05:16
403
转载 Java的字节流和字符流
java的IO流分两种流 字节流 InputStream OutputStream 字符流 Reader Writer 他们都是抽象类 具体实现 字节流 FileInputStream FileOutputStream 字符流 FileReader FileWriter 字符流处理的单元为2个字节的Unicode字符,分别操作字符、字符数组或字符
2017-09-21 10:52:45
162
转载 JsonGateway
JsonGateway是一个java远程服务调用的ajax的接口,它使用Json数据格式在页面上的javascript和后台的 java服务之间进行数据交换。目前它可以调用spring的service,当然也可以调用普通的java类方法。jsonGateway可以自动生成 所配置的java类的javascript包装类,这将使你能够轻松进行ajax远程调用。jsonGateway使用了JQuery
2017-09-18 11:06:04
652
原创 存储过程、定时事件的简单使用
存储过程create procedure del_data()begin-- 执行的sql delete from mmdbi.dianshang where date_key=date_format(curdate(),'%Y%m');end定时事件create event del_eventon schedule EVERY 1 day
2017-09-06 16:34:00
348
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人