1. mvn deploy
发布到mvn仓库
2. fastjson定制序列化字段
@JSONField(name="gender")
public String sex;
3. fastjson序列化空字段
@JsonInclude(value = Include.ALWAYS)
public String sex;
4. fastjson的getxxx()方法
通过JSONObject的get()方法可以获取key的值
5. fastjson在序列化时不返回某个字段
@JSONField(serialize=false)
public String sex;
6. mysql 中datetime和timestamp的区别
- datetime能保存的范围的值更大,从1001年到9999年。datetime使用8字节存储。精度为秒,他把日期和时间封装成格式为YYYYMMDDHHMMSS的整数中,与时区无关
- timestamp使用4字节存储。只能表示1970年到2038年的值。timestamp保存了从1970年1月1日午夜以来的秒数。timestamp的值与时区有关。如果在插入时没有指定列的值,MySql则设置这个列的值为当前时间。
7.spring kafka中动态的设置分区
通过properties配置文件
@KafkaListener(topics = {"${kafka.topic.first}","${kafka.topic.topic}"}, group = "${kafka.topic.group}")
8. spring cron的表达式支持到秒,不同于linux的支持到分钟
9.linux中的常用技巧
多按tab键
- 在shell中按两次tab键,可显示所有的Linux命令
- 在shell中按要查询以c开头的命令,可以按 ctabtab。按两次tab键。
linux中快速切换到根目录
cd ~
vi编辑器快速跳转到底部
shift + g
mysql inner join
mysql inner join是等值链接。即两个表中必须存在同时符合两个表的数据。
vi 中搜索
/后面跟对应的搜索字符
cp 一个目录到另一个目录
cp -r 源文件 目的文件
解压.zip文件
unzip 文件
解压到指定目录加上-d选项
unzip 文件 -d 目录
unzip Videos.zip -d Music/
压缩文件到zip
zip Videos.zip Videos/
10.项目中的日志
对于涉及多个调用链的请求
一定在日志中添加traceId,方便定位问题。
@Data
一个类注解@Data,它会默认实现@toString()方法。方便调用
11. mvn 跳过测试代码
-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。
-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。
12. map的put和putIfAbsent使用
default V putIfAbsent(K key, V value) {
V v = get(key);
if (v == null) {
v = put(key, value);
}
return v;
}
13. 通过new接口、抽象类等方式创建匿名类
batchingDispatcher.process(
taskId("register", info),
new InstanceReplicationTask(targetHost, Action.Register, info, null, true) {
public EurekaHttpResponse<Void> execute() {
return replicationClient.register(info);
}
},
expiryTime
);
14. Supplier的常用用法
Supplier<? extends StatsCounter> statsCounterSupplier = NULL_STATS_COUNTER;
15 泛型方法的使用
public static <T> T checkNotNull(T reference) {
if (reference == null) {
throw new NullPointerException();
}
return reference;
}
16. java方法中注解判断
private static boolean isDeclaredThreadSafe(Method method) {
return method.getAnnotation(AllowConcurrentEvents.class) != null;
}
17.项目中的定时任务要放到单独的工程中
http://sc.chinaz.com/tag_tupian/maozuo_8.html
http.get('http://sc.chinaz.com/tag_tupian/maozuo_8.html',function(res){
console.log("Got response:" + JSON.stringify(res));
}).on('error',function(e){
console.log("Get error:"+e.message);
});
String patter = "[\\d,一,二]{1,}[点,时]{1}";
18. mvn打包release版本
mvn versions:set
mvn versions:commit
mvn deploy