java架构经验,关于java架构心得

开端,对以前的知识进行整理,将文档体系化,将以前搭建框架的经验分享给大家

子:提供两个文件,BussException异常类,ExceptionInterceptor异常拦截器2.1BussException代码:返回给客户端统一格式定义返回值,定义提示内容,定义返回cod

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

一,对外开放jar包

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

1.开放全局异常捕获

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

好处:在业务代码中,不需要关注返回值,不用关心返回客户端格式,事务内部需要要特殊关注回滚,

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

2.例子:

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

提供两个文件,BussException异常类,ExceptionInterceptor异常拦截器

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

7aadddac-774e-4d08-989f-3369fd4a0f69.jpg

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

2.1BussException代码:返回给客户端统一格式

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

定义返回值,定义提示内容,定义返回code码

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

e6fa2edf-e0f7-48aa-a6b6-9335ee004719.jpg

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

2.2在ExceptionInterceptor进行拦截

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

可在

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

@ExceptionHandler({BussException.class})

标识拦截的异常,并对返回的异常结果进行处理,将友好结果返回给页面

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

ace24f75-5e7f-4df3-b343-e1f6b1bd2faf.jpg

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

3.应用:

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

需要在项目中新建一个类,继承ExceptionInterceptor拦截器,并标注注解@Configuration

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

15848f11-a622-4343-be1e-77b709c5c0dc.jpg

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

在业务代码中使用:

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

7bd8945b-c9d1-444f-91db-ac7ebbb074e8.jpg

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

返回提示结果:

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

6f6c6f46-abf2-479c-92de-ac4d7add5e90.jpg

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

这里只是一个简单的例子,另:如果不想写类去继承ExceptionInterceptor,可以在jar包中增加spring.handler配置文件,指向ExceptionInterceptor,Spring加载完后,会自动加载这个拦截器。如果mybatis和dubbo等也是用的这样的加载方式。

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

leBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main

del不可反向调用!不可跨级调用!model层如何反馈给Presenter层?Presenter如何操控View层?如下图所示底层不会直接给上一层做反馈,而是通过View,Callback为上级做出了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值