自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (4)
  • 收藏
  • 关注

原创 webflux

webflux官方文档https://projectreactor.io/docs/core/release/api/reactor/core/publisher/Flux.html#zipWith-org.reactivestreams.Publisher-写的比较好的文章https://www.jianshu.com/p/7ee89f70dfe5?from=singlemessagehttps://cloud.tencent.com/developer/article/152602

2020-07-22 15:16:39 1108

原创 synchronized锁的验证 [无锁-」偏向锁-」轻量级锁-」重量级锁-」无锁过程]

锁的验证一、JVM 设置参数# 开启偏向锁-XX:+UseBiasedLocking# 关闭偏向锁延迟-XX:BiasedLockingStartupDelay=0# 查看所有的 JVM 参数-XX:+PrintFlagsFinal# 设置重偏向阈值-XX:BiasedLockingBulkRebiasThreshold=20# 批量重偏向距离上次批量重偏向的后重置的延迟时间-XX:BiasedLockingDecayTime=25000# 设置批量撤销阈值-XX:BiasedLo

2020-07-06 15:17:35 477

原创 java并发- ReentrantLock

ReentrantLock一、源码类图ReentrantLock实现了Lock接口,加锁和解锁都需要显式写出,注意一定要在适当时候unlock。公平锁和非公平锁公平锁:线程获取锁的顺序和调用lock的顺序一样,FIFO;非公平锁:线程获取锁的顺序和调用lock的顺序无关,全凭运气。ps:ReentrantLock默认使用非公平锁是基于性能考虑,公平锁为了保证线程规规矩矩地排队,需要增加阻塞和唤醒的时间开销。如果直接插队获取非公平锁,跳过了对队列的处理,速度会更快。public Re

2020-07-06 15:10:08 174

原创 事务

