自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Deadlock found when trying to get lock,mysql死锁

最近遇到一个死锁问题,我整理了一下,写了一个例子。 初始化表 国籍表: CREATE TABLE `nationality` ( `id` INT ( 11 ) NOT NULL AUTO_INCREMENT, `type` VARCHAR ( 64 ) COLLATE utf8mb4_unico...

2020-06-13 15:22:59 32 0

原创 eureka服务端源码分析

服务端主要功能 服务的注册 服务的续约 服务的下线 给客户端提供服务信息 这里不对每一点就讲解,就讲一下服务的注册。 如果看过eureka客户端的代码,可以知道,eureka客户端是通过发送http请求向服务端注册信息的,这里来看一下入口代码: /** * Registers...

2020-03-08 17:10:56 47 0

原创 eureka客户端源码分析

eureka客户端可以完成的事情 eureka客户端可以获取其他客户端的信息,用于向其他客户端发送请求。 eureka客户端可以把自己注册到注册中心,这样其他客户端就可以发现本客户端,直接来调用本客户端。 相关依赖 首先要是springboot应用 <dependency...

2020-03-07 22:29:13 91 0

原创 三数之和

题目 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例: 给定数组 nums = [-1, 0, 1...

2020-02-03 09:18:49 155 0

原创 springboot手动封装一个starter

准备要封装的组件 <groupId>com.itpsc</groupId> <artifactId>com-itpsc-service</artifactId> <version>1.0</version&g...

2020-01-21 09:43:28 66 0

原创 uml用户图

用例图用来主要用简明的视图描述系统的功能。 用例图示例 关联关系 继承关系 依赖关系 扩展关系

2019-12-13 15:57:44 50 0

原创 spring源码分析

spring在我们的java开发中使用很多,IOC作为spring最基础的组件,被大家所熟知,但是spring具体是怎么使用这个特性的呢?,本文主要讲解一下IOC的注册过程。从spring的启动开始,这里没有使用mvc的模块,主要是想单独分离出来讲IOC. 预先学习 这里是一个很简单的例子,但是...

2019-11-09 12:31:09 52 0

原创 redis集群搭建

用一台linux,创造3 master、3 salve环境。 reids采用redis-3.2.4版本 安装过程 下载并解压 //目录自行选择 cd /usr/mypack/redis wget http://download.redis.io/releases/redis-3.2.4.tar...

2019-08-25 17:36:58 28 0

原创 ThreadLocal阅读

ThreadLocal的实现是通过在线程内部保存了一个map结构,当前线程使用变量时,获取当前线程内部的map,达到了线程本地变量的目的,下面是对源码加了一些注释,有误请指正。 package com.mr.study.threadlocal; import java.lang.ref.Weak...

2019-08-04 13:38:51 36 0

原创 NIO2.0 AIO入门

NIO 2.0引入了新的异步通道的概念,并提供了异步文件通道和异步套接字通道的实现。异步通道提供一下两种方式获取操作结果。 通过java.util.concurrent.Future类来表示异步操作的结果; 在执行异步操作的时候传入一个java.nio.channels。 CompletionH...

2019-07-28 12:19:30 80 0

原创 linux下搭建tomcat服务器并发布web项目

本文主要入门讲一下linux服务器下如何跑通一个javaweb项目,很简单很入门。 tomcat相关配置 1.下载 首先去tomcat官网下载tomcat包,tomcat9下载地址,我这里下载了zip包,下载好了之后上传到linux服务器上。 2.解压配置 //将压缩文件tomcat9.zip在指...

2019-06-15 18:50:25 333 0

原创 java项目配置多数据源

有些web应用需要连接多个数据源,本文讲解一下如何使用多个数据源,大题思路是这样的,系统启动的时候创建多个数据源,然后具体执行sql的时候去切换数据源执行对应的sql。如何切换数据源呢?spring提供了一个AbstractRoutingDataSource抽象类,只要继承这个类就可以了,这个类需...

2019-05-26 13:59:36 3307 1

原创 spring整合mybatis

本文不去深入探讨怎么整合过程,就是说一个流程,在一个spring应用中整合成功可以跑起来,例子用了mysql数据库。 相关依赖 依赖不包含spring原来的依赖 <!--mybatis--> <dependency> ...

2019-05-25 22:07:30 20 0

原创 spring拦截器

spring拦截器实现HandlerInterceptor接口或者继承HandlerInterceptorAdapter类都可以实现,主要有三个方法,preHandle在调用具体的controller之前执行,postHandle在调用controller之后,但是页面渲染之前执行,afterCo...

2019-05-25 21:11:37 540 0

原创 java连接ftp工具类

这里使用了org.apache.commons.net.ftp这个类库,仅仅是对这个类库稍微封装了一下方便使用,这里写了一个工具类,大家可以参考一下。 依赖 <dependency> <groupId>commons-net</...

2019-05-25 14:36:50 3270 0

原创 logback基本配置与使用

在投产项目中,日志的使用是必须的,一般情况下日志分两个,一个需要在控制台打印出来,这个方便开发的时候调试,一个需要把日志按日期保存,方便生产出问题的时候查询日志。logback实现了slf4j-api,使用也很简单,只需要在资源目录下配置一个logback.xml即可,系统启动的时候会默认读取这个...

2019-05-25 13:01:29 123 0

原创 快捷获取Properties中数据

写了一个工具了,可以方便的访问.properties文件中的数据,代码如下 public final class MyProperties { private final static String[] PATHS = new String[]{"parameter.proper...

2019-05-23 22:31:48 88 0

原创 springmvc项目集群模式下如何维护session

传统的session是维护在内存中的,如果部署多个服务,通过ngix转发,用户登录完成后的请求可能转发到另外一个服务上去,内存中就没有用户的session,就会判定为用户没有登录,spring-session项目可以把session维护到redis等数据库中,这样多个服务可以共用session,就...

2019-05-14 22:41:37 139 0

原创 使用google的DefaultKaptcha生成验证码

配置生成规则 <!-- 配置验证码 --> <bean id="captchaProducer" class="com.google.code.kaptcha.impl.DefaultKaptcha"> ...

2019-05-13 22:57:13 574 0

原创 spring项目解决跨域问题

服务器端本身是支持跨域的,所有请求都可以进入后台,只是返回的时候如果不是同源请求,js不接受,防止安全问题,需要服务端在返回头中明确规定支持,则可以接受跨域 设置过滤器允许跨域 <!-- 跨域配置 --> <bean id="corsFilter&quo...

2019-05-13 22:54:03 590 0

原创 spring,springmvc搭建一个只返回数据的项目

本文主要讲述一下利用spring、springmvc搭建一个返回json数据的项目,主要是一些配置文件。 pom.xml中需要的依赖 <properties> <project.build.sourceEncoding>UTF-8</proje...

2019-05-12 19:20:57 136 0

原创 springboot打成jar包后无法读取resource下资源

在开发环境下我们可以用 ResourceUtils.getFile("classpath:pictures/a.png"); 的方式读取资源,但是打成jar包后,访问就报错了,jar只能以流的方式读取,如下 ClassPathResource resource = new C...

2019-04-20 21:27:54 701 0

原创 spring boot 使用https,并且http自动跳转https

配置使用https springboot内部已经集成了,引入密钥文件,修改相关配置文件就可以使用https了, server: port: 8443 ssl: key-store: classpath:www.aaa.cn.jks key-store-password: a...

2019-04-20 12:48:28 1710 0

原创 oracle创建表空间

/*第1步:创建临时表空间 **/ create temporary tablespace zhan_temp tempfile 'H:\oracle\data\zhan_temp.dbf' size 50m autoextend on next 50m maxsi...

2019-02-07 11:14:00 62 0

原创 javaweb应用初始化spring applicationContext过程

通过ContextLoaderListener初始化applicationContext javaweb引用启动时会加载web.xml,并且会执行配置的listener,在这里注册一个监听器,在内部初始化applicationContext就可以了。这里监听的类是org.springframewo...

2018-10-23 09:25:19 448 0

原创 mybatis-generator for oracle

1.先去https://github.com/mybatis/generator/releases下载架包 2.设置xml文件 &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!D...

2018-10-21 12:01:08 527 0

原创 springboot+vue解决跨域问题

后台添加过滤器,允许跨域 @Configuration public class GlobalCorsConfig { @Bean public CorsFilter corsFilter() { CorsConfiguration corsConfiguratio...

2018-10-14 20:23:29 2081 0

原创 java类文件路径

类文件路径就是使用了classpath的路径找对应的资源文件,即src路径。与“相对路径”比较:能够通过“set classpath=路径 ” 这方式指定类文件路径,这样在不同盘符下执行java文件就不会报错 注意事项:classpath路径中"/"是指在src文件路径(sr...

2018-10-06 12:44:38 997 0

原创 java8流的创建

流的创建有很多方式,废话不多说,看例子就懂了。 public class CreatingSteams { /** * 显示流 * * @param title * @param stream * @param &lt;T&am...

2018-10-06 12:21:32 169 0

原创 oracle sql developer连接oracle报错

安装了oralce 11g,使用PLSQL Developer使用是正常的,用sqldeveloper就报错,连接不上,具体错误如下, , 网上找了很多方法,原来是jdbc下面的jar包版本太高了,原来是ojdbc8.jar换成ojdbc6.jar就可以了。...

2018-09-16 18:49:19 249 0

原创 线程池执行线程任务花费的时间

public class CounterPoolExecutor extends ThreadPoolExecutor { private AtomicInteger count = new AtomicInteger(0);//统计执行次数 private long startT...

2018-05-29 22:36:34 1575 0

原创 简单的线程池实现

为了节省系统在并发时不断创建和销毁线程所带来的额外开销,就需要引入线程池。线程池的基本思想是,线程使用完后并不销毁,而是一直处于等待状态,如果下一个任务进入,可以再使用这个线程执行,这样就减少了线程的创建和销毁。 首先是线程池的实现: package com.mr.smart.future...

2018-05-26 22:08:45 89 0

原创 java文件下载(生成多个二维码文件,下载zip文件)

最近公司有个需求,需要点击一个按钮生成二维码,然后把二维码打包成zip文件,然后下载zip文件,于是我做了个demo,这里分享一下。 文件下载不能异步请求,因为我需要url后面动态拼接参数,所以这里用了button,具体前台代码如下可以实现下载(看压缩文件下载就可以了): &lt;bo...

2018-05-26 21:19:13 2209 0

转载 微信小程序点击控件修改样式

微信小程序中不支持直接操作dom,要实现这种效果,我们需要通过设置data,然后利用数据和界面的双向绑定来实现它。 第一步:在wxss中定义被点击和未被点击的样式,如下: .service_selection .is_checked{ border: 1px solid #FE00...

2018-05-10 20:20:40 586 0

原创 URLConnection获取网页的数据

package com.strr.connection; import java.io.IOException; import java.net.URL; import java.net.URLConnection; import java.nio.charset.StandardCharset...

2018-05-04 23:14:30 176 1

原创 jquery选择器

基本选择器 选择器 描述 返回 示例 id 根据给定的id匹配一个元素 单个元素 $(“#test”)选取id为test的元素 .class 根据给定的类名匹配元素 集合 元素 $(“.test”)选取所有class为test的元素...

2018-04-14 15:48:11 78 0

原创 java之Future模式

产生原因 当某一段程序提交了一个请求,期望得到一个答复。但非常不幸的是,服务程序对这个请求的处理可能很慢。比如,这个请求可能是通过互联网、HTTP或者Web Service等并不太高效的方式调用的。在传统的单线程环境下,调用函数是同步的,也就是说它必须等到服务程序返回结果后,才能进行其他处理。...

2018-03-24 22:50:49 69 0

转载 Java中的String为什么是不可变的

什么是不可变对象? 众所周知, 在Java中, String类是不可变的。那么到底什么是不可变的对象呢? 可以这样认为:如果一个对象,在它创建完成之后,不能再改变它的状态,那么这个对象就是不可变的。不能改变状态的意思是,不能改变对象内的成员变量,包括基本数据类型的值不能改变,引用类型的变量不能指...

2018-03-22 09:48:59 109 0

原创 Javascript块级作用域

Javascript没有块级作用域的概念。这意味着在块级语句中定义的变量,实际上是在包含函数中而非语句中创建的。 eg: function outputNumbers(count){ for(var i=0;i&lt;count;i++){ alert(i)...

2018-02-17 20:43:01 133 0

原创 CountDownLatch的使用

Latch有“门锁”的意思,当门没有打开时,N个人不能进入屋内的,也就是N个线程是不能继续向下运行的,支持这样的特性可以控制线程执行任务的时机,使线程以“组团”的方式一起执行任务。 实现等待与继续运行的效果分别需要使用await()和countDown()方法来进行。调用await()...

2018-02-14 17:37:44 93 0

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