
java
yohoph
J2EE四年工作经验<br/>具备良好软件工程理论基础;能根据项目实际制定项目计划,并推动项目的顺利进行和掌握项目开发的进程。具备相关执行经验。<br/>具备一定的项目开发框架的设计能力,能够独立的根据产品需求制定项目开发设计解决方案并执行。<br/>精通Oracle/SQL Server数据库及其相关开发;<br/>精通前端JS相关功能开发。 <br/>为人诚恳,待人真诚,具有良好的团队合作精神和沟通协作能力,工作积极上进;有责任感与使命感;对新事物接受快,具备良好自觉与学习能力,勇于接受新挑战;
展开
-
【spring boot+mybatis】注解使用方式(无xml配置)设置自动驼峰明明转换(mapUnderscoreToCamelCase),IDEA中xxDao报错could not autowi
最近使用spring boot+mybatis,使用IntelliJ IDEA开发,记录一些问题的解决方法。1、在使用@Mapper注解方式代替XXmapper.xml配置文件,使用@Select等注解配置sql语句的情况下,如何配置数据库字段名到JavaBean实体类属性命的自动驼峰命名转换?使用spring boot后,越来越喜欢用注解方式进行配置,代替xml配置文件方式。mybatis中也可...转载 2018-03-13 17:13:16 · 2622 阅读 · 0 评论 -
使用Memory Analyzer tool(MAT)分析内存泄漏(一)
前言 在平时工作过程中,有时会遇到OutOfMemoryError,我们知道遇到Error一般表明程序存在着严重问题,可能是灾难性的。所以找出是什么原因造成OutOfMemoryError非常重要。现在向大家引荐Eclipse Memory Analyzer tool(MAT),来化解我们遇到的难题。如未说明,本文均使用Java 5.0 on Windows XP SP3环境。 为原创 2014-12-25 16:30:32 · 510 阅读 · 0 评论 -
jprofiler8安装和配置与集成tomcat监控
注意:安装前先用rpm -q jprofiler查询linux上是否已安装jprofiler JProfiler软件下载地址 http://www.ej-technologies.com/1.到官网下载linux安装包,如:jprofiler_linux_8_1_1.rpm2.安装: rpm -ivh jprofiler_linux_8_1_1.rpm3原创 2014-12-20 18:22:14 · 4671 阅读 · 0 评论 -
JVM gc参数设置与分析
原文:http://hi.baidu.com/i1see1you/item/295c1dc81f91ab55bdef69e5gc日志分析工具: http://qa.blog.163.com/blog/static/19014700220128199421589/Java GC 日志图解: http://www.chinasb.org/archives/2012/09/4921.shtml转载 2014-12-20 11:47:45 · 37153 阅读 · 3 评论 -
常用服务器软件nginx、jvm、centOS网络环境等配置
nginx配置说明 典型nginx配置文件请参考文件说明。这里只解释nginx负载均衡功能实现。1、轮询(默认)每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。2、weight指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。例如:upstream bakend{server192.168.159.10...原创 2015-01-06 17:04:13 · 2536 阅读 · 0 评论 -
JVM 参数详解
原文链接:http://286.iteye.com/blog/1924947-XX 参数被称为不稳定参数,之所以这么叫是因为此类参数的设置很容易引起JVM 性能上的差异,使JVM 存在极大的不稳定性。当然这是在非合理设置的前提下,如果此类参数设置合理讲大大提高JVM 的性能及稳定性。 可以说“不稳定参数”是一柄双刃剑,用的好攻无不克,用的差讲带来麻烦。如何合理利用不稳定参转载 2015-01-06 17:21:03 · 7729 阅读 · 0 评论 -
Gson的自定义序列化的方法
今天做项目的时候,碰到个需求,需要对时间做格式化,Gson提供的dateFormat方法,但是那个只是统一的格式化时间,我这次的序列化有点特殊,有些时间格式的没有时分秒的,但是有些时间格式又十分精确必须要求时分秒。但是在pojo里面的对象全部都是date类型...于是查询Gson的API看能否找到自定义序列化方式的方法。在查询了部分API和google是开发文档之后,找到了部分类似相关的描述:原创 2013-04-25 17:59:54 · 13205 阅读 · 0 评论 -
tomcat启动产生多个java进程并有defunct现象
我们在日常使用tomcat的时候有时候启动tomcat莫名其妙的就会产生多个java进程,而且这些进程还是有效的。这样会导致端口冲突进而使tomcat假死或者挂掉。有时候强行杀掉进程还会出现defunct现象,导致java进程在好久的时间内无法杀掉。这个问题进过调查,暂时发现可能与jdk调用的linux内核的LD_ASSUME_KERNEL参数有关。在经过不断在网上查了些资料显示:首先介绍原创 2014-12-15 20:10:57 · 14832 阅读 · 0 评论 -
Nginx+memcached+tamcat7集群管理配置方案
环境准备:ng原创 2014-05-28 15:46:46 · 999 阅读 · 0 评论 -
tomcat内存溢出总结
原文链接:http://www.blogjava.net/george/archive/2009/08/18/291579.html在生产环境中tomcat内存设置不好很容易出现内存溢出。造成内存原因是不一样的,当然处理方式也不一样。这里根据平时遇到的情况和相关资料进行一个总结。常见的一般会有下面三种情况: 1.OutOfMemoryError: Java heap sp转载 2014-07-22 13:43:01 · 493 阅读 · 0 评论 -
深入理解WeakHashmap
标签:SoftReference WeakReference WeakHashmap finilize原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://mikewang.blog.51cto.com/3826268/880775WeakHashmap(一) 查看API文档,WeakHashmap要点如下转载 2014-03-24 11:27:48 · 570 阅读 · 0 评论 -
一次jvm调优实战
总结内存多占1G左右,CPU利用率没有明显变化,但随着CMS收集抖动,最高达40%,CPU load平均高出1.0左右。几乎0停顿,相比于之前每隔5分钟应用停顿3-4s,调优后的应用几乎没有停顿时间,每次”stop the world”由youngGC引起,最高也不过200+ms。GC总时间开销显著减小20%多,吞吐量显著提升。应用超过500ms的请求响应时间减少3%(一小时的观察转载 2014-12-26 18:51:22 · 994 阅读 · 0 评论 -
单个进程最大线程数
原文链接:http://jzhihui.iteye.com/blog/1271122 windows 操作系统中允许的最大线程数。 ===========================================================================默认情况下,一个线程的栈要预留1M的内存空间而一个进程中可用的内存空间转载 2015-09-11 14:50:24 · 2327 阅读 · 0 评论 -
tomcat性能调优
http://www.365mini.com/page/tomcat-connector-mode.htmhttp://itindex.net/detail/50701-tomcat-bio-nio.aprhttp://www.cnblogs.com/jifeng/p/3327813.htmlhttp://www.oschina.net/translate/tomcat-per转载 2015-11-24 17:07:18 · 635 阅读 · 1 评论 -
InheritableThreadLocal 实现原理
介绍 InheritableThreadLocal 之前,假设对 ThreadLocal 已经有了一定的理解,比如基本概念,原理,如果没有,可以参考:Java 多线程:threadlocal关键字。这里再复习下 ThreadLocal 的原理,因为会对 InheritableThreadLocal 的理解 有重大的帮助:每个线程都有一个 ThreadLocalMap 类型的 threadLocal...转载 2018-02-27 17:24:38 · 966 阅读 · 0 评论 -
spring-boot使用rabbitmq示例
POM文件声明: org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-amqp Directer队列消费原创 2018-01-17 18:06:12 · 857 阅读 · 0 评论 -
linux打包的时候出现的奇葩问题
奇葩问题1.Linux打的war包在linux上无法运行,在windows上能运行2.windows打的war包在windows上可以运行,在linux上也可以运行.elasticsearch的netty依赖问题项目中使用elasticsearch(版本号:5.3.0),服务器在运行后表现形式就是:NoNodeAvailableException[Non原创 2017-08-17 17:25:28 · 888 阅读 · 0 评论 -
java 伪随机数安全性
真正的随机数是使用物理现象产生的:比如掷钱币、骰子、转轮、使用电子元件的噪音、核裂变等等。这样的随机数发生器叫做物理性随机数发生器,虽然很可靠,但是使用计算机很难实现,它们的缺点是技术要求比较高。在实际应用中往往使用伪随机数就足够了。这些数列看似是随机的数,实际上它们是通过一个固定的、可以重复的计算方法产生的。计算机产生的随机数有很长的周期性。它们不真正地随机,因为它们实际上是可以计算出来转载 2017-05-12 19:59:30 · 885 阅读 · 0 评论 -
Tomcat性能优化
Tomcat在各位JavaWeb从业者常常就是默认的开发环境,但是Tomcat的默认配置作为生产环境,尤其是内存和线程的配置,默认都很低,容易成为性能瓶颈。一、思路说明Tomat主要参考资料有:http://tomcat.apache.org/tomcat-8.0-doc/config/ajp.html,具体思路如下:1. 调整tomcat的thread最大连接数的默认值,默原创 2017-01-05 20:02:43 · 728 阅读 · 0 评论 -
mysql/Java服务端对emoji的支持
原文地址:https://segmentfault.com/a/1190000000616820前言:最近开发的iOS项目因为需要用户文本的存储,自然就遇到了emoji等表情符号如何被mysql DB支持的问题。困扰了数日,在就要绝望放弃的边缘,终于完成了转换和迁移。在此特别分析和整理,方便更多人。 问题描述:如果UTF8字符集且是Java服转载 2016-09-22 13:29:50 · 476 阅读 · 0 评论 -
@Transactional用法
http://blog.youkuaiyun.com/blueheart20/article/details/44654007引言: 在Spring中@Transactional提供一种控制事务管理的快捷手段,但是很多人都只是@Transactional简单使用,并未深入了解,其各个配置项的使用方法,本文将深入讲解各个配置项的使用。1. @Transactional的定义转载 2016-09-08 13:22:17 · 8324 阅读 · 0 评论 -
Spring MVC @Transactional注解方式事务失效的解决办法
springmvc spring的事务注解@Transactional冲突后导致事务失效的解决方法转载 2016-08-20 17:19:24 · 776 阅读 · 0 评论 -
利用Eclipse+maven编译Jedis源码成jar包和源码jar包
标签:在GitHub上面,有很多源码都是maven项目,但是很多都没有jar包。去网上找到话第一个是比较难找,第二个是怕不够原汁原味。我们通过maven+Eclipse可以可视化将maven项目生成jar库包还有源码jar包。1.下载maven下载地址:http://maven.apache.org/download.html2,解压 到本地:转载 2016-03-29 17:31:09 · 1417 阅读 · 0 评论 -
CentOS下配置iptables防火墙
在CentOS下配置iptables防火墙,是非常必要的。来我们学习如何配置!在Linux中设置防火墙,以CentOS为例,打开iptables的配置文件:vi /etc/sysconfig/iptables 通过/etc/init.d/iptables status命令查询是否有打开80端口,如果没有可通过两种方式处理:1.修改vi /etc/sy转载 2014-04-15 14:05:45 · 485 阅读 · 0 评论 -
常用开源软件maven坐标
Maven仓库查询 http://search.maven.org 油多不坏菜,这些都加上算了 Xml代码 repositories> repository> id>java-repoid> name>java Repositoryname> url>http://downlo转载 2014-04-15 11:34:59 · 4748 阅读 · 0 评论 -
java InputStream读取数据问题
首先请查看一下JavaAPI,可以看到InputStream读取流有三个方法,分别为read(),read(byte[] b),read(byte[] b, int off, int len)。其中read()方法是一次读取一个字节,鬼都知道效率是非常低的。所以最好是使用后面两个方法。例如以下代码:Java代码 /** * 读取流 * *转载 2014-01-02 10:37:54 · 794 阅读 · 0 评论 -
数据库水平分割垂直分割 使用 Hibernate Shards 进行切分
原文地址:http://www.ibm.com/developerworks/cn/java/j-javadev2-11/当关系数据库试图在一个单一表中存储数 TB 的数据时,总性能经常会降低。显然,对所有数据编索引不仅对于读而且对于写都很耗时。因为 NoSQL 数据商店尤其适合存储大型数据(如 Google 的 Bigtable),显然 NoSQL 是一种非关系数据库方法。对转载 2012-08-31 15:36:33 · 2342 阅读 · 0 评论 -
Tomcat内存设置详解
Java内存溢出详解 一、常见的Java内存溢出有以下三种: 1. java.lang.OutOfMemoryError: Java heap space ----JVM Heap(堆)溢出JVM在启动的时候会自动设置JVM Heap的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)不可超过物理内存。可以利用JVM提供的-Xmn -原创 2012-08-31 14:46:47 · 453 阅读 · 0 评论 -
Hibernate二级缓存调用
原文链接:http://guxiangdiyu87.iteye.com/blog/1630638注:其实hibernate的二级缓存还有其他的解决方案,这个只是现阶段使用得比较多的而已。二级缓存属于sessionfactory级别的缓存,基本就同属全局缓存了。如果使用得当能够极大的提供使用效率,但是,二级缓存 显而易见得会造成数据刷新延迟。。之类的各种问题,这个得让大家自己综合自己的业务水平选转载 2012-08-13 17:33:04 · 598 阅读 · 0 评论 -
md5加密
1.密码123456 MD5后“4QrcOUm6Wau+VuBX8g+IPg==”现在系统用应用了该种算法,貌似不像很标准的MD5加密,实现目的就可以了。可以算是MD5和base64综合体。import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;import sun.misc.BA原创 2012-08-29 18:08:31 · 1510 阅读 · 0 评论 -
Spring多数据源的配置
原文链接地址:http://kindazrael.iteye.com/blog/982531写的非常不错,如果以后架构有考虑使用读写分离架构可以考虑此实现。在大型的应用中,为了提高数据库的水平伸缩性,对多个数据库实例进行管理,需要配置多数据源。在Spring框架被广泛运用的今天,可以很简单的运用Spring中的特性配置动态多数据。 1. 首先配置一个基于c3p0.ComboPool转载 2012-08-03 14:57:19 · 533 阅读 · 0 评论 -
关于java.util.Date的时间的问题
今天在做项目的时候意外的发现关于时间显示出错的问题。总的来说,就是我获得new Date()这个对象的时候,当前的时间比系统时间足足少了8个小时。我感到莫名其妙,当前一般获得系统时间的时候,一般都是采用Date date = new Date();这个方法来获得当前时间的,那是什么原因造成的使用问题呢。。 我仔细的跟进了下执行代码,发现了我以前的项目中为了发送消息的时候获得了当前的时间毫秒数。效果原创 2012-05-25 14:49:18 · 11253 阅读 · 0 评论 -
JDK1.5中的线程池(java.util.concurrent.ThreadPoolExecutor)使用简介
在多线程大师Doug Lea的贡献下,在JDK1.5中加入了许多对并发特性的支持,例如:线程池。 一、简介 线程池类为 java.util.concurrent.ThreadPoolExecutor,常用构造方法为: ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, T转载 2012-06-12 16:26:58 · 708 阅读 · 1 评论 -
分布式系统编程,你到哪一级了?
介绍当分布式系统编程成为你生活中的一部分时,你需要经历一段学习曲线。这篇文章描述了一下我当前在这个领域大致属于哪个层次,并希望能为你指出足够多的错误,从别人的错误中学习,从而使你能以最优的路径通向成功。先声明一下,我在1995年时达到第1级,我现在处于第3级。你自己属于哪一级呢?第0级:完全一无所知每个程序员都从这一级开始。我不会在此浪费太多口舌,因为这实在没什么太多可说的转载 2012-06-08 14:02:53 · 1575 阅读 · 0 评论 -
Java线程池的原理及几类线程池的介绍
转载:http://blog.youkuaiyun.com/preterhuman_peak/article/details/7561635写的还可以,不过个人觉得 如果能结合在线程池满的时候加入等待队列,这样处理高并发的时候就能尽可能的保证可用性了。初步想法,过两天在研究下。刚刚研究了一下线程池,如果有不足之处,请大家不吝赐教,大家共同学习、共同交流。在什么情况下使用转载 2012-05-15 18:04:35 · 344 阅读 · 0 评论 -
Spring2.5.6+Hibernate3.4+Struts2 2.1.6 +JPA集成
总结下吧。所需lib包列表: 配置文件写的倒是很简单,我又不想搞出太多的无用包导致最后系统加载很慢,最后综合了下就尽量少的导包吧。结果到最后都是jar包冲突,搞得我累死啊。简单说明下...后来发现还是有冲突的包和漏包的问题,这个碰到以后再说了 antlr-2.7.6.jar aspectjrt.ja(这个好像是springAop 注解支原创 2012-05-14 17:46:33 · 602 阅读 · 0 评论 -
Java程序里的内存泄漏是如何表现的
大多数程序员都知道使用类似于 Java 的编程语言的好处之一就是他们无需再为内存的分配和释放所担心了。你只需要简单地创建对象,当它们不再为程序所需要时 Java 会自行通过一个被称为垃圾收集的机制将其移除。这个过程意味着 Java 已经解决了困扰其他编程语言的一个棘手的问题 -- 可怕的内存泄漏。果真是这样的吗? 在进行深入讨论之前,让我们先回顾一下垃圾收集是如何进行实际工作的。垃圾收集转载 2012-08-28 13:25:04 · 2313 阅读 · 0 评论 -
IE中iframe跨域丢失Session问题
整合客户的登录时,或者其他一个网站通过iframe时,特别是一个http页面,访问一个https页面时,常常会session失效!1、由于IE的安全限制,将父面所在域加入信任站点就OK了!2、当“父”页面是https的,通过iframe去访问https页面时会报“有不安全的信息”,办法是: src="/" 就OK!3、当客户设置了1时,还是不行时,怎么办呢?又查询了转载 2012-10-25 14:08:32 · 612 阅读 · 0 评论 -
memcached 是一个简单使用示例
memcached作为当前分布式缓存系统,以其的易用性和强大的可维护性,稳定性。广泛应用去现在web服务器的解决方案之中。最近大概了了解下该套系统并写了一个简单的例子。大概从部署到实现吧。1.建立memcached服务端运行程序。memcached作为分布式的缓存服务系统,最大的特点是缓存服务器可以不在本地,所以需要在目标服务器部署memcached的服务端程序。由于是我的开发机是在windo原创 2012-11-27 15:41:09 · 631 阅读 · 0 评论 -
c3p0详细配置
官方文档 : http://www.mchange.com/projects/c3p0/index.html3 30 1000 false属性preferredTestQuery将被忽略。你不能在这张Test表上进行任何操作,它将只供c3p0测试使用。Default: null-->Test保留,并在下次调用g转载 2013-11-21 14:34:24 · 1199 阅读 · 0 评论