自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 收藏
  • 关注

java list对象转换成json

@RequestMapping("query") public ModelAndView query(UserAgent userAgent, HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("category/list"); Long userId = userAgent.ge...

2017-03-30 16:55:15 160

重启服务器出现Can't find file: './mysql/plugin.frm' 和 Unknown table engine 'InnoDB'

      日志分析的kettle跑批无故变慢,分析了多种情况后没有解决问题。决定重启服务器,重启服务器后,发现上面的mysql数据库启动不了,提示如下:  /usr/libexec/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)110222 11:15:07 mysqld_safe Starting mysqld dae...

2017-01-08 17:06:52 247

原创 @Transactional事务控制失效问题

 我记得当时我遇到这个问题的时候,是因为数据库的表,不支持事务!如果mysql不支持存储引擎,它将以MyISAM表创建表,这是非事务性表。一般修改成InnoDB. 假如有兴趣了解mysql中 " engine=innodb " 以及 " engine=innodb和engine=myisam的区别 ",可以读读这篇文章,或许对读者有帮助:http://blog.sina.com.cn/s...

2017-01-08 16:40:07 277

map的遍历方式

在java中遍历Map有不少的方法。我们看一下最常用的方法及其优缺点。既然java中的所有map都实现了Map接口,以下方法适用于任何map实现(HashMap, TreeMap, LinkedHashMap, Hashtable, 等等) 方法一 在for-each循环中使用entries来遍历这是最常见的并且在大多数情况下也是最可取的遍历方式。 正常情况下推荐改方法。 ...

2016-12-29 15:12:07 96

原创 HTTP状态码大全

 一、HTTP状态码 如果某项请求发送到您的服务器要求显示您网站上的某个网页(例如,用户通过浏览器访问您的网页或 Googlebot 抓取网页时),服务器将会返回 HTTP 状态代码以响应请求。 此状态代码提供关于请求状态的信息, 告诉 Googlebot 关于您的网站和请求的网页的信息。一些常见的状态代码包括:200 – 服务器成功返回网页404 – 请求...

2016-12-26 16:40:29 82

发布工程nginx的优化

        公司发布系统比较随意,用户在使用的时候发布系统,会有一定的影响。修改nginx的指定,减少发布时对用户的感知。目前系统有2台服务器,通过nginx做负载均衡,发布之前先去掉要发布这台电脑的指向,发布完成后再更换nginx.conf,原先成原先的负载均衡。代码如下: #/bin/sh# tomcat webapp pathconf110="/usr/local/op...

2016-12-26 15:40:53 71

原创 java8特征之Predicate接口和Consumer接口介绍

