GitLab 自动触发 Jenkins 构建
摘要:GitLab 是当前应用非常广泛的 Git Hosting 工具,Jenkins 是非常牛逼的持续集成工具。尽管 GitLab 有内建的 GitLab CI,但它远没有 Jenkins 那么强大好用。Jenkins 和 GitLab 在两者的结合上,都提供了非常方便的工具。在我们向 GitLab p
阅读全文
gitlab修改ip
摘要:gitlab 修改ip的两种方式: 然后执行重启命令即可。
阅读全文
Java性能监控工具:VisualVM
摘要:VisualVM是JDK自带的一款全能型性能监控和故障分析工具,包括对CPU使用、JVM堆内存消耗、线程、类加载的实时监控,内存dump文件分析,垃圾回收运行情况的可视化分析等,对故障排查和性能调优很有帮助。在windows中安装JDK后,VisualVM位于%JAVA_HOME%/bin/下,直接
阅读全文
Eclipse的Git插件Egit: merge合并冲突具体解决方法
摘要:稍微总结下弄了半个下午的egit的merge合并冲突解决方法,网上看的都是一个模板出来的,看的糊里糊涂,花了很多时间去实验整个合并流程.. 前提工作 创建一个普通JAVA工程Test,创建一个类Test,写点东西并加入到本地git库; 创建个develop分支,创建个Develop类,修改Test类
阅读全文
ibatis 中动态SQL查询和动态标签嵌套的使用
摘要:ibatis 动态查询对于从事 Java EE 的开发人员来说,iBatis 是一个再熟悉不过的持久层框架了,在 Hibernate、JPA 这样的一站式对象 / 关系映射(O/R Mapping)解决方案盛行之前,iBaits 基本是持久层框架的不二选择。即使在持久层框架层出不穷的今天,iBati
阅读全文
Java中static、final、static final的区别
摘要:final: final可以修饰:属性,方法,类,局部变量(方法中的变量) final修饰的属性的初始化可以在编译期,也可以在运行期,初始化后不能被改变。 final修饰的属性跟具体对象有关,在运行期初始化的final属性,不同对象可以有不同的值。 final修饰的属性表明是一个常数(创建后不能被修
阅读全文
SpringMVC Bean Validation
摘要:对于任何一个应用而言在客户端做的数据有效性验证都不是安全有效的,这时候就要求我们在开发的时候在服务端也对数据的有效性进行验证。 SpringMVC 自身对数据在服务端的校验(Hibernate Validator)有一个比较好的支持,它能将我们提交到服务端的数据按照我们事先的约定进行数据有效性验证,
阅读全文
httpclient post请求中文乱码解决办法
摘要:在使用httpclient发送post请求的时候,接收端中文乱码问题解决。 正文: 我们都知道,一般情况下使用post请求是不会出现中文乱码的。可是在使用httpclient发送post请求报文含中文的时候在发送端数据正常但是到了服务器端就中文乱码了。 解决办法: 发送端进行设置编码如下: 主要代码
阅读全文
spring jar包的作用
摘要:spring.jar是包含有完整发布的单个jar 包,spring.jar中包含除了spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到 spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类的。 除了spring.jar文件,Spr
阅读全文
JVM JDK1.8 以后的新特性 VisualVM的安装使用
摘要:一.JVM在新版本的改进更新以及相关知识 1.JVM在新版本的改进更新 图中可以看到运行时常量池是放在方法区的 1.1对比: JDK 1.6 及以往的 JDK 版本中,Java 类信息、常量池、静态变量都存储在 Perm(永久代)里。类的元数据和静态变量在类加载的时候分配到 Perm,当类被卸载的时
阅读全文
Java内存区域与内存溢出异常(jdk 6,7,8)
摘要:运行时数据区域 Java虚拟机在执行Java程序的过程中会把它关联的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范(Java SE 7版)》的规定,Java虚拟
阅读全文
jvm 堆栈概念
摘要:关于JVM的工作原理以及调优是一个向往已久的模块,终于有幸接触到:http://pengjiaheng.iteye.com/blog/518623 那就顺着这个思路,来梳理一下自己看到后的结论和感想。 首先,垫些基础,下面会用到 1.Java基本数据类型的长度 2.解释【位-字节-字符】概念 关于编
阅读全文
Xms Xmx PermSize MaxPermSize的含义
摘要:参数的含义 -vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M -vmargs 说明后面是VM的参数,所以后面的其实都是JVM的参数了 -Xms128m JVM初始分配的堆内存 -Xmx512m JVM最大允许分配的堆内存,
阅读全文
javax validation--参数基础校验
摘要:Bean Validation 1.1当前实现是hibernate validator 5,且spring4才支持。接下来我们从以下几个方法讲解Bean Validation 1.1,当然不一定是新特性: 因为大多数时候验证都配合web框架使用,而且很多朋友都咨询过如分组/跨参数验证,所以本文介绍下
阅读全文
Spring+mybatis+PageHelper
摘要:为了更简单的实现数据库分页,我们不探讨自己手动修改sql语句分页,这里关于PageHelper自己配置是出现的问题进行记录下: 我采用的是Maven代码托管,在pom.xml进行如下配置: <!-- Mybatis 分页插件 PageHelper 5.0.2包 --> <dependency> <g
阅读全文
查看mysql执行时间
摘要:mysql的 profiling不是默认打开的 查看profiling是否找开 打开profiling 使用 mysql> show tables; + + | Tables_in_test | + + | test | | user | + + mysql> select * from test;
阅读全文
Spring AMQP
摘要:目录 Message Exchange Queue Binding ConnectionFactory Routing Connection Factory AmqpTemplate Sending messages Receiving messages Asynchronous Consumer异
阅读全文
HMAC的JAVA实现和应用
摘要:1、简介: HMACSHA1 是从SHA1 哈希函数构造的一种键控哈希算法,被用作 HMAC(基于哈希的消息验证代码)。 此 HMAC 进程将密钥与消息数据混合,使用哈希函数对混合结果进行哈希计算,将所得哈希值与该密钥混合,然后再次应用哈希函数。 输出的哈希值长度为 160 位。 在发送方和接收方共
阅读全文
StringRedisTemplate常用操作
摘要:stringRedisTemplate.opsForValue().set("test", "100",60*10,TimeUnit.SECONDS);//向redis里存入数据和设置缓存时间stringRedisTemplate.boundValueOps("test").increment(-1
阅读全文
IntelliJ IDEA添加过滤文件或目录
摘要:在idea上使用svn后,发现即使svn窗口添加过滤正则没有忽略.iml文件的提交,安装ignore插件后没发现有svn的忽略选项,最后发现这样设置就可以了: 1、Settings→Editor→File Types 2、在下方的忽略文件和目录(Ignore files and folders)中添
阅读全文
为什么要使用ConcurrentHashMap
摘要:好久没写过技术性文章了,还是要坚持下去。掌握的知识,能写出来或者是讲给别人听才是真正的掌握了知识,如果不善于给别人讲,实际上还是没有真正掌握相关的知识,挑个简单的写吧。 面试的时候经常会被问到hashmap和hashtable的区别。心里就开始鄙视这个面试的人了,不要拿这种基础的问题来为难一个抗战都
阅读全文
volatile关键字解析
摘要:volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于v
阅读全文
Spring Boot MyBatis 通用Mapper 自动生成代码
摘要:一、在pom.xml文件中进入mybatis自动生成代码相关的jar包: 注意: <configurationFile>标签中配置的是“generatorConfig.xml”文件位置。 二、修改项目配置文件application.properties: 三、创建generatorConfig.xm
阅读全文
使用mysql乐观锁解决并发问题
摘要:案例说明: 银行两操作员同时操作同一账户。比如A、B操作员同时读取一余额为1000元的账户,A操作员为该账户增加100元,B操作员同时为该账户扣除50元,A先提交,B后提交。最后实际账户余额为1000-50=950元,但本该为1000+100-50=1050。这就是典型的并发问题。 乐观锁机制在一定
阅读全文
使用Redis分布式锁处理并发,解决超卖问题
摘要:一、使用Apache ab模拟并发压测 1、压测工具介绍
ab−n100−c100http://www.baidu.com/−n表示发出100个请求,−c模拟100个并发,相当是100个人同时访问。还可以这样写: ab -t 60 -c 100 http://www.baidu
阅读全文
浅析 pagehelper 分页
摘要:之前项目一直使用的是普元框架,最近公司项目搭建了新框架,主要是由公司的大佬搭建的,以springboot为基础。为了多学习点东西,我也模仿他搭了一套自己的框架,但是在完成分页功能的时候,确遇到了问题。 框架的分页组件使用的是pagehelper,对其我也是早有耳闻,但是也是第一次接触(ps:工作1年
阅读全文