自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(261)
  • 资源 (27)
  • 收藏
  • 关注

原创 公共请求(二)利用IOC控制反转转发给分service的bean

EdspExecuter抽象接口:/***通过http请求的接口类**/public interfaceEdspExecuter{public Stringexecute(Map params) throws Exception();}总的执行类,通过IOC根据bean的值寻找具体的实现类:String serviceClass =interfaceTableDTO1.getServiceClass();EdspExecuter executeUnit =(...

2020-11-19 20:32:50 82

原创 公共请求(一)httpCommonMethod公共请求方法,接口及参数放在数据库里

public CommonServiceImpl implements CommonService{private Logger logger=Logger.getLogger(CommonServiceImpl.class);@Autowierdprivate CallInformationDao callInformationDao;@Autowierdprivate InterfaceTableDao interfaceTableDao;//公共方法httpCommonMethodp.

2020-11-14 15:54:39 1209

原创 Java内存区域

新生代主要存一些朝生夕死的对象,老年代存的是比较稳定的对象或者是大对象,持久代用于存放用于存放静态文件,如今Java类、方法等。

2021-11-19 13:37:54 419

原创 分布式事务

今天我们来聊一聊分布式事务,在传统的单体应用中,事务的控制非常简单,Spring框架都为我们做了封装,我们只需简单地使用@Transactional注解就能进行事务的控制,然而在分布式应用中,传统的事务方案就出现了极大的问题:当用户进行下单操作时,我们需要查询出当前下单的用户、购物车中的商品、扣减商品库存,这些内容都被划分到不同的模块中,所以一个下单的操作往往需要远程调用多个模块。假设在执行下单流程中,扣减库存成功,但是在扣减用户余额的时候出现了异常,此时用户模块中会回滚扣减的金额,但由于用户模块和

2021-10-24 20:46:21 233

原创 自定义线程池及补获异步返回是否带参数的处理

1. 为什么需要异步方法?先说结论: 合理使用异步方法可以让业务接口快到飞起!异步方法适用于逻辑与逻辑之间可以相互分割互不影响的业务中, 如生成验证码和发送验证码组成的业务, 其实无需等到真正发送成功验证码才对客户端进行响应, 可以让短信发送这一耗时操作转为异步执行, 解耦耗时操作和核心业务;同理还有文章阅读的业务逻辑 = 查询文章详情 + 更新文章阅读量后再响应客户端, 其实也无需等到阅读量更新后才响应文章详情给客户端, 用户查看文章是主要逻辑, 而文章阅读量更新是次要逻辑, 况且阅读量就算更

2021-10-24 10:01:44 221

原创 @Async注解实现和异步执行注解 @EnableAsync

对于一些耗时较长的运算或者数据处理,在客户端对请求响应要求较高时,我们可以采用异步的方式,先返回客户端通知,然后自动异步执行程序。本文使用 @Async注解实现。1.先搞一个线程池,为啥要用线程池?该用的时候自然就用,这里。不啰嗦线程池的问题,不是本文重点@Configurationpublic class TaskExecutorConfig { @Value("${executor.corePoolSize:1}") private Integer corePoolSize

2021-10-24 09:39:29 326

原创 vue表单提交

1、form标签 @submit.prevent="submit($event)"<form @submit.prevent="submit($event)"> <input type="text" class="form-control" placeholder="请输入姓名" name="username"> <input type="submit" value="登陆" class="login" /></form>me...

2021-10-12 10:46:05 2265

原创 springboot四大组件

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency><groupId>org.mybatis</groupId><artifactId>myb...

2021-09-02 09:11:26 247

原创 Java中如何保证线程安全性

一、线程安全在三个方面体现1.原子性:提供互斥访问,同一时刻只能有一个线程对数据进行操作,(atomic,synchronized);2.可见性:一个线程对主内存的修改可以及时地被其他线程看到,(synchronized,volatile);3.有序性:一个线程观察其他线程中的指令执行顺序,由于指令重排序,该观察结果一般杂乱无序,(happens-before原则)。接下来,依次分析。二、原子性---atomicJDK里面提供了很多atomic类,AtomicInteger,Atom

2021-09-02 08:46:15 875

原创 短时间内插入1000万条数据到数据库

环境:准备测试前,我查看了一下我公司的电脑是4核的(四个子窗口)废话少说,直接附上代码和结果吧 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

2021-08-18 17:11:38 339

原创 将1000万条数据快速插入数据库

我用到的数据库为,mysql数据库5.7版本的1.首先自己准备好数据库表其实我在插入1000万条数据的时候遇到了一些问题,现在先来解决他们,一开始我插入100万条数据时候报错,控制台的信息如下:com.mysql.jdbc.PacketTooBigException: Packet for query is too large (4232009 > 4194304). You can change this value on the server by setting the max_..

2021-08-18 15:32:11 1167

原创 sharding-jdbc读写分离

读写分离不使用Spring引入Maven依赖<dependency> <groupId>io.shardingsphere</groupId> <artifactId>sharding-jdbc-core</artifactId> <version>${sharding-sphere.version}</version></dependency>基于Java编码的规则

2021-08-10 14:27:31 178

翻译 RabbitMQ的重要概念及安装

一文搞懂 RabbitMQ 的重要概念以及安装 一 RabbitMQ 介绍 1.1 RabbitMQ 简介 1.2 RabbitMQ 核心概念 1.2.1 Producer(生产者) 和 Consumer(消费者) 1.2.2 Exchange(交换器) 1.2.3 Queue(消息队列) 1.2.4 Broker(消息中间件的服务节点) 1.2.5 Exchange Types(交换器类型) ① fanout ② direct

2021-08-10 09:37:59 137

原创 字符流与字节流

获取用键盘输入常用的两种方法方法 1:通过ScannerScanner input = new Scanner(System.in);String s = input.nextLine();input.close();方法 2:通过BufferedReaderBufferedReader input = new BufferedReader(new InputStreamReader(System.in));String s = input.readLine();Java..

2021-08-03 15:01:56 281 1

转载 linux常用命令

服务器一般都是命令页面,不像 windows 在图形页面点点鼠标就好,所以掌握些基本的 Linux 命令是很有必要的,不然就无法操作 Linux,更体会不到 Linux 的精髓。这次,我们就来看看关于网络相关的命令。学习网络不应该只局限于理论,作为工程师的我们,掌握一些基本的网络命令对我们帮助会很大,因为平时在远程操作、开发、调试、排查线上问题的时候,会常常用到。Linux 为我们提供了很多网络相关的命令,我们这次就来看看 Linux 系统里有哪些常用的网络命令。如果我们要想操作 Linux

2021-07-21 15:38:13 88

原创 几种分布式锁的解决方案

为了防止分布式系统中的多个进程之间相互干扰,我们需要一种分布式协调技术来对这些进程进行调度,而这个分布式协调技术的核心就是来实现这个分布式锁。分布式锁的几种解决方案分布式使用场景如果我们业务中确实存在这个场景的话,我们就需要一种方法解决这个问题,这就是分布式锁要解决的问题分布式锁实现的三个核心要素:加锁最简单的方法是使用 setnx 命令,key 是锁的唯一标识,按业务来决定命名。比如想要给一种商品的秒杀活动加锁,可以给 key 命名为 “lock_order_商品ID” .

2021-07-15 14:57:25 846

原创 Java语言异步非阻塞模式

本文首先介绍异步非阻塞模式,从线程模型的角度分析阻塞和非阻塞模式的区别。之后介绍 Promise 设计模式的应用场景及工作流程。最后,提供一种简易的 Java 实 现,能够实现基本的功能需求,并做到线程安全。在正式探索技术问题之前,我们先来看看什么是 异步非阻塞模型 。如图1-1所示,展示了两个小人通信的场景:假设左侧小人发起请求,而右侧小人处理请求并发送响应:左侧小人先投出一个苹果request,被右侧小人接收到;右侧小人进行处理后,再投出苹果 response,被左侧小人接收到。我们考察左侧小人

2021-07-15 14:15:49 248

原创 深入理解线程池

多线程并发是Java语言中非常重要的一块内容,同时,也是Java基础的一个难点。说它重要是因为多线程是日常开发中频繁用到的知识,说它难是因为多线程并发涉及到的知识点非常之多,想要完全掌握Java的并发相关知识并非易事。也正因此,Java并发成了Java面试中最高频的知识点之一。本系列文章将从Java内存模型、volatile关键字、synchronized关键字、ReetrantLock、Atomic并发类以及线程池等方面来系统的认识Java的并发知识。通过本系列文章的学习你将深入理解volatile关键字

2021-07-12 22:39:56 137

原创 pinode云服务器注意点

一、建立VPN前提Windows2003安装时候VPN服务程序就已经被安装了只它被集成到“路由和远程访问服务器”控制不过进行VPN配置时候我们必须关闭Windows2003防火墙服务因系统防火墙服务会阻碍VPN连接方法打开服务窗口然后找到“Windows Firewall/Internet Connection Sharing (ICS)”项“禁止”该服务...

2021-02-25 15:40:46 1646 1

原创 kafka

Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。Kafka 有如下特性:以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间复杂度的访问性能。高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条以上消息的传输。支持Kafka Server间的消息分区,及分布式消费,同时保证每个Partition内的消息顺序传输。同时支持离线数据处理和实时数据处理。Scale out:支持在线水平扩展。kafka的术

2021-02-25 10:52:12 111

原创 kafka和storm集群的环境安装

storm和kafka集群安装是没有必然联系的,我将这两个写在一起,是因为他们都是由zookeeper进行管理的,也都依赖于JDK的环境,为了不重复再写一遍配置,所以我将这两个写在一起。若只需一个,只需挑选自己选择的阅读即可。这两者的依赖如下:Storm集群:JDK1.8 , Zookeeper3.4,Storm1.1.1; Kafa集群: JDK1.8 ,Zookeeper3.4 ,Kafka2.12;说明: Storm1.0 和Kafka2.0对JDK要求是1.7以上,Zookeeper3.

2021-02-25 10:51:53 125

原创 HttpURLConnection与HttpClient比较和使用示例

HttpURLConnection与HttpClient比较和使用示例1. GET请求与POST请求HTTP协议是现在Internet上使用得最多、最重要的协议了,越来越多的Java应用程序需要直接通过HTTP协议来访问网络资源。在介绍HttpURLConnection前,我们还是再来说一下URL请求最常用的两种方式:GET请求与POST请求。GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连,如:http://loc.

2021-01-18 10:40:12 230

原创 nohup: ignoring input and appending output to ‘nohup.out’

nohup sh bin/mqnamesrv </dev/null&> /dev/null &

2020-12-25 15:40:50 696 2

原创 Spring为bean提供了两种初始化bean的方式,实现InitializingBean接口里的afterPropertiesSet方法,或者在配置文件中通过init-method指定

配置文件<bean id="testInitializingBean" class="com.TestInitializingBean" ></bean>Main函数如下public class Main { public static void main(String[] args){ ApplicationContext context = new FileSystemXmlApplicationContext("/src/main/java/...

2020-12-17 16:30:11 413 1

原创 @Configuration用于定义配置类,可替换xml配置文件

从Spring3.0,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,这些方法将会被AnnotationConfigApplicationContext或AnnotationConfigWebApplicationContext类进行扫描,并用于构建bean定义,初始化Spring容器。注意:@Configuration注解的配置类有如下要求:@Configuration不可以是final类型; @Configuration不

2020-11-07 18:19:18 527

原创 本地URL直接快速请求本地接口或远程接口

//读取xml文件public static byte[] readFile(String file){try{ byte[] xml;File file2 = new File(file);if(!file2.exists()){return null}FileInputStream fis = new FileInputStream(file);BufferredInputStream bis=new BufferredInputStream(fis);xml=new byte...

2020-11-07 18:13:15 1314

原创 springboot 里main函数启动程序

springboot 里main函数启动批量程序@EnableTransactionManagement@SpringBootApplication@MapperScan(basePackages={"com.test.dao"})public class Tmain implements CommandLineRunner{Logger logger=LogManager.getLogger(Tmain.class); @Resource private TestService t

2020-11-07 16:33:36 1062

原创 IOC控制反转,你了解吗

IoC 思想IOC(控制反转)是一种依赖倒置原则的代码设计的思路,它主要采用(DI)依赖注入的方式来实现。不使用IoC思想的传统模式在传统模式中,对象由程序员主动创建,控制权在程序员手中。程序可以做到正常工作,但仍有一个难以避免的问题。如果用户需求变更,程序员就要修改对应的代码,代码量不大还好,如果代码量巨大的话 修改一次的成本…这个问题就是耦合性过高引起的,修改一次需求,或多或少会造成代码的修改,工作量先不说,维护起来也是极其不便的啊。就如上图中这四个齿轮(对象)一样,互相啮合,如果

2020-11-06 17:29:36 175

原创 如何在SpringBoot中,使用Netty实现远程调用?

众所周知我们在进行网络连接的时候,建立套接字连接是一个非常消耗性能的事情,特别是在分布式的情况下,用线程池去保持多个客户端连接,是一种非常消耗线程的行为。那么我们该通过什么技术去解决上述的问题呢,那么就不得不提一个网络连接的利器——Netty.NettyNetty是一个NIO客户端服务器框架:它可快速轻松地开发网络应用程序,例如协议服务器和客户端。 它极大地简化和简化了网络编程,例如TCP和UDP套接字服务器。NIO是一种非阻塞IO ,它具有以下的特点单线程可以连接多个客户端。 选择器

2020-11-04 17:36:25 242

原创 线程池

2020-11-04 17:35:35 83

原创 BufferedInputStream和BufferOutputStream拷贝

package com.soar.stream;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class Demo5_Buff..

2020-11-03 17:02:07 414

原创 nohup,linux后台挂起

一、Linux 下使用 nohupUnix/Linux下一般比如想让某个程序在后台运行,很多都是使用 & 在程序结尾来让程序自动运行。比如我们要运行weblogic在后台:./startWebLogic.sh &但是加入我们很多程序并不象weblogic一样做成守护进程,可能我们的程序只是普通程序而已,一般这种程序使用 &结尾。但是如果终端关闭,那么程序也会被关闭。但是为了能够后台运行,那么我们就可以使用nohup这个命令。比如我们有个startWebLogi

2020-10-17 16:01:47 5435

原创 解决Eclipse找不到或无法加载主类问题,请重点检查jar包是否出错

以前在用eclipse的时候经常遇到"找不到或无法加载主类"这样的问题,遇到了就很头疼,总是误打误撞的搞好了.但不知道问题的根源在哪,于是问题再次出现的时候又不知道从何下手.今天无聊,打算彻底研究下问题是如何出现的.其实eclipse的java编译器是根据原java文件是否更新而编译java文件的.也就是说原java文件如果没有更新那么就运行上一次已经编译好的class文件.我们做个小实验:进入项目文件夹下删除已经编译好的class文件再次运行程序错误出现了"找不..

2020-10-16 08:53:11 2080

原创 oracle表list分区

create table user(id varchar2(100),addtime DATE,userid varchar2(100),namevarchar2(100)) nologging compressPARTITION BY LIST(addtime)(PARTITION _19000101 VALUES(TO_DATE('1900/01/01','YYYY/MM/DD')))COMMENT ON user.addtime is '添加时间';...

2020-09-17 18:20:22 781

原创 service加上异步

@overridepublic String getselect (String paramString){.......JSONObject jsonResult=null;jsonResult=......;returnjsonResult.toString();}@override@Asynpublic String getselect (String paramString){.......JSONObject jsonResult=null;...

2020-09-17 18:20:12 376 1

原创 nexus中上传了第三方jar包,在本地项目中添加了引用,但就是下载不下来。

问题描述在nexus中上传了第三方jar包,在本地项目中添加了引用,但就是下载不下来。转载文章1. 打开windows -> preferences -> maven,勾选如图所示2. 打开 windows -> show views -> orther -> maven -> maven repositories 视图3. 在maven repositories 视图中的全局repositories上右键,选择Update index...

2020-06-12 18:04:37 3682

原创 tortoisegit的使用

tortoisegit只是个GUI,建立在git基础之上。结构 说明 workspace(工作区) 当前看到的最新的目录内容 Index(暂存区) 暂存区标记了你当前的工作目录中,哪些内容 是被Git管理的。 Repository(本地仓库) 保存了对象被提交过得各个版本。 Remote(远程仓库) 是本地仓库的异地备份,远程仓库的内容可能 被分布在多个地点的处于协作关系的本地仓库,修改,因此他可能与本地仓库同步,也可能不同步。 ..

2020-05-26 22:39:09 664

原创 经典的数据结构

上面根据季度然后根据不同类型来统计数据

2020-05-26 22:07:23 148

原创 Mapped Statements collection does not contain value for 等错误信息

上面的错误信息一般是类或接口名或命名空间没有对应上

2020-05-26 22:03:43 142

原创 postman的几种参数方式请求方式

1.参数为实体类时(参数写全)2.@QueryParam等注解接收具体参数时3.请求路径里面带个参数且用@PathParam等注解接收参数时Postman中post的数据类型post中有以下数据类型1、form-data2、x-www-form-urlencoded3、raw4、binaryPostman请求不同的post数据类型from-datamultipart/form-data,它将表单...

2020-05-26 21:59:13 16518

apipost3.2.3_setup_x64.rar

apipost比postman简洁

2020-07-18

tortoisegit使用说明.docx

tortoisegit图形界面GUI的操作,先安装git,然后安装tortoisegit,tortoisegit只是个GUI,如果喜欢中文可以安装相关的中文包

2020-05-26

空间密码,金融工具利器,哈哈哈

金融空间密码,让你准确知道买卖点位及压力位,从此不在害怕何时进离场

2018-08-09

logviewpro

一款小巧强大的打开日志工具。小型的日志文件还可以用文本打开,但是大型的就没有用了,有些日志文件十几二十几G

2018-08-07

一款很好用的万能打印鸡驱动哦

万能打印机驱动,让你不再受打印的困扰,哈哈哈,来吧,下载吧

2018-07-10

FileSplitter大文件切割

FileSplitter大文件切割,再也不怕大文件无法复制了,哈哈

2018-05-11

memcached lib包

tomcat8和tomcat9安装memcached时需要的下载的lib包,哈哈

2018-03-29

nginx文档说明

nginx复杂的配置浓缩在简短的文档里面,想学配置的下载吧

2018-03-19

nginx1.13.9

nginx下载,该资源适用于windows系统版本下64位系统的安装。

2018-03-19

memcached程序

memcached下载,他是配置在服务器里面的,对应的tomcat需要放置相关的memcached包

2018-03-19

nginx里的memcached配置需要的包

memchached配置需要一些包,这些包放到tomcat里的lib目录下面,然后在tomcat中conf目录下的context.xml,在<Context>标签中加入以下代码即可<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" memcachedNodes="n1:localhost:11211" requestUriIgnorePattern=".*\\.(png|gif|jpg|css|js)$" sessionBackupAsync="false" sessionBackupTimeout="100" transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory" copyCollectionsForSerialization="false" />

2018-03-19

pdm格式读写器

pdm格式的除了powerdesign外还有个pdmreader非常方便。

2017-12-13

maven下的ssm项目简单架构

ssm下的简单架构

2017-08-09

svn客户端与服务端

svn客户端与服务端

2017-07-06

Radmin3.5破解版

Radmin3.5破解版

2017-06-23

apache-tomcat-8.0.30安装版

apache-tomcat-8.0.30安装版

2017-06-23

tomcat.exe9.0

tomcat管理

2017-05-18

MD5解密工具

可以破解简单的密码

2016-12-12

tomcat启动管理工具

tomcat启动管理工具

2016-12-01

解决api-ms-win-crt-runtime-l1-1-0.dll 丢失问题

解决api-ms-win-crt-runtime-l1-1-0.dll 丢失问题

2016-09-09

面试宝典哦

面试中提到的和问到的,大家可以参考

2016-09-05

snipaste截图软件

小巧而好用的截图工具

2016-08-20

图片轮播,轮播

图片轮播功能

2016-08-08

如何用eclipse开发项目

如何用eclipse开发项目

2016-07-25

有人网络调试助手 串口调试助手二合一

有人串口调试助手和网络调试助手合二为一,特别适合调试网络设备。 2. 支持中文和英文双语言,再也不用愁找不到合适的串口调试软件给国际客户用了。 3. 最小化时停留在右下角,不占用任务栏位置,需要时一键调入。 4. 可存储设置的所有参数,端口号,波特率,IP地址等,下次自动载入,节省时间。

2016-04-15

飞秋局域网通讯工具

局域网很好的一款通讯工具

2016-04-15

百度天气接口的一个例子

这是一个天气接口的很好的例子,接口主要用到的是百度天气的接口。

2016-03-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除