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
    评论
Java架构面试是指在面试过程中,主要围绕Java开发所涉及的各种架构设计、应用和实践进行的问题和讨论。 在Java架构面试中,一般会被问到以下几个方面的问题: 1. Java基础知识: 面试官可能会问到Java的基础知识,例如Java的特点、面向对象的特性、多线程、异常处理、集合等知识点。考查面试者对Java语言的熟悉程度和深度。 2. JavaEE架构: 面试官可能会询问JavaEE的各个层次的架构,例如:Web层、业务逻辑层、数据访问层、数据库层等。需要面试者了解各个层级的设计原则和使用技巧。 3. Spring框架: Spring是目前Java开发中最流行的框架之一。面试官可能会问到Spring框架的使用方式、IOC和DI思想、AOP编程等方面的问题。需要面试者掌握Spring框架的基本原理和常用功能。 4. 分布式架构: 随着云计算和大数据的兴起,分布式系统也变得越来越重要。面试官可能会问到分布式系统的设计思想、CAP定理、微服务架构等相关问题。需要面试者了解分布式系统的设计原则和常见的解决方案。 5. 中间件和缓存技术: 面试官可能会问到Java中常用的中间件和缓存技术,例如消息中间件、缓存数据库等。需要面试者了解各种中间件和缓存技术的使用场景和原理。 在应对Java架构面试时,需要对Java的基础知识、各种架构设计和常用的技术有很好的了解和实践经验。同时,还需要具备良好的沟通能力,能够清晰地表达自己的思路和观点。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值