Skip to content

Instantly share code, notes, and snippets.

Python对时间日期的格式化

@(Python)[日期]
Python对时间的处理一般用到time和datetime两个模块,Python将字符串转为日期型的函数为:datetime.datetime.strptime(),对日期进行格式化的函数为datetime.datetime.strftime(); 在举例之前先熟悉一下python中时间日期格式化符号:

  • %y 两位数的年份表示(00-99)
  • %Y 四位数的年份表示(000-9999)
  • %m 月份(01-12)
  • %d 月内中的一天(0-31)

shiro与freemarker标签集成

@(Xcaspar)[shiro|freemarker]
JSP页面中调用shiro标签十分方面,只需要导入: <%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>
但是和freemarker联合使用,需要做一下调整: 编写一个类,继承org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer此类,重写此类的afterPropertiesSet()方法,用com.jagregory.shiro.freemarker.ShiroTags替换原有shiro标签,实例如下:

JS处理HTML中属性值带双引号的问题

@(Javascript)[转义]

问题

在项目开发中需要从数据库读取数据,然后通过js将数据绑定到一个标签的属性中。例如:
数据库数据: [{“minCount”: 1, “maxCount”: 100,”discount”: 9}]

我定义一个变量,将上面的数据赋值给它:var rule = [{“minCount”: 1, “maxCount”: 100,”discount”: 9}] 在JS中 我将上面的数据添加到一个标签的属性值中:

JS数组往后台传参问题

@(Spring)[javascript]

问题

在项目开发中,要将一个数组数据,通过js ajax 传到后台,例如:js代码:

var arr = [];
arr.push({
	  “key”:”a”,

“value”: “b”

解决下载文件名乱码问题

在做文件下载中,发现只要文件中含有中文,就会乱码,即使设置了以下内容,也会出现此情况,

response.setContentType("application/octet-stream; charset=utf-8");

解决此问题的方法是设置响应头,将文件名字符串按ISO8859-1进行编码,代码如下:

response.setHeader("Content-Disposition", "attachment; filename=" + new String(fileName.getBytes("UTF-8"),"ISO8859-1"));

MySQL账号认证

@(mysql) ####查询语句处理流程 MySQL一条查询语句的处理是:【语句合法性检查】——【语义检查】——【获取对象解析锁】——【数据访问权限的核对】——【查询优化】——【语句执行】,这次主要介绍一下【数据访问权限的核对】中的“账号认证”。
用户账号是由user(用户名)和host(客户端主机)共同组成的,其是通过默认的mysql数据库中的user表来定义的。其中Host、User、Password三个字段的信息作为接入连接的认证参考。可以通过SHOW CREATE TABLE user \G命令来查看user表的内部结构。
User是连接登录使用的用户名;Host是客户端的主机名称或者是IP地址;Password是提供给服务器端登录认证的密码。三个字段都不得为NULL,默认会将他们都设置为空的字符串,也就是说User可以为匿名用户,

读书分享

《文明之光》

笛卡尔将人的人知分为三类:

  • 天生的

  • 后天学习的

  • 自己创造的


研究问题的方法分四个步骤:

Memcached vs Redis

####安装 Memcached需要先安装libevent库,然后获取源码编译安装。
Redis编译安装即可 ####配置 Memcached配置详解 Redis配置详解 ####使用 Memcached启动命令:memcached -d -m 内存大小(M) -u 运行用) -p 端口号 -c 最大并发连接数 -P /tmp/memcached.pid

分布式系统数据一致性处理

@(系统架构)[分布式] ####架构 讲这之前先说一下我们的系统架构,整个电商平台分为商品系统、交易系统、资金系统、游戏通信系统,个系统之间通过Hessian服务调用。业务流程是游戏通过通信系统上架商品,商品系统处理商品,用户下单通过交易系统,用户支付订单时,交易系统调用资金系统,用户支付成功后,资金系统同步和异步回调支付结果。若支付成功,交易系统通知通信系统给买家发货,并通知商品系统,该商品已成功售出。 ####问题 由于是系统间服务调用,不能保证两服务之间的数据处理时一致的。拿下单举例,用户下单,交易系统通知商品系统减库存,如果减库存成功,但订单生成失败,此时就会出现数据不一致的情况:没有生成有效的订单,但是已经减库存了。

解决方式

我们并没有采用分布式事务管理框架,而是采用幂等性记录表进行处理的。
幂等性:服务多次调用不会影响预期结果。

Logstash+Redis+Elasticsearch+Kibana日志监控报警系统

@(服务监控)[logstash|Elasticsearch|kibana]

工具介绍

Logstash:用于收集、处理、传输日志数据。
Redis:用于实时标识和传输日志数据。
Elasticsearch:用于实时查询和解析数据。
Kibana:用于数据可视化。

工作流程