Java
Maybebb
I hear and I forget, I see and I remember, I do and I understand.
展开
-
log4j.properties生产环境模版(来自solr)
# Logging levellog4j.rootLogger=INFO, file, CONSOLElog4j.appender.CONSOLE=org.apache.log4j.ConsoleAppenderlog4j.appender.CONSOLE.layout=org.apache.log4j.EnhancedPatternLayoutlog4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5原创 2020-06-12 14:56:52 · 297 阅读 · 0 评论 -
java.lang.UnsupportedClassVersionError: com/shiyi/http/Launcher : Unsupported major.minor version 52
这个问题一般发生在你的编译指定jdk版本高于运行环境jdk版本,我这边是因为指定jdk8编译,在jdk7环境运行。Exception in thread "main" java.lang.UnsupportedClassVersionError: com/shiyi/http/Launcher : Unsupported major.minor version 52.0 at java.la原创 2017-03-16 10:20:14 · 811 阅读 · 0 评论 -
dubbox升级spring cxf版本冲突
问题ERROR|2017-05-19 10:58:24,537|main|org.springframework.boot.SpringApplication|Application startup failedjava.lang.NoSuchMethodError: org.springframework.aop.support.AopUtils.isCglibProxyClass(Ljava/原创 2017-08-08 15:32:50 · 933 阅读 · 0 评论 -
mysql数据库死锁:Deadlock found when trying to get lock; try restarting transaction
查看mysql死锁日志show engine innodb status找到信息中LATEST DETECTED DEADLOCK这一行,可以看到mysql的死锁信息详情------------------------LATEST DETECTED DEADLOCK------------------------2017-08-20 01:57:49 7fa264240700*** (1)原创 2017-08-21 11:25:42 · 28326 阅读 · 3 评论 -
spring boot redis cache 缓存学习
spring boot redis cache 缓存学习自定义redis key前缀自定义redis key自定义全局key过期时间针对单个key自定义过期时间引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cac原创 2017-09-22 17:58:01 · 6758 阅读 · 0 评论 -
spring boot guava cache 缓存学习
spring boot guava cache 缓存学习自定义key自定义全局key过期时间,缓存个数针对单个key自定义过期时间,缓存个数引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifac原创 2017-09-22 17:59:51 · 8035 阅读 · 4 评论 -
spring boot spring security学习
spring boot spring security学习目的在于搭建一个可以在生产使用,基于spring boot+spring security+thymeleaf开发的权限示例。前段页面权限显示url服务端权限验证密码md5加密登录日志项目说明/login /about /403 不需要任何权限 /admin 管理员权限 /user 用户权限 管理员权限 /test 测试系统无原创 2017-09-21 15:27:57 · 656 阅读 · 0 评论 -
spring boot caffeine cache 缓存学习
spring boot caffeine cache 缓存学习自定义key自定义全局key过期时间,缓存个数针对单个key自定义过期时间,缓存个数配置yml配置: 优点:简单缺点:无法针对每个cache配置不同的参数,比如过期时间、最大个数java配置 优点:可以针对每个cache配置不同的参数,比如过期时间、最大个数缺点:java代码引入依赖 <dependency>原创 2017-09-22 18:01:53 · 7183 阅读 · 3 评论 -
guava和caffeine性能测试
guava和caffeine性能测试spring5已经放弃guava,拥抱caffeine。那么为什么这么好的东西需要被淘汰呢,如果对于本地Cache有过深入研究的人应该知道LRU算法基本可以满足大部分的场景,但是很多人为了精益求精,基于LRU的算法,又在此基础上提出了一系列更好的,更有效果的淘汰策略。比如有ARC,LIRS和W-TinyLFU等都提供了接近最理想的命中率,他们这些算法进一步提高了本原创 2017-09-24 22:44:22 · 11103 阅读 · 3 评论 -
ubuntu16.04+fastdfs+nginx分布式文件系统
FastDFS简介FastDFS是一个由C语言实现的开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储,文件同步,文件访问(文件上传,下载)等;解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务。如相册网站,视频网站等等。 同类的分布式文件还有谷歌的GFS,HDFS(Hadoop),TFS(淘宝) FastDFS有两个角色:Tracker(跟踪器),Storage(存原创 2017-11-28 18:51:25 · 3255 阅读 · 17 评论 -
分布式id生成
建表CREATE TABLE `sequence_generator_table` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id', `stub` varchar(50) NOT NULL COMMENT '服务器ip', PRIMARY KEY (`id`), UNIQUE KEY `idx_stub` (`stub`)原创 2017-11-21 15:57:15 · 211 阅读 · 0 评论 -
利用Travis Ci自动编译maven项目
利用Travis Ci自动编译maven项目 Travis Ci目前只支持github上面的项目,所以首先要有一个github账号,并且在上面建立一个项目,用来测试。项目建立之后要创建一个分支,这里取名为test,这里我们只演示从test分支打包之后上传到master分支。Travis Ci设置登录并在My Repositories添加当前的github项目设置相关选项参数 Build原创 2017-12-27 10:09:21 · 1754 阅读 · 0 评论 -
枚举用法
定义枚举接口public interface BaseEnum { String encode(Object o); String decode(Object o);}枚举实现类public enum DemoEnum implements BaseEnum{ JSON_V1{ @Override public String encode(Obje原创 2018-01-04 17:15:43 · 224 阅读 · 0 评论 -
批量将Java源代码文件的编码从GBK转为UTF-8
近在做一个项目,需要从以前的另外一个项目迁移大量源代码过来,但是由于另一个项目采用GBK编码格式,而新项目采用的UTF-8编码格式,如果直接把Java源代码复制到Eclipse中所有的中文信息都出现乱码。将文本文件的编码格式从GBK转UTF-8的方式有很多,比较早以前我处理方式都是自己写程序,从文本文件中用GBK编码读取数据,转为String类型,然后通过UTF-8编码重新写入文本文件实现转码,现在转载 2018-04-10 23:18:22 · 846 阅读 · 0 评论 -
springboot logback日志文件生产配置
logback模版&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;configuration&gt; &lt;include resource="org/springframework/boot/logging/logback/defaults.xml"/&原创 2018-09-26 15:37:28 · 520 阅读 · 0 评论 -
阿里开源项目nacos集群部署
系统环境centos7.2nacos0.8版本下载地址单机部署https://nacos.io/zh-cn/docs/quick-start.html集群部署配置conf/cluster.conf[root@peer2 nacos]# cat conf/cluster.conf#it is ip#example192.168.97.209192.168.97.217配置...原创 2019-03-01 11:07:58 · 1115 阅读 · 0 评论 -
记录一次部署Zookeeper单机伪分布式
本文介绍zookeeper单机伪分布式的环境搭建,本次采用3.4.6版本。 zookeeper下载地址下载wget http://www.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gztar -zxvf zookeeper-3.4.6.tar.gzmv zookeeper-3.4.6 zookeepercd z原创 2017-03-15 22:49:51 · 319 阅读 · 0 评论 -
悲观锁和乐观锁的区别
悲观锁(Pessimistic Lock)顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。乐观锁(Optimistic Lock)顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在原创 2017-03-17 17:19:33 · 483 阅读 · 0 评论 -
基于注解的Spring MVC权限控制方法
需求:要实现一个权限的验证,在web里面通常都是用url路径来控制权限。demo: 步骤1、 首先在springmvc的配置文件里面配置 <mvc:interceptors> <!-- 国际化操作拦截器 如果采用基于(请求/Session/Cookie)则必需配置 --> <bean class="org.springframework.web.servle原创 2015-04-22 17:21:40 · 790 阅读 · 0 评论 -
设计模式——模版方法模式
适用场景:算法或操作遵循相似的逻辑重构时(把相同的代码抽取到父类中)重要、复杂的算法,核心算法设计为模版算法优点: 1. 封装性好 2. 复用性好 3. 屏蔽细节 4. 便于维护 缺点: 继承(java语言是一个单继承的语言)demopackage com.imooc.pattern.template;/** * 模版方法模式 * * 抽象基类,为所有子类提供一个算原创 2015-07-20 12:31:03 · 328 阅读 · 0 评论 -
linux下shell脚本启动java程序jar包
SERVER=/home/lytz/zhengzy/myapp_email cd $SERVERstart(){ echo “start project…” JAVA_HOME=/usr/java/jdk1.7.0_79 export JAVA_HOME PATH=JAVAHOME/bin:.:JAVA_HOME/bin:.:PATH export原创 2015-12-21 10:27:37 · 9900 阅读 · 0 评论 -
java连接oracle示例代码
java连接oracle示例代码/** * 一个非常标准的连接Oracle数据库的示例代码 */public void testOracle(){ Connection con = null;// 创建一个数据库连接 PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement ResultSet resu转载 2015-12-21 10:30:24 · 414 阅读 · 0 评论 -
算法基础
链表求和题目: 你有两个用链表代表的整数,其中每个节点包含一个数字。数字存储按照在原来整数中相反的顺序,使得第一个数字位于链表的开头。写出一个函数将两个整数相加,用链表形式返回和。 样例: 给出两个链表 3->1->5->null 和 5->9->2->null,返回 8->0->8->null 分析: 相同位置相加,如果不足补0,如果加到最后,进位不为0,还需要另外添加一个节点。 答案原创 2016-05-03 11:06:03 · 347 阅读 · 0 评论 -
图解二叉树算法
前序、中序、后序遍历的特性:前序遍历: 1.访问根节点 2.前序遍历左子树 3.前序遍历右子树 中序遍历: 1.中序遍历左子树 2.访问根节点 3.中序遍历右子树 后序遍历: 1.后序遍历左子树 2.后序遍历右子树 3.访问根节点原创 2016-05-04 10:54:23 · 656 阅读 · 0 评论 -
tomcat热部署实现文件下载
热部署路径:/home/zhengzy/tomcat-6/conf/Catalina/localhost[lditms@allinpay1 localhost]$ cat downFile.xml <?xml version="1.0" encoding="UTF-8"?><!-- Licensed to the Apache Software Foundation (ASF) under o原创 2016-06-07 20:18:17 · 518 阅读 · 0 评论 -
Java动态代理详解
Java动态代理详解学习spring的时候,涉及到的AOP(面向切面编程),其原理就是动态代理。在java的动态代理机制中,有两个重要的类或接口,一个是 InvocationHandler(Interface)、另一个则是 Proxy(Class),这一个类和接口是实现我们动态代理所必须用到的。每一个动态代理类都必须要实现InvocationHandler这个接口,并且每个代理类的实例都关联到了一个原创 2016-06-06 10:36:56 · 414 阅读 · 0 评论 -
mybatis使用jdbc username 获取到window账户的用户名
错误Caused by: java.sql.SQLException: Access denied for user 'zheng-zy'@'localhost' (using password: YES) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:998) at com.mysql.jdbc.MysqlI原创 2016-07-04 16:40:31 · 3659 阅读 · 1 评论 -
linux下查询java进程
查询ps -aux | grep java | grep -v grep | awk ‘{print $2}’关闭ps -aux | grep java | grep -v grep | awk ‘{print $2}’ | xargs kill -9原创 2016-07-29 14:02:20 · 566 阅读 · 0 评论 -
java持续部署脚本
#!/bin/shsvn upmvn clean packagecp ./target/helios.jar ./myFile="./server.pid"if [ -f "$myFile" ]; then kill `cat server.pid` rm -rf server.pidfinohup java -jar helios.jar &echo $! > ./原创 2016-08-15 16:10:32 · 482 阅读 · 0 评论 -
centos6.5 nginx 安装部署配置负载均衡
最新版本下载地址http://nginx.org/en/download.html下载源码包wget http://nginx.org/download/nginx-0.8.53.tar.gz解压tar -zxvf nginx-0.8.53.tar.gz cd nginx-0.8.53配置nginx./configure --prefix=/opt/nginx --with-http_stub_s原创 2016-08-15 19:25:44 · 1448 阅读 · 0 评论 -
idea控制台打印乱码
现象当你把idea的编码都设置为utf-8之后,编译项目在tomcat运行时,控制台打印显示乱码,这个时候可以通过设置vm参数编码,来使控制台打印正常。设置步骤Edit Configurations原创 2016-08-28 22:08:39 · 1588 阅读 · 0 评论 -
idea配置测试集
在测试的时候会运行所有测试用例。原创 2016-08-30 09:51:11 · 492 阅读 · 0 评论 -
spring boot集成shiro
添加shiro依赖<dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring</artifactId> <version>1.3.2</version></dependency>编写shiro configuration文件ShiroConfig.javapackage com.ls.s原创 2017-02-18 01:05:01 · 903 阅读 · 0 评论 -
hibernate多对多映射
demo: 员工和权限两张表 Employee.javapackage com.ssh.entities;import java.util.HashSet;import java.util.Set;public class Employee { private Integer id; private String name; private String pwd;原创 2015-04-22 17:14:12 · 323 阅读 · 0 评论