当前位置: 首页 > news >正文

关于电子商务网站建设的论文花钱做网站不给源代码

关于电子商务网站建设的论文,花钱做网站不给源代码,网站设计与制作是网页吗,北京做网站需要多少钱Spring框架 1. BeanFactory和ApplicationContext有何区别 BeanFactory是Spring最底层的接口#xff0c;是IoC的核心#xff0c;定义IoC的基本功能。 ​ BeanFactory具有#xff1a;延迟实例化的特性。在启动的时候#xff0c;不会实例化Bean#xff0c;只有有需要从容器…Spring框架 1. BeanFactory和ApplicationContext有何区别 BeanFactory是Spring最底层的接口是IoC的核心定义IoC的基本功能。 ​ BeanFactory具有延迟实例化的特性。在启动的时候不会实例化Bean只有有需要从容器中获取Bean才会实例化Bean。一般用在移动设备等内存较小的地方 ​ ApplicationContext是BeanFactory子接口相较于BeanFactory多提供国际化、资源访问、AOP等功能。 ​ ApplicationContext在启动的时候会实例化所有Bean可以为Bean配置Lazy-init实现延迟实例化。 2. Spring Bean的生命周期 一、加载Bean定义 ​ 1、loadBeanDefinitions:将Bean定义记录在beanDefinitionMap中 registerBeanDefinition类- registerBeanDefinition()方法 二、创建Bean对象 ​ 1、构建对象 ​ 通过遍历对对象进行逐个构造。 AbstractAutowireCapableBeanFactory类-createBeanInstance() ​ 2、填充属性 populateBean() ​ 3、初始化 initializeBean() ​ 3.1applyBeanPostProcessorsBeforeInitialization()初始化前应用Bean后置处理器 ​ 3.2invokeInitMethods()初始化 ​ 3.3applyBeanPostProcessorsAfterInitialization()初始化后应用Bean后置处理器 三、使用 ​ 初始化完成后的Bean对象即可正常使用。 四、销毁 ​ 1、销毁前 ​ PreDestory注解的方法 ​ 2、销毁 ​ DisposableBean-destory() ​ Bean-destory-method() 3. Spring IOC如何实现 IoCInversion of Control 控制反转。 通俗易懂的理解我们拥有创建对象的控制能力反转为由程序进行创建对象不在由我们去创建对象。 IoC有多种实现方式其中最常见的DI(Dependency Injection 依赖注入)。对象通过构造方法参数、工厂方法参数、构造或工厂方法返回后在对象实例上设置的属性来定义它们的依赖项从类外部注入依赖容器在创建bean时注入这些依赖项。 Spring常见依赖注入有3种方式1、构造方法 2、set 3、注解注入Autowired Spring提供了两种IoC容器 1、BeanFactory 2、ApplicationContext 具体可参考 面试题1 在了解了Spring Bean的生命周期后我们能够发现Bean对象的创建已经不是由我们手动创建了而是通过Spring底层的组件进行加载-创建-销毁这一过程就是Spring IoC的过程。 4. 说说Spring AOP及实现原理 ​ 4.1 AOP概念 ​ AOPAspect Orient Programming 面向切面编程。 ​ 目的在不修改源代码的情况下实现添加额外功能的技术。 ​ 个人理解源代码为一颗笔直的树需要在这棵树上看到更多的种类在树旁重新栽显然耗时费力此时通过嫁接技术在树的切面嫁 接即可实现目的。AOP ​ 4.2 AOP使用 具体使用可参考https://blog.csdn.net/Cr1556648487/article/details/126777903 ​ 4.3 AOP原理 ​ SpringAOP底层采用动态代理支持JDK动态代理以及Cglib动态代理。 ​ JDK动态代理只能为接口创建动态代理实例。需要获得被代理类的接口信息通过反射生成一个实现代理接口的动态代理类然后通过构造方法生成动态代理类的实例对象在调用具体方法前使用invokeHandler()处理。 ​ Cglib动态代理以来asm包把被代理类的字节码加载进来生成其子类。 5. 动态代理cglib与JDK JDK动态代理 通过实现InvocationHandler接口的invoke()方法定义切面逻辑。 使用条件 1、业务目标对象只能为接口创建代理实例2、拦截器实现InvocationHandler3、通过Proxy.newProxyInstance()生成代理对象 Cglib动态代理 基于ASM字节码生成库允许在运行时对字节码修改和动态生成。 JDK动态代理与Cglib动态代理区别 JDK动态代理只针对接口实现类进行代理。也就是只面向接口。 Cglib针对类实现代理采用的是继承方法。 6. Spring事务实现方式 编程式事务 概念在业务代码中精确定义事务边界 代码块中调用beginTransaction()、commit()、rollback()等相关方法 声明式事务 有助于用户将操作与事务规则进行解耦。简单地说编程式事务侵入到了业务代码里面但是提供了更加详细的事务管理而声明式事务由于基于AOP所以既能起到事务管理的作用又可以不影响业务代码的具体实现。 ​ 使用 ​ EnableTransactionManagement开启事务管理 ​ Transactional开启事务 Transactional事务注解失效原因 方法修饰符不为public方法内部调用事务事务内捕获异常未抛出新异常rollbackFor属性配置错误 7. Spring事务的底层原理 使用事务步骤 获取数据库连接开启事务执行数据操作提交事务/回滚事务关闭连接 Spring在框架中做了开启事务、提交事务、回滚事务的操作使得业务代码和事务代码解耦。这一功能是基于AOP实现的。 8. 自定义注解实现功能 参考https://www.jianshu.com/p/7c2948f64b1c 9. SpringMVC运行流程 核心代码DispatcherServlet.java - doDispatch() 用户请求DispatcherServlet中央调度器通过请求查找HandlerMapping获取HandlerDispatcherServlet中央调度器通过Handler查找HandlerAdapeter处理器适配器调用用户编写的controller返回ModelAndView基于JSON交互的返回ModelAndView为空此时前端已能接收到返回值DispatcherServlet中央调度器通过ModelAndView查找对应ViewResolver返回View渲染View返回渲染后的View 10. SpringMVC启动流程 详情查看https://blog.51cto.com/u_9587581/2398187 11. Spring的单例实现 Spring的单例模式是采用单例注册表实现的。 private final MapString, Object singletonObjects new ConcurrentHashMapString, Object(256); private final MapString, Object earlySingletonObjects new ConcurrentHashMapString, Object(16); private final MapString, ObjectFactory? singletonFactories new HashMapString, ObjectFactory?(16);//Spring获取单例模式方法 protected Object getSingleton(String beanName, boolean allowEarlyReference) {Object singletonObject this.singletonObjects.get(beanName);if (singletonObject null isSingletonCurrentlyInCreation(beanName)) {singletonObject this.earlySingletonObjects.get(beanName);if (singletonObject null allowEarlyReference) {synchronized (this.singletonObjects) {singletonObject this.singletonObjects.get(beanName);if (singletonObject null) {singletonObject this.earlySingletonObjects.get(beanName);if (singletonObject null) {ObjectFactory? singletonFactory this.singletonFactories.get(beanName);if (singletonFactory ! null) {singletonObject singletonFactory.getObject();this.earlySingletonObjects.put(beanName, singletonObject);this.singletonFactories.remove(beanName);}}}}}}return singletonObject;}这里有3个Map集合singletonObjects、earlySingletonObjects、singletonFactories 单例获取顺序为singletonObjects - earlySingletonObjects - singletonFactories singleonObjects单例对象的cacheearlySingletonObjects提前曝光的单例对象的cachesingletonFactories单例对象工厂的cache 12. Spring中使用了哪些设计模式 1、工厂模式BeanFactory、ApplicationContext 2、单例模式Bean默认为单例模式 3、代理模式AOP功能用到了JDK动态代理和Cglib动态代理 4、适配器模式Spring AOP 的拦截器使用到了适配器模式
http://www.hkea.cn/news/14319299/