在这篇文章中,我将展示如何应用Predicate接口和Consumer接口。 一起看一下Predicate的官方文档:Determines if the input object matches some criteria.即判断输入的对象是否符合某个条件。在Predicate接口中,有以下5个方法(你肯定好奇为何此接口属于函数式接口。如果你这么想,在使用接口前应该...

2016-12-02 16:58:08 292

java8特征之方法引用::

Java 8中方法也是一种对象,可以By名字来引用。不过方法引用的唯一用途是支持Lambda的简写,使用方法名称来表示Lambda。不能通过方法引用来获得诸如方法签名的相关信息。方法引用的分类方法引用分为4类,常用的是前两种。方法引用也受到访问控制权限的限制,可以通过在引用位置是否能够调用被引用方法来判断。具体分类信息如下:引用静态方法 ContainingClass::st...

2016-12-01 17:17:20 86

java8特征之lambda运算

mbda运算符:所有的lambda表达式都是用新的lambda运算符 " => ",可以叫他,“转到”或者 “成为”。运算符将表达式分为两部分,左边指定输入参数,右边是lambda的主体。lambda表达式:1.一个参数:param=>expr2.多个参数:(param-list)=>expr   下面是Java lambda表达式的简单例子: //...

2016-11-30 16:56:02 277

原创 Java并没有没落,人们很快就会发现这一点

 本教程将带领你一步一步地认识这门语言的新特性。通过简单明了的代码示例,你将会学习到如何使用默认接口方法,Lambda表达式,方法引用和重复注解。看完这篇教程后,你还将对最新推出的API有一定的了解,例如:流控制,函数式接口,map扩展和新的时间日期API等等。 允许在接口中有默认方法实现Lambda表达式函数式接口方法和构造函数引用Lambda的范围内...

2016-11-29 16:53:42 211

原创 Concurrent Inserts 并发插入问题

Concurrent Inserts 并发插入:MyISAM 存储引擎支持并发的插入来降低在读和写一个表时候的冲突,如果一个MyISAM 表没有孔在数据文件里(删除中间的记录),一个INSERT 语句被执行增加记录到表的尾部同时SELECT 语句从表里读取数据,如果有多个INSERT 语句,它们将按序列进行,并发的SELECT 语句。结果是并发的INSERT可能不可见。c...

2016-11-28 17:09:23 321

原创 分库分表适用场景(转)

分库分表适用场景分库分表用于应对当前互联网常见的两个场景——大数据量和高并发。通常分为垂直拆分和水平拆分两种。垂直拆分是根据业务将一个库(表)拆分为多个库(表)。如:将经常和不常访问的字段拆分至不同的库或表中。由于与业务关系密切,目前的分库分表产品均使用水平拆分方式。水平拆分则是根据分片算法将一个库(表)拆分为多个库(表)。如:按照ID的最后一位以3取余,尾数是1的放入第1个库(表)...

2016-11-25 17:11:28 225

spring设置多个ViewResolve

      接了一个外包项目开发,有微信前端和后台管理二套界面,为了方便,把2个系统放在了一个工程里面,但是前端开发技术方有了分歧,最后决定后台用velocity,微信用jsp,那么就需要修改一下spring-mvc的配置。1、重写InternalResourceView方法,主要为了高级别的解析器解析不到的时候,抛给低级别的解析器。  package com.studio.core...

2016-11-24 09:20:57 409

pom.xml操作文件

       maven和ant的完美结合案例。       1、加载 ant-contrib包  <profiles> <profile> <id>production</id> <build> <plugins&...

2016-11-23 17:23:24 169

mysql添加用户以及新增数据库和授权

MySQL中添加用户,新建数据库,用户授权1.新建用户登录MYSQL:  @>mysql -u root -p  @>密码创建用户:  mysql>  insert into mysql.user(Host,User,Password) values("localhost","healthyuser",password("adm...

2016-11-22 15:25:13 124

原创 微信分享成功消息获取

var shareData = { img_url: "", img_width: 200, img_height: 200, link: '', desc: '', title: '', appid: 0};document.addEventListener('WeixinJSBridgeReady', func...

2016-11-21 17:00:48 334

原创 微信开发调试2

     昨天网上找了方法用ngrok做调试,运行不起来,可能和fan&墙有关。后来发现有国产版本的ngrok,尝试后可以通过。 1、登陆https://www.ngrok.cc,下载对应版本的ngrok,我下载的是win64版本的。 2、注册并登陆sunny-ngrok,https://www.ngrok.cc/user.html,开通隧道,隧道有收费版和免费版的,具体的区别暂不知...

2016-11-16 17:06:42 78

原创 微商城调试

     在微信开发的时候,必须要输入URL,而该URL必须是外网域名,我们本地没法进行调试,这给我们造成很大的不方便,系统在开发阶段容易出现bug,如果服务器上的版本已经在运行了,我们不能在那基础上进行开发调试,所以能够在本地进行微信开发很重要。1. 找台上网的服务器 2. 要解决微信本地开发,一个关键的问题是能够把本地的IP地址映射到公网上去,从网上找下相关的解决方案,最终借助ng...

2016-11-15 17:15:45 187

nginx访问日志的切割

上一篇中讲解了nginx访问日志的配置,但是配置的访问日志是一个文件的,日积月累这个文件很大,不利于访问日志的分析和存储。用脚本对文件进行切割。 设置日志定期截取一是为了方便查阅,二是为了I/O拥塞(截止到目前笔者维护过的服务器中单台服务器日访问日志大小就达到1.6G,如果不定期截取,由于文件内容较大,后期对文件进程查询、移动时将会严重影响系统性能)。nginx日志格式不像apache、...

2016-11-10 16:38:43 94

nginx访问日志的配置

一、日志分类        Nginx日志主要分为两种:访问日志和错误日志。日志开关在Nginx配置文件(/etc/nginx/nginx.conf)中设置,两种日志都可以选择性关闭,默认都是打开的。1、访问日志        访问日志主要记录客户端访问Nginx的每一个请求,格式可以自定义。通过访问日志,你可以得到用户地域来源、跳转来源、使用终端、某个URL访问量等相关信息。Nginx中访问日志...

2016-11-10 16:28:41 131

原创 分布式系统在互联网的应用

当一个互联网业务获得大众欢迎的时候,最显著碰到的技术问题,就是服务器非常繁忙。当每天有1000万个用户访问你的网站时,无论你使用什么样的服务器硬件,都不可能只用一台机器就承载的了。因此,在互联网程序员解决服务器端问题的时候,必须要考虑如何使用多台服务器,为同一种互联网应用提供服务,这就是所谓“分布式系统”的来源。然而,大量用户访问同一个互联网业务,所造成的问题并不简单。从表面上看,要能满足很...

2016-11-07 16:16:20 620

iBatis的insert返回主键

让iBatis中的insert返回主键,一般是自增主键 <!-- 为了使insert操作能够返回插入记录的id,必须为insert写一个selectKey --><!--   下面是针对Oracle的写法,Oracle没有autoincrement,而是用触发器实现的   CURRVAL是在触发器中定义的--><insert id="in...

2016-11-03 17:07:21 272

用jstack 分析进程运行情况

    dubbo进程启动有问题的时候,会一直waiting不提示错误,这时候可以用java自动的jstack.sh来分析进程的情况。    先查看一下需要分析的java的进程,把进程号码(1449)记录下来,然后进入jdk的目录,运行jstack命令把内容输出的1.txt文件中,对文件进行分析,大致是可以看出进程堵塞的原因。cd jdk1.8.0_101/ps -ef|grep j...

2016-10-31 17:16:51 177

原创 mysql错误:access denied for user 'root'@'%' to reb

 使用Naicat Premium远程连接的mysql上面创建了一个新数据库和新的用户后,给该用户添加这个新数据库权限时出现:access denied for user 'root'@'%' to database xxxx的提示。 错误的原因是root用户在远程连接的MYSQL上面,没有这个新数据库的授权。在本地使用mysql应该不存在这个问题。 解决方法,执行授权:...

2016-10-27 14:05:44 96

nginx的配置文件

通过nginx做web端的系统集群,安装部署好后只要修改一下nginx,启动就ok了。对应的nginx的配置文件:#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info...

2016-10-26 16:07:22 85

解决 Eclipse出现the user operation is waiting的问题

      异常关闭eclipse,重启eclipse后保存代码都会提示:the user operation is waiting for "building workspace" to complete。     开始以为等等就ok了,结果中午2个小时过去还是没有保存成功,百度了如下方法可以解决。     网上一般的解决办法是 :project->Build Automati...

2016-10-21 14:58:22 3223

maven私有仓库jar上传,本地无法识别

maven私有仓库jar上传,本地无法识别,这个问题遇见好几次了。 如下是私有仓库上传jar的页面: 上传后经常出现本地工程无法获取该jar包的情况。检查后发现是因为jar未上传前,pom文件已经去获取过一次,会生成对应的jar包目录,该目录下没有该jar。jar包上传后,eclipse发现本地库已经有目录不会去更新仓库的jar包。 解决方案,找到本地的maven目录,删除j...

2016-10-21 10:30:18 957

关于精度问题

      原价是18元,优惠17.99元,保存的最终价格是0.02元。看了一下代码: discount = (long) (Double.parseDouble(dis)*100); freight = (long) (Double.parseDouble(fre)*100);       用这段代码做了测试就发现问题所在了。是精度问题,然后强制long转换后,把小数后面的...

2016-10-19 15:39:12 105

ajax的应用

     页面中经常会遇见需要更新某个输入框,但是又不至于需要刷新整个页面的情况。这时候就需要使用ajax来做局部页面的更新。这二天刚好写了一个这个功能,简单记录方便以后copy。    通过省份、运费模板以及重量的变化来计算运费的功能。    js的脚本如下: jQuery("#showBtn").click(function(){ if(jQuery("#state")...

2016-10-19 14:56:45 56

java的main方法报错

 有时候eclipse会提示如下错误:错误: 找不到或无法加载主类 com.yiwugou.test.main.DemoProvider 检查jdk是没问题的情况,只要删除eclipse下面的jdk,重新加在即可。    ...

2016-10-09 15:08:38 948

dubbo的简易控制中心monitor

使用dubbo的话, 简易控制中心monitor  简单介绍下monitor:Simple Monitor挂掉不会影响到Consumer和Provider之间的调用,所以用于生产环境不会有风险。配置好了之后可以结合admin管理后台使用,可以清晰的看到服务的访问记录、成功次数、失败次数等…..Simple Monitor采用磁盘存储统计信息,请注意安装机器的磁盘限制,如果要集...

2016-10-08 17:13:59 116

tomcat多域名跳转统一服务器设置

<Host name="work.hezon.cn" appBase="quds" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Alias

2016-09-29 16:52:49 275

Tomcat v7.0 Server at localhost was unable to start within 45 seconds

eclipse 中tomcat启动超时报错如下:Starting Tomcat v7.0 Server at localhost' has encountered a problem Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds. If the server requires more...

2016-09-27 17:01:44 137

jenkins的安装以及配置

     jenkins的下载安装部署还是简单的,可以参考博文http://blog.csdn.net/evankaka/article/details/50518959。部署在tomcat下的一个服务而已,默认8080端口。     下面是脚本是构建war后的脚本操作,基本上大同小异,可以参考修改。 #/bin/sh# tomcat webapp pathtomcatPat...

2016-09-13 15:42:00 62

原创 string split的用法

1. 有时候需要使用某些字符来作为值的合并存储,比如以@作为分隔符, 232332@232323@323232, 用一个属性存储这3个值, 用的时候再拿出来split就可以了.2. 问题是有时候某个值会缺失,比如第一个值没有的情况, @232323@323232  第2,3个值没有的情况 232332@@ ,当然也期望是能返回3个值,只是后边2个值为空字符就行了。事实上,结果不是这样,即...

2016-09-01 09:15:00 179

javax.crypto.BadPaddingException: Given final block not properly padded解决方案

    windows环境的登陆正常,linux环境出现如下错误: javax.crypto.BadPaddingException: Given final block not properly padded at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:975) at com.sun.crypto.p...

2016-08-25 13:37:06 213

maven构建不同环境的部署包

     项目完成后部署工作,每种环境都有各自的配置参数,比如:数据库连接、远程调用的ws地址等等。如果每个环境build前手动修改这些参数,显然太不靠谱。    但是把这些内容全部都写在pom.xml里面也不是很合适,还是分拆出properties文件来存储,那么pom里面如下配置就可以做到同样的效果。 <profiles> <profile&gt...

2016-08-24 16:52:21 94

TOMCAT编码问题

 一个查询的问题,导致测试和开发撕逼,哎,怪我没发不好呵。get方式的编码乱码问题。要设置GET的编码,可以修改server.xml文件中,相应的端口的Connector的属性:URIEncoding="UTF-8",这样,GET方式提交的数据才会被正确解码。  <Connector port="80" protocol="HTTP/1.1" ...

2016-08-24 15:31:31 77

原创 Linux非root用户如何使用80端口启动程序

默认情况下Linux的1024以下端口是只有root用户才有权限占用,我们的tomcat,apache,nginx等等程序如果想要用普通用户来占用80端口的话就会抛出java.net.BindException: Permission denied:80的异常。  解决办法有两种:  1.使用非80端口启动程序,然后再用iptables做一个端口转发。    iptables -t nat -...

2016-08-18 16:39:23 125

linux环境系统部署问题记录

     把reb工程部署到linux上面,遇见如下几个问题,记录备案。    1、reb-service,dubbo的服务提供者,部署的时候,日志显示ip指到外网了,因为linux上是多网卡,所以dubbo的配置文件需要指定本机ip。可以参考http://dubbo.io/的开发文档。<dubbo:provider> host <host> string 可选 ...

2016-08-18 16:38:23 97

空空如也

空空如也

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

TA关注的人

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