- 浏览: 150473 次
- 性别:
- 来自: 南京
最新评论
-
南疆战士:
871554023 写道怎样做可以生成多页呢本来就是生成多页啊 ...
Freemarker+IText生成pdf文件 -
871554023:
怎样做可以生成多页呢
Freemarker+IText生成pdf文件 -
871554023:
就是生成的pdf文件里只有一页
Freemarker+IText生成pdf文件 -
871554023:
为什么不可以批量生成呢
Freemarker+IText生成pdf文件 -
南疆战士:
qindongliang1922 写道为啥不用的第三方的RPC ...
nio实现Socket长连接和心跳
文章列表
import java.io.Serializable;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* @author
* 2017-09-25
...
JXLS生成excel工具类
- 博客分类:
- J2SE
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;
import java.util.Map;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
impor ...
博主最近开发接口,需要和银行银行进行对接,博主公司服务器在非DMZ区,也就是NAT网络下,在运维兄弟的帮助下,进行了内外网的ip映射,成功打通了网络,其他的tcp协议,http协议接口测试都通过了,其中一个环节是向银行端FTP服务器上传文件,唯独这个不通,总是报socket connect time out错误,百思不得其解,经过大量的尝试后,几乎要放弃了。
博主就这样百度谷歌了大量的资料,也没有找到问题所在,最后干脆看源码,一行行进行debug,最后发现,ftp在hostname在登录前和登录后是不同的,然后就自己研究了下ftp协议,原来ftp上传下载文件,的 ...
springmvc常用注解标签详解
- 博客分类:
- SpringMVC
1、@Controller
在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Model 返回给对应的View 进行展示。在SpringMVC 中提供了一个 ...
1.什么是索引
在数据库中,索引的含义与日常意义上的“索引”一词并无多大区别(想想小时候查字典),它是用于提高数据库表数据访问速度的数据库对象。A)索引可以避免全表扫描。多数查询可以仅扫描少量索引页及数据页,而不是遍历所有数据页。B)对于非聚集索引,有些查询甚至可以不访问数据页。C)聚集索引可以避免数据插入操作集中于表的最后一个数据页。D)一些情况下,索引还可用于避免排序操作。
当然,众所周知,虽然索引可以提高查询速度,但是它们也会导致数据库系统更新数据的性能下降,因为大部分数据更新需要同时更新索引。
例如这样一个查询:select * from table1 where id=4 ...
Jedis封装工具类
- 博客分类:
- Redis
package com.feng;
import com.common.utils.SerializeUtil;
import org.springframework.beans.factory.annotation.Autowired;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.TreeS ...
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script src="https://cdn. ...
java图片等比例缩放
- 博客分类:
- J2SE
package main.feng;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.geom.AffineTransform;
import java.awt.image.AffineTransformOp;
import java.awt.image.BufferedImage;
import java.io.File;
/**
* Created by songfeng on 2017/2/16.
*/
public class ImgUtils {
public ...
Dubbo是一个来自阿里巴巴的开源分布式服务框架,当当根据自身的需求,为Dubbo实现了一些新的功能,包括REST风格远程调用、Kryo/FST序列化等等。并将其命名为Dubbox(即Dubbo eXtensions)。Dubbox主要的新功能包括:
一、支持REST风格远程调用(HTTP + JSON/XML)
dubbo支持多种远程调用方式,例如dubbo RPC(二进制序列化 + tcp协议)、http invoker(二进制序列化 + http协议,至少在开源版本没发现对文本序列化的支持)、hessian(二进制序列化 + http协议)、WebServices (文本序列化 ...
在校期间大家都写过不少程序,比如写个hello world服务类,然后本地调用下,如下所示。这些程序的特点是服务消费方和服务提供方是本地调用关系。
而一旦踏入公司尤其是大型互联网公司就会发现,公司的系统都由成千上万大大小小的服务组成,各服务部署在不同的机器上,由不同的团队负责。这时就会遇到两个问题:1)要搭建一个新服务,免不了需要依赖他人的服务,而现在他人的服务都在远端,怎么调用?2)其它团队要使用我们的服务,我们的服务该怎么发布以便他人调用?下文我们将对这两个问题展开探讨。
publicinterfaceHelloWorldService{
Str ...
Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过。但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面。
因此,一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力 这样的方案来进行部署与实施的。
如下图所示:
下面是我在实际工作过程中所整理的笔记,在此分享出来,以供大家参考。
对软件实现负载均衡的几个软件,小D详细看了一下,从性能和稳定上还是LVS最牛,基本达到了F5硬件设备的60%性能,其他几个10%都有点困难。
不过就因为LVS忒牛了,配置也最麻烦了,而且健康检测需要另外配置Ldirector,其他HAPROXY和NGINX自己就用,而且配置超级简单。
所以小D建议,如果网站访问量不是门户级别的用HAPROXY或者NGINX就OK了,到了门户级别在用LVS+Idirector吧 哈哈
lvs和nginx都可以用作多机负载的方案,它们各有优缺,在生产环境中需要好好分析实际情况并加以利用。首先提醒,做技术切不可人云 ...
1、熟悉几个组件1.1、apache —— 它是Apache软件基金会的一个开放源代码的跨平台的网页服务器,属于老牌的web服务器了,支持基于Ip或者域名的虚拟主机,支持代理服务器,支持安全Socket层(SSL)等等,目前互联网主要使用它做静态资源服务器,也可以做代理服务器转发请求(如:图片链等),结合tomcat等servlet容器处理jsp。1.2、ngnix —— 俄罗斯人开发的一个高性能的 HTTP和反向代理服务器。由于Nginx 超越 Apache 的高性能和稳定性,使得国内使用 Nginx 作为 Web 服务器的网站也越来越多,其中包括新浪博客、新浪播客、网易新闻 ...
在电子商务里,经常会出现库存数量少,购买的人又特别多,大并发情况下如何确保商品数量不会被多次购买。其实很简单,利用事务+for update就可以解决。我们都知道for update实际上是共享锁,是可以被读取的。但是如何在执行时,不被读取呢。
简单来说:假设现在库存为1,现在有A和B同时购买
1、先开启一个事务,执行sql
select stock from good where id=1 for update;//查询good表某个商品中stock的数量
2、查出来后,在程序里在判断这个stock是否为0(你用什么语言,不关我事)
3、接下来执行
...
java常用jar包解释
- 博客分类:
- J2SE
dom4j-1.6.1.jar 解析XML
dwr.jar 是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架
ehcache-1.2.3.jar可以对页面、对象、数据进行缓存,同时支持集群/分布式缓存
eigenbase-properties.jar
eigenbase-resgen.jar
eigenbase-xom.jar
fastjson- ...