码匠笔记

用心雕琢

把《阿里巴巴Java开发手册》读薄

访问

描述

最近读了一下《阿里巴巴Java开发手册》,下面是一些应该注意问题的整理。其实读这个手册最重要明白了两个问题
第一点,一个开发团队一定要有一个自己的编程规约。
第二点,优化是从每一个小的细节入手。

每日一则 LeetCode: Longest Substring Without Repeating Characters

访问

描述

Given a string, find the length of the longest substring without repeating characters.

Examples:

Given “abcabcbb”, the answer is “abc”, which the length is 3.

Given “bbbbb”, the answer is “b”, with the length of 1.

Given “pwwkew”, the answer is “wke”, with the length of 3. Note that the answer must be a substring, “pwke” is a subsequence and not a substring.

中文解释

给定一个字符串,获得它不重复连续子序列的长度

每日一则 LeetCode: Add Two Numbers

访问

描述

You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a linked list.

You may assume the two numbers do not contain any leading zero, except the number 0 itself.

1
2
3
Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
Output: 7 -> 0 -> 8
Explanation: 342 + 465 = 807.

中文解释

给定两个非空的链表里面分别包含不等数量的正整数,每一个节点都包含一个正整数,肯能是0,但是不会是01这种情况。我们需要按照倒序计算他们的和然后再次倒序输出。

每日一则 LeetCode: Two Sum

访问

描述

Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.

1
2
3
4
Given nums = [2, 7, 11, 15], target = 9,

Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].

中文解释

给定一个整型数组和一个给定的整数,返回两个数加和等于给定数的下标值。假设答案只有一个并且数组中没有重复的整数。

Heroku 教程:MySQL 中文乱码

访问

方案

Heroku 的 MySQL 默认就是 UTF-8字符集,本身不应该出现乱码,但是笔者在测试过程中出现中文乱码。
解决方法非常简单,直接在配置的URL后面添加如下内容即可。

1
&useUnicode=true&characterEncoding=UTF-8

不过在添加之前需要查看一下当前URL格式。

1
heroku run echo \$JDBC_DATABASE_URL

输出内容如下

1
jdbc:mysql://endpoint/database?reconnect=true&user=username&password=password

所以我直接在后面追加&useUnicode=true&characterEncoding=UTF-8即可。

Heroku 教程:自定义域名配置 HTTPS

访问

起源

本身 Heroku 的 app 域名是开始 SSL 的,但是因为他的域名为 appname.herokuapp.com,没有在国内备案,所以我们需要绑定一个国内备案的域名到 Heroku 上面。于是就有了下面的文章。

如何使用 Heroku 搭建免费的微信小程序服务

访问

起源

最近小程序愈发的火热,好多人都纷纷的加入到小程序的开发阵营。虽然小程序的开发对个人用户是免费的,但是还是有一些要求的,比如需要服务器支持,购买域名,并且需要 HTTPS 支持,那么这样对于一些想学习小程序开发,或者是做一些开源的小程序工具的开发者来说,购买域名,服务器,HTTPS搭建都是额外的成本。虽然腾讯云提供了免费的调试环境,但是生成环境还是需要购买的。这里小编就来给搭建提供一种免费搭建小程序服务的方式。

JUC系列:ThreadPoolExecutor

访问

简介

ThreadPoolExecutor 是 JUC 里面的成员,我们可以使用他轻松的创建线程池。
当然我们可以自己创建线程,但是有 ThreadPoolExecutor,他的好处还是很多的,比如可以帮我们管理线程,不需要我们手动的关闭线程,同时可以通过各种不同的线程创建和销毁策略应对不同的多线程场景。合理的使用 ThreadPoolExecutor 会让我们的开发效率和性能事半功倍。