- 浏览: 6351466 次
- 性别:
- 来自: 一片神奇的土地
最新评论
-
360pluse:
技术更新,战术升级!Python爬虫案例实战从零开始一站通网盘 ...
Python爬虫实战:Scrapy豆瓣电影爬取 -
18335864773:
推荐用 pageoffice 组件生成 word 文件。
JAVA生成WORD工具类 -
jjhe369:
LISTD_ONE 写道起始地址为163.135.0.1 结束 ...
IP地址与CIDR -
baojunhu99:
private final int POOL_SIZE = 5 ...
使用CompletionService获取多线程返回值 -
LovingBaby:
胡说,javascript 运行时是单线程的,event lo ...
Ajax请求是否可以实现同步
文章列表
阿里P9架构师讲解从单机至亿级流量大型网站系统架构的演进过程
大型网站系统的特点和架构设计
http://youzhixueyuan.com/large-website-architecture-design.html
史上最强大型分布式架构详解:高并发+数据库+缓存+分布式+微服务+秒杀
http://youzhixueyuan.com/architect
分布式架构设计(文章合集)
http://youzhixueyuan.com/distributed-architecture-design-articles-collection.html
大数据架构设计(文章合集)
...
模拟数据库的四种隔离级别1
模拟数据库的四种隔离级别2
transaction_none
transaction_read_nocommited
transaction_read_commited
transaction_repeatable_read
transaction_serializable
隔离级别越高,数据库事务并发执行性能越差,能处理的操作越少
数据库事务
本地事务
分布式事务
Java事务/J2EE事务
传播方式:
新建事务
required
required_new - 挂起当前
非事务方式运行
supports
not_supported - 挂起当前
never
嵌套事务:
1、栈、堆
1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域:存放静态成员(static定义的)5. 常量池:存放字符串常量和基本类型常量(public static final)。6. 非RAM存储:硬盘等永久存储空间这里我们主要关心栈,堆和常量池,对于 栈和常量池中的对象可以共享,对于堆中的对象不可以共享。栈中的数据大小和生命周期是可以确定的,当没有引用指向数据 ...
丢失更新:两个事务同时更新一行数据,最后一个事务的更新会覆盖掉第一个事务的更新,从而导致第一个事务更新的数据丢失,这是由于没有加锁造成的;
1. 脏读 :脏读就是指当一个事务正在访问数据,并且对数据 ...
JVM
W3C JAVA教程
JAVA考古学
String tmpImgPath = ProPertiesUtil.getValue("/abc.properties", "tmp_img_path");
String path = ServletActionContext.getServletContext().getRealPath(tmpImgPath);
imgFilePath = path + File.separator + fileName;// 新生成的图片
BigDecimal ...
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StringUtils {
public static String replaceBlank(String str) {
String dest = "";
if (str!=null) {
Pattern p = Pattern.compile("\\s*|\t|\r|\n");
Matcher m = p.matcher(str);
dest = ...
两种方式,一种是在列表页面设置一个iframe,然后从ifrmae进入打印页面时,打印页面调用window.print()打印,一种是在列表页面调用,替换列表页面内容,打印后换回。
打印方式1
前台:
<a href="javascript:void(0)" onclick="printOrder(${cc.getLongValue('stock_in_order_id')?c})">打印订单</a>
function printOrder(id){
var ifr = document.getEleme ...
Bigdecimal工具类
- 博客分类:
- 工具类库
import java.math.BigDecimal;
public class DoubleUtils {
/**
* * 两个Double数相加 *
*
* @param v1 *
* @param v2 *
* @return Double
*/
public static Double add(Double v1, Double v2) {
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v ...
参考:
https://www.jianshu.com/p/79f2e1d9568c
工具类:
import org.apache.log4j.Logger;
import redis.clients.jedis.Jedis;
import com.common.common.RedisCacheUtil;
/**
* 使用Redis实现的分布式锁
*/
public class RedisLock{
static Logger logger = Logger.getLogger(Red ...
参数在Body里请求类HttpUtil
- 博客分类:
- 工具类库
直接代码:
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.List;
import java.util.Map;
/**
* http 工具类
*/
public class HttpUtil {
/*
*
* 调用:
* HttpUtil.po ...
拦截器和过滤器的区别
- 博客分类:
- Java基础
【Spring的拦截器】于【Servlet的Filter】有相似之处,比如二者都是AOP编程思想的体现,都能实现权限检查、日志记录等。
不同的是:
·使用范围不同:【Filter是Servlet规范固定的,只能用于Web程序中】,而【拦截器既可以用户Web程序,也可以用于Application、Swing程序中】。
·规范不同:Filter是在Servlet规范中定义的,是【Servlet容器支持】的,而拦截器是在Spring容器内的,是【Spring框架支持】的。
·使用的资源不同:同其他的代码块一样,拦截器也是一个Spring的组件,归Spring管理,配置在Sp ...
很多人认为count(1)执行的效率会比count(*)高,原因是count(*)会存在全表扫描,而count(1)可以针对一个字段进行查询。其实不然,count(1)和count(*)都会对全表进行扫描,统计所有记录的条数,包括那些为null的记录,因此,它们的效率可以说是相差无几。而count(字段)则与前两者不同,它会统计该字段不为null的记录条数。
type = index 全索引扫描
下面它们之间的一些对比:
1)在表没有主键时,count(1)比count(*)快;
2)有主键时,主键作为计算条件,count(主键)效率最高;
3)若表格只有一个字段,则c ...
高并发下的数据结构List/Set/Map
- 博客分类:
- Java基础
高并发下的Java数据结构(List、Set、Map、Queue)
由于并行程序与串行程序的不同特点,适用于串行程序的一些数据结构可能无法直接在并发环境下正常工作,这是因为这些数据结构不是线程安全的。本节将着重介绍一些可以用于 ...