不灭的焱

革命尚未成功,同志仍须努力

作者:php-note.com  发布于:2019-01-31 11:20  分类:PHP开发问题 

将 空字符串 转为 数组时,有 业务bug,如

$str = "";
$arr = explode(",", $str);
print_r($arr);

输出:

Array
(
    [0] => 
)
作者:php-note.com  发布于:2019-01-26 21:30  分类:Java基础 

Java正则表达式:

  •   (?i)abc  表示abc都忽略大小写
  •   a(?i)bc  表示bc忽略大小写
  •   a((?i)b)c  表示只有b忽略大小写

也可以用 Pattern.compile(rexp, Pattern.CASE_INSENSITIVE) 表示整体都忽略大小写

作者:php-note.com  发布于:2019-01-21 23:32  分类:Java库/系统 

独创 Db + Record 模式

Db类及其配套的Record类,提供了在Model类之外更为丰富的数据库操作功能。使用Db与Record类时,无需对数据库表进行映射,Record相当于一个通用的Model。

作者:php-note.com  发布于:2019-01-19 23:31  分类:Java库/系统 

用注解 @Before(Tx.class) 实现 事务回滚

@Before(Tx.class)
public void pay() throws Exception {
    //throws exception;
}

方法体不能扑捉异常,所有的异常都抛出,当出现异常时事物将回滚(即 事务的回滚 是依赖 抛出异常 来实现的)

优点:简单暴力,不需要去处理每个异常,直接抛出即可;

缺点:不能详细的区分返回数据、视图,只能笼统的报出异常;

作者:php-note.com  发布于:2019-01-19 00:34  分类:Java基础 

RuntimeException

  • NullPointerException:空指针异常
  • IllegalArgumentException:非法参数异常
作者:php-note.com  发布于:2019-01-18 09:53  分类:电脑/软件使用 
  • Recompile:对选定的目标(Java 类文件),进行强制性编译,不管目标是否是被修改过。
  • Rebuild:对选定的目标(Project),进行强制性编译,不管目标是否是被修改过。由于 Rebuild 的目标只有 Project,所以 Rebuild 每次花的时间会比较长。
  • Build:对选定的目标(Project),编译那些被修改的文件;
作者:php-note.com  发布于:2019-01-18 08:48  分类:Java基础 
  • 实现了List接口的集合类全部有序:如 ArrayList、LinkedList
  • 实现了Set接口的集合类中:HashSet无序,TreeSet排序
  • 实现了Map接口的集合类中:HashMap无序,TreeMap排序
作者:php-note.com  发布于:2019-01-15 09:48  分类:Java基础 
作者:php-note.com  发布于:2019-01-12 11:47  分类:Java基础 

如果是在 try {} catch(xxx e) {} 的 catcth 分支中,很容易捕获和记录异常时的堆栈信息,直接把 Exception对象 当着参数传进去即可,但是,有时候需要在没有发生异常的情况下打印堆栈,,,其实也挺简单,现场新建一个 Throwable对象 即可,参考代码如下:

// 省略了 其他代码

if (StrKit.isBlank(fileName)) {
    logger.warn("文件名为空", new Throwable());
    return null;
}
作者:php-note.com  发布于:2019-01-12 09:55  分类:Java基础 

1)精辟阐述:

可以将 ArrayList想象成一种“会自动扩增容量的Array”。

2)Array([]):最高效;但是其容量固定且无法动态改变;
   ArrayList:容量可动态增长;但牺牲效率;

3)建议:

基于效率和类型检验,应尽可能使用Array,无法确定数组大小时才使用ArrayList!

不过当你试着解决更一般化的问题时,Array的功能就可能过于受限。