事务一、事务事务管理在系统开发中是不可缺少的一部分,Spring提供了很好事务管理机制,主要分为编程式事务和声明式事务两种。编程式事务:是指在代码中手动的管理事务的提交、回滚等操作,代码侵入性比较强,如下示例:try { //TODO something transactionManager.commit(status);} catch (Exception e) { transactionManager.rollback(status); throw new I

2020-07-06 15:09:04 177

原创 记录一个奇怪的springboot启动问题

记录一个奇怪的springboot启动问题问题描述尝试操作后续问题描述有三个项目:项目A :springboot项目,jar,引用项目B;项目B:common包,jar包,引用项目C;项目C:protobuf项目,jar。项目A打包没问题,启动的时候。build的时候卡住: writing classes [项目c] 。每次都卡在项目c的文件d上,但是文件D从来没修改过。尝试操...

2019-07-28 23:01:33 472

原创 requestmapping 参数没设置好 导致返回的protobuf解析报错

背景:使用protobuf2做与前端的数据交互,自己用junit测试的时候没问题,但是前端人员访问接口,总是报错:com.google.protobuf.InvalidProtocolBufferException: Protocol message end-group tag did not match expected tag.刚开始以为是protobuf jar包版本不一致导致的问题,...

2019-06-13 15:20:46 2012

原创 虚拟机网络设置 centos7

虚拟机网络设置桥接设置dns:vim /etc/resolv.conf设置ens33网卡配置文件: cd /etc/sysconfig/network-scripts/ vim ifcfg-ens33TYPE="Ethernet"BOOTPROTO="dhcp" ( 桥接用dhcp自动连接 )DEFROUTE="yes"PEERDNS=yesPEER...

2018-12-14 14:31:33 242

原创 java中的异常

一直对异常的概念不太清晰== ,这次好好总结一下。首先上图,看一下结构ThrowableThrowable 是所有错误和异常的父类,实现了Serializable接口。Exception异常分为RuntimeException 和 CheckedException。Exception类中只有几个构造方法,而打印异常信息等常用的方法都是来自于父类Throwable的方法Runt...

2018-11-30 10:42:06 184 1

转载 虚拟机centos6网络设置

需要用虚拟机。结果发现网络突然不通了,按这篇文章配置好了。。https://blog.csdn.net/sinat_36564972/article/details/81560733

2018-11-22 16:59:01 346

原创 Redis

安装redis解压包 : tar zxvf redis-3.2.8.tar.gzredis常用的几种使用方式:Redis 单副本Redis 多副本(主从)· Redis Sentinel(哨兵)· Redis Cluster· Redis 自研主从配置一台机器分两个端口启动两个redis实例来模拟主从同步主:修改配置文件daemonize yespidfile /u...

2018-11-13 11:18:51 210 1

原创 java线程池相关问题

java线程池相关问题线程池参数线程池线程提交策略几种常用线程池,以及可能发生的问题:SingleThreadPool 和FixedThreadPoolSingleThreadPool 和FixedThreadPool使用线程池的建议线程池参数corePoolSize 核心线程池大小----10maximumPoolSize 最大线程池大小----30keepAliveTime 线程...

2018-11-12 14:28:37 366

转载 springboot 使用jsp

1. 在pom.xm中加入支持JSP的依赖<dependency><groupId>org.apache.tomcat.embed</groupId><artifactId>tomcat-embed-jasper</artifactId><scope>provided</scope></de

2018-10-10 15:19:16 155

转载 mybatis的sql注入

mybatis中的sql注入: #{id} : #号,启用预编译功能,执行前会先将sql发送给数据库进行编译,执行时,直接使用编译好的sql替换占位符?即可。用的是PreparedStatement ${table}:${}是未经过预编译的,仅仅是取变量的值,是非安全的,存在SQL注入。这个必须手动处理过滤一下输入的内容。下面介绍几种查询避免sql注入的案例1.模糊查询like的两种...

2018-08-29 10:02:49 1432

原创 UEditor富文本编辑器使用记录(上传到阿里云oss文件存储服务器)

最近需要自己做后台写页面,其中需要用到富文本编辑框,可以输入文字,上传图片,视频等,最终获取html存入数据库。这里记录一下开发过程。UEditor富文本编辑器文档:http://fex.baidu.com/ueditor/下载地址:1.4.3.3jsp版本http://ueditor.baidu.com/website/download.html1、ueditor 引入js包。2、m...

2018-08-15 15:21:37 640

原创 docBase

设置tomcat的默认项目,之前访问路径是http://localhost:8080/demo/login.加上context标签,docBase配置后,地址变成http://localhost:8080/login.  <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">...

2018-08-07 12:29:33 3512

原创 java中的自动拆装箱

今天调试程序的时候,有段代码报错,日志报空指针,但是在空指针那行看了半天,都不知道哪里来的空指针。。。然后一步步调试发现是由于对包装类赋值null,在自动拆箱时会报空指针问题。代码类似下面(Student类中id是Long类型):public static void main(String[] args) {        Student student = new Student();     ...

2018-04-20 15:34:52 360

原创 最近复习

docbase: 在server.xml中,表示tomcat默认加载当前项目,不使用项目名直接使用localhost:8080就可以访问到项目一、由使用localhost:8080/sso访问变成使用localhost :1.修改tomcat的server.xml中的<connector>标签中的port为浏览器默认的80端口 这样就可以不需要输入8080端口号直接访问网站。2.在&l...

2018-03-16 15:14:44 176

原创 java面试题整理(面试遇到的,暂无答案)

hashMap的key可以为null吗?springmvc的处理机制? 要超详细的hashMap的数据结构;put方法的过程;举例说明其他的数据结构乐观锁、悲观锁读写分离怎么实现springmvc的事务处理主从数据库的配置切面是什么?(AOP??待查)autowired和resource的区别mysql的引擎有几种?区别是什么hibernate的一级缓存、二级缓存指的是什么?应...

2018-03-13 17:13:30 194

转载 Java的四种引用,强弱软虚,用到的场景

Java的四种引用,强弱软虚,用到的场景从JDK1.2版本开始,把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。1、强引用最普遍的一种引用方式,如String s = "abc",变量s就是字符串“abc”的强引用,只要强引用存在,则垃圾回收器就不会回收这个对象。2、软引用(SoftReference)用于描述还有用但非...

2018-03-12 17:45:21 302

原创 maven dependency:tree

maven报错: Found Banned Dependency: commons-logging:commons-logging:jar:1.1.3 网上查了是包冲突了,使用mvn dependency:tree命令看是哪个包冲突了不知道在哪输这个命令啊 一头雾水 突然看到打开的命令行黑窗口 哈哈 灵机一动其实就是安装下maven然后配置下环境变量, MAVE

2018-01-30 16:07:13 4849 1

原创 eclipse意外关闭,工作空间打开报错

eclipse有个工作空间突然启动报错了::see the error.log  进去错误日志发现报错:Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown。我的解决办法:删除工作

2017-09-18 12:02:42 3378

转载 spring batch

SpringBatch是解决企业数据逻辑较简单,重复性高,大数据量而设计的.从他提供的各种Reader就能看出来.起码我是这样理解的.最适合做的如:数据清洗,数据分析后转移,或者定时的和其他系统交互的地方等.在上一篇文章中,我使用了 JdbcPagingItemReader读取HSQLDB数据库的数据.01bean id="sysAppStoreMapper" 

2017-07-14 11:43:13 399

转载 shiro

http://blog.csdn.net/q975583865/article/details/70808024

2017-06-22 16:20:44 238

转载 关于redis 的一段话 留着看

读: 读redis->没有,读mysql->把mysql数据写回redis写: 写mysql->成功,写redis关系数据库数据写到kv库,默认从kv库读数据,读不到再去sql读然后同步到kv。非要从kv写入到关系数据库,一般也是用在延迟写入上,写操作先存到kv库里,定时再写入到sql里,哪些key已经写入,哪些还没写入,这个一般是用一个长索引数值控制的至于缓存,一般都是读缓存

2017-06-16 15:53:57 280

原创 insert not exists的问题

使用mysql做insert插入时,会判断是否有此记录 not exists,如果没有就插入 ,有就不做操作一、之前的做法:INSERT INTO account (id, name, gender) SELECT #{id}, #{name} , #{gender} FROM account WHERE not exists (select *...

2017-06-14 15:35:46 11590 2

转载 MyBatis的foreach语句详解

原文地址:https://my.oschina.net/linuxred/blog/38802 foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。foreach元素的属性主要有

2017-05-25 14:29:54 292

原创 【MySQL】Delete,Update连表(left join)删除,更新语法

普通的单表更新或删除sql大家肯定滚瓜烂熟,但你有用过连表更新或删除的sql吗, 这个在表间关联来做更新和删除操作非常有用. 本文分表介绍了如何用update ,delete做联表操作的方法, php程序员站 先看mysql update对于联表更新的说明-------------------------- --------------------------您也可以执行包括多个表

2017-05-23 15:26:14 678

原创 一对多 group by 后 查询 count(*) ,但是 count(*)=0的不能显示

查询在ts下面的pt已经完成的个数,但是按照下面的sql查询不出来 count(pt.id已完成)=0的ts记录SELECTts.*,COUNT(pt.id)FROM trial_record ts LEFT JOIN trial_record tg ON ts.id = tg.p_id AND ts.trial_id = tg.trial_idLEFT JOIN tr

2017-05-17 14:56:24 1831

原创 json转换

function allTrialParent(){ $.get('../trial/trialParentList',function(req){if(req!=undefined && req!=null){var data = eval('('+req+')');var dataValue = data.rows;$("#fm_trialParent").combobox

2017-04-27 14:36:34 248

转载 数据库的乐观锁 悲观锁

悲观锁:正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)的修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制,也无法保证外部系统不会修改数据)。 以常用的mysql InnoDB存储引擎为例:加入商品表ite

2017-04-24 11:18:53 318

原创 try catch throws Exception

做一个大方法,要调用很多小方法,如果小方法中出现问题,要在大方法中打印日志,说明是哪个地方出了问题。一般是通过判断返回值标志是否执行正确,但是有的程序是void。这样就可以try catch一下,如果出现问题,向上抛出异常到主方法中。第一次:public static void main(String[] args) {        for (int i = 0;

2017-04-11 16:05:41 455 1

转载 一个sql行转列的问题

select姓名,max(case课程when'语文'then分数else0end)语文,max(case课程when'数学'then分数else0end)数学,max(case课程when'物理'then分数else0end)物理,sum(分数)总分,cast(avg(分数*1.0)asdecimal(18,2))平均分fromtbgroupby姓名

2017-03-30 17:19:48 298

转载 java的可变参数...

1 使用数组为方法参数int sum(int a, int b) {return a + b;}int sum(int a, int b, int c) {return a + b;}int sum(int a, int b, int c, int d) {return a + b + c + d;}看上面代码。我们知道这种重载是无止境的!当函数的参数可以是0~n个时,我们最好的办

2017-03-21 14:13:13 282

转载 java定时任务

定时任务 各种实现方法:http://blog.csdn.net/chenssy/article/details/32703499http://blog.csdn.net/qq_26525215/article/details/53543816   使用@EnableScheduling  @Schedule配置http://blog.csdn.net/qq_335

2017-03-17 17:39:23 272

转载 Eclipse中.setting目录下文件介绍

原文地址:https://yq.aliyun.com/articles/2597#Eclipse项目中系统文件介绍一. 写在前面文章较长,可以直接到感兴趣的段落,或者直接关键字搜索;请原谅作者掌握的编程语言少,这里只研究Java相关的项目;每一个文件仅仅做一个常见内容的简单介绍,这些知识多数来自于实践理解和网络搜索,可能会不全面,更详细的可以看相关的参考资料。二. 概述Eclipse在新建

2017-03-16 16:58:10 404

原创 使用jsonConfig对 object进行过滤

List accountList = accountService.query(); System.out.println(accountList); JsonConfig config = new JsonConfig(); config.setExcludes(new String[] { "name", "pass", "categories"

2017-03-16 14:58:13 1559

转载 Eclipse用四个空格代替Tab键

Java代码规范中提到,tab其实是占8个字符,因此我们可以使用4个空格(4个字符)来代替tab,这样既减少了代码的存储大小,也提供了一种美观的代码。因此修改Eclipse的编码格式有助于我们不用改变我们的习惯而达到替换。具体步骤如下:编辑时,对tab的替换。Windows -> Preferences -> General -> Editors -> Text Editors,勾选上Insert

2017-03-13 10:28:07 1775

转载 java并发编程

java并发编程–Executor框架(一) 摘要:       Eexecutor作为灵活且强大的异步执行框架,其支持多种不同类型的任务执行策略,提供了一种标准的方法将任务的提交过程和执行过程解耦开发,基于生产者-消费者模式,其提交任务的线程相当于生产者,执行任务的线程相当于消费者,并用Runnable来表示任务,Ex

2017-02-27 16:20:12 283

转载 Java对象克隆

Java提高篇——对象克隆(复制)

2017-02-21 17:35:56 625

原创 搭建SSH项目过程

注:http://blog.csdn.net/eson_15/article/details/51277324此文章是根据这个作者的步骤搭建SSH环境时本人遇到的问题,在此作为记录一、新建dynamic web project   1.deployment Descriptor ---右键Generate----可以生成web.xml文件等   2.User Library  : Sp

2017-02-15 17:35:32 329

Java并发体系.png

java并发体系-xmind图,高清。包含:并发基础、java内存模型、锁、常用并发工具类、线程池、atomic类等知识结构图。高清大图!

2020-07-06

UEditor例子,图片上传+视频上传

UEditor富文本编辑器,修改源码,上传图片到oss服务器+上传视频到阿里云vod转码。

2018-08-14

使用spring batch需要在数据库建立的几个表——建表语句

使用spring batch需要在数据库建立的几个表——建表语句(BATCH_JOB_INSTANCE、BATCH_JOB_EXECUTION、BATCH_JOB_EXECUTION_CONTEXT、`BATCH_JOB_EXECUTION_PARAMS` 、`BATCH_JOB_EXECUTION_SEQ` 、`BATCH_JOB_SEQ` 、`BATCH_STEP_EXECUTION` 、`BATCH_STEP_EXECUTION_CONTEXT` 、`BATCH_STEP_EXECUTION_SEQ` )

2017-07-31

apache-tomcat-7.0.68-windows-i64

apache-tomcat-7.0.68-windows-i64

2017-02-08

空空如也

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

TA关注的人

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