一、已懂
1、springboot项目,在resource中banner.txt文件,可以替换启动动画
2、@Transactional(rollbackFor = Exception.class)
rollbackFor = Exception.class作用:遇到非RuntimeException的异常时,也回滚,没有改属性则只回滚RuntimeException
3、spring工具类:Assert
不符合条件,抛出IllegalArgumentException异常
4、添加vm自定义参数,在程序中取:
vm options:-Dspring.profiles.active=test
程序中取参数:
System.getProperty("spring.profiles.active");
5、consul配置中心
6、限制input输入字符个数:
<input type="text" oninput="if(value.length>10)value=value.slice(0,10)">
7、@Autowired按byType自动注入,@Resource默认按 byName自动注入
8、手动调用jquery-validate的校验:
var bool=$("整个form表单的ID").validate().element($("要验证的表单中某个字段的ID"));
if (bool){
//验证通过
}else {
//验证失败
}
9、@Service如果未指定bean名,则按照spring的命名规则来定的bean名。这时候很有可能在dubbo配置中获取不到bean,如下,ref属性值就是bean名
<dubbo:service interface="com.fpx.crm.innerapi.service.AuditService" ref="auditService"/>
10、dubbo:reference check属性的作用是在启动的时候检查该服务是否可用
<dubbo:reference id="mdmApiService" interface="com.fpx.mdm.api.IMdmApiService" check="false"/>
11、bug记录:
场景:dubbo调用超时,显节点调用超时。而提示的ip已经停止服务了,
解决方法:删除Windows用户下.dubbo文件夹下的缓存
12、输入框只能输入数字,并限制输入字符个数
<input type="text" placeholder="请输入邮箱验证码" id="emailVlidateCode" name="emailVlidateCode" oninput="if(value.length>6)value=value.slice(0,6);value=value.replace(/\D/g,'')">
13、一个数求余一个2的幂的数等于和这个数和这个数减一的和运算结果
32 & (16 - 1) = 0
32 % 16 = 0
14、System.out::println
List<String> strings = Arrays.asList("abc", "", "bc", "efg", "abcd","", "jkl");
//first
strings.stream().forEach(System.out::println);
//second
strings.stream().forEach(i -> {
System.out.println(i);
});
第一种和第二种输出结果一样, 说明System.out::println为lamda表达式的一种缩写,冒号前面为类名或对象,后面为方法名。
15、建表,自动维护创建和更新时间:
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '添加时间',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
16、使用RestTemplate设置请求参数时候,不能如此定义:
MultiValueMap<String, HashMap<String,String>> param = new LinkedMultiValueMap<String, HashMap<String,String>>();
设置后访问报错:
org.springframework.web.client.HttpServerErrorException$InternalServerError: 500 Internal Server Error
应设置为:
MultiValueMap<String, String> param = new LinkedMultiValueMap<String, String>();
17、controller层不返回属性为null的值:
jackson:
default-property-inclusion: NON_NULL
二、记录
1、添加证书
位置:jdk1.8.0_231\jre\lib\security
命令:keytool -import -alias ssouati4pxcom.crt -keystore cacerts -file D:\i4px\ssouati4pxcom.crt -trustcacerts
默认密码:changeit
2、EnvironmentPostProcessor
shiro-cas
org.apache.tiles
@FeignClient(name = "fpx-crm-boms-manage",fallbackFactory = IOperationRulesClientFallback.class)
实体类序列号
private static final long serialVersionUID = 746264109957384560L;