美文网首页
写有用的java业务代码

写有用的java业务代码

作者: 小王ovo | 来源:发表于2020-03-31 19:21 被阅读0次

    我对业务代码的一些优化,以及平时写代码的一点思考。

    1.使用futuretask优化你的curd

    Callable<Object> callable=new Callable<Object>() {
        @Override
        public Object call() throws Exception {
            return a;
        }
    };
    FutureTask<Object> f1=new FutureTask<Object>(callable);
    new Thread(f1).start();
    

    当有多条sql需要执行的时候我们应当使用futuretask来优化接口,不是很喜欢框架中的异步注解。还是手撸爽。

    2.合理的使用缓存和限流
    在一些业务场景当中会有一些公用的变量,这个变量的多次修改和一次修改都是没有差别的,我们应当使用信号量对修改做限制。使用缓存也是一种必须要做的事情了。需要考虑的是一致性问题。(其实这里虽然是对请求作限制,但是我觉得应该说是幂等更合适:)~)

    3.对于查询不用索引就说不过去了吧
    也可以适当的使用联合索引

    4.封装一些api提高你的工作相率

    public class MyDataUtils {
    
        public static int compareDate(String DATE1, Date DATE2){
                DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
                String date=df.format(DATE2);
                int result=0;
                try {
                    Date date1 = df.parse(DATE1);
                    Date date2 = df.parse(date);
                    result=date1.compareTo(date2);
                    System.out.println(result);
                } catch (Exception e) {
                    e.printStackTrace();
                    throw new MyErrMsg("开始时间必须大于等于今天");
                }
                return result;
        }
    }
    

    时间,参数校验等等。

    5.合理使用lambda
    对于lambda,如果调用链超过了5,那么除了炫技一无是处。要是别人接锅了只会想打死你。这里特别吐槽一些疯狂的家伙,非要使用策略加工厂加lambda消除所有if else。

    6.不理解就多问,沟通才是最大的成本
    一开始拿着原型图就猛干,后来发现和产品想要的不一样,真的是哭了。

    7.合理使用单例
    双检锁简单粗暴

    8.拦截器和过滤器

    ps:本来以为每一个都可扩展到一大段,但最终只是写了这一点。总归就是使用多线程,设计模式,缓存,动态代理合理的优化业务代码.无尽的需求迭代是常态,但是我们应当对自己的代码负责。

    相关文章

      网友评论

          本文标题:写有用的java业务代码

          本文链接:https://www.haomeiwen.com/subject/qmgquhtx.html