
Java-Web
ZhiYuanYe
.
展开
-
Java Web 常用工具类(持续更新)
1、ExceptionUtilimport java.io.PrintWriter;import java.io.StringWriter;public class ExceptionUtil { /**S * 获取异常的堆栈信息 * * @param t * @return */ public static String get原创 2017-02-19 21:41:08 · 3389 阅读 · 0 评论 -
重写ajax实现session超时跳转到登陆页面
问题:使用window.location.href来跳转页面的时候,后端只需实现一个过滤器就可以在session超时的情况下重定向到登陆页面。但是使用ajax呢?使用ajax来执行会发生302错误,并且页面不可能跳转。下面就针对这个问题来贴上我的前后端代码。1、session过滤器import java.io.IOException;import javax.servlet.Filter;impo原创 2017-04-28 10:00:32 · 4366 阅读 · 0 评论 -
手动安装maven包
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.29</version> </dependency>mvn install:install-file -Dfile=C:\Users\Administrator\Desk原创 2017-07-27 09:52:01 · 3200 阅读 · 0 评论 -
MongoDB整合Spring Boot 的logback
1、pom.xml <dependency> <groupId>org.mongodb</groupId> <artifactId>mongo-java-driver</artifactId> <version>3.4.2</version> </dependency> <depende原创 2017-07-27 09:13:18 · 8472 阅读 · 0 评论 -
一种接口限速方案
如果一个接口的频繁调用会严重影响到系统稳定性的话,那就要考虑限速了。谷歌有个现有的开源实现:Guava的RateLimiter类,RateLimiter使用的是一种叫令牌桶的流控算法,RateLimiter会按照一定的频率往桶里扔令牌,线程拿到令牌才能执行,比如你希望自己的应用程序QPS不要超过1000,那么RateLimiter设置1000的速率后,就会每秒往桶里扔1000个令牌。 详情请戳:G原创 2017-06-07 14:56:01 · 10736 阅读 · 0 评论 -
分布式服务化系统一致性(分布式事务、ACID、BASE、CAP)原理与解决方案
1、背景 一致性是一个抽象的、具有多重含义的计算机术语,在不同应用场景下,有不同的定义和含义。在传统的IT时代,一致性通常指强一致性,强一致性通常体现在你中有我、我中有你、浑然一体;而在互联网时代,一致性的含义远远超出了它原有的含义,在我们讨论互联网时代的一致性之前,我们先了解一下互联网时代的特点,互联网时代信息量巨大、需要计算能力巨大,不但对用户响应速度要求快,而且吞吐量指标也要向外扩展(既:转载 2017-04-18 09:41:41 · 24577 阅读 · 0 评论 -
Java Web利用poi导出Excel2003、2007完整解决方案
1997-2003版行列数量限制:行-65535,列-2562007-2010版行列数量限制:行-1048576,列-16384根据自己的业务需求来选择版本,这里注意一下,03版本的后缀是.xls ,07版是.xlsx ,注意。本文以07版为例。关于到导出策略,又有两种方式可供选择,一种是直接写代码来导出,但是每次都要去写表头,复制代码,这种方式的代码量比较大;另一种则是基于模板来导出,先写好表头原创 2017-03-15 13:38:24 · 9486 阅读 · 4 评论 -
为什么pageHelper超过最大页数后还会返回数据
问题描述:在微服务里面做查询接口,用到pageHelper,数据库只有8行数据,pageNum=1&pageSize=10,pageNum=2&pageSize=10,pageNum=3&pageSize=10。。。返回的数据都是那8条。原因:这是pageHelper里面自带的一个功能,叫做reasonable分页参数合理化,3.3.0以上版本可用,默认是false。 启用合理化时,如果pageNu原创 2017-03-14 14:07:54 · 23345 阅读 · 13 评论 -
高性能网站建设指南
性能黄金法则:只有10%~20%的最终用户响应时间花在了下载HTML文档上。其余的80%~90%时间花在了下载页面中的所有组件下。HTTP概述:1.压缩:浏览器:Accept-Encoding(gzip、deflate) 服务器:Content-Encoding2.缓存:浏览器:If-Modified-Since 服务器:Last-Modified如果组件自生成日期以来,没有改变过,服务器返转载 2016-12-15 10:51:57 · 651 阅读 · 0 评论 -
前台JSP传中文到后台乱码问题解决
前台:var data = '测试';var url = "${pageContext.request.contextPath}/***Action.do?method=方法名&data="+data;url = encodeURI(encodeURI(url));window.location.href = url;后台:String data = URLDecoder.decode(req原创 2016-09-12 14:56:32 · 1629 阅读 · 0 评论 -
实现Java读取网页内容并下载网页中出现的图片
import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io原创 2017-02-19 23:01:41 · 2380 阅读 · 0 评论 -
Java读取网页信息
import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import原创 2017-02-19 23:00:11 · 1342 阅读 · 0 评论 -
Mybatis逆向工程
我们都知道,orm框架都有着各自的逆向工程,要不每个实体类都去手动,多累啊。话不多说,直接正题。本文针对mysql,当然如果是其他数据库,只需要添加相应驱动jar包并在generatorConfig.xml文件中修改驱动即可。1、工程结构及依赖jar包2、配置文件generatorConfig.xml<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE g原创 2017-02-19 22:18:44 · 592 阅读 · 0 评论 -
缓存穿透、缓存击穿、缓存雪崩解决方案分析
前言设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。一、缓存穿透缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。缓存穿透解...转载 2018-03-08 17:52:43 · 3183 阅读 · 0 评论