相关文章:

  • 网站设计制作报价图片服务器网站配置
  • 有源代码如何做网站阳谷网页设计
  • 3g手机网站建设网页页面设计模板
  • 杭州外贸网站建设wordpress主题制作难吗
  • 洛阳网络营销推广长沙seo网站排名优化
  • 佛山网站建设 骏域百度小说风云排行榜
  • 郑州网站建设zzmshl在线定制图片
  • 重庆网站建设公司的网站游戏网页界面设计
  • 做微商网站设计下载网站如何做
  • php与mysql网站开发网站降权怎么办
  • 杭州建设职业学校网站重庆seo什么意思
  • 网站开发设计工具陕西网站建设排名
  • 天津正规制作网站公司小企业管理系统
  • 视频网站开发前景如何做的网站浏览器提示不安全
  • 南通网站建设.镇江网站建设一般多少钱
  • 在哪个网站可以做酒店预定单太原网站建设价格套餐
  • 做网站找哪里南宁网站建设托管
  • 在线推广企业网站的方法网站界面(ui)设计形考任务1
  • dede网站404怎么做网站建设计划书下载
  • 如何设计网站站点成都广告设计公司有哪些
  • 网站维护服务基本内容百度广告
  • 新乡手机网站建设官网企业做网站的目的是什么
  • 建设带数据搜索的网站免费 成品模板网站
  • 云南网站建设快速优化辽宁省建设工程信息网32位浏览器
  • 网站设计与制作的过程网站案例模板
  • 网站怎么做关键词流量wordpress 同步预览
  • 青岛公司网站建设开发文山专业网站建设哪家好
  • 云南做企业网站多少钱权威网站建设
  • 网站做影集安全吗优化网站被百度屏
  • 网站建设需求表格时装+wordpress