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

做wps的网站赚钱广东seo价格是多少钱

做wps的网站赚钱,广东seo价格是多少钱,做商城购物网站,python web 做的网站Spring Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器(框架) IoC(Inversion of Control,控制反转)是一种设计思想,它主要用于降低软件系统中不同模块之间的耦合度,提高代码的可维护…

Spring

Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器(框架)

IoC(Inversion of Control,控制反转)是一种设计思想,它主要用于降低软件系统中不同模块之间的耦合度,提高代码的可维护性和可扩展性。
一、传统开发与 IoC 开发的对比
在传统的软件设计中,对象的创建和依赖关系的管理通常由对象自身负责。例如,一个对象 A 需要依赖对象 B 来完成某些功能,那么对象 A 就会在自己的代码中显式地创建对象 B。这样的方式会导致对象之间的耦合度较高,当对象 B 的实现发生变化时,可能需要修改对象 A 的代码。


而在 IoC 的设计模式下,对象的创建和依赖关系的注入由一个外部的容器(通常称为 IoC 容器)来负责。对象只需要声明自己所需要的依赖,而不需要关心这些依赖是如何创建和管理的。当对象需要使用依赖时,IoC 容器会自动将依赖注入到对象中。

二、IoC 的实现方式

  • 依赖注入(Dependency Injection,DI):这是实现 IoC 的主要方式之一。依赖注入是指在对象创建的时候,由 IoC 容器将对象所需要的依赖传递给它。依赖注入可以通过构造函数注入、Setter 方法注入和接口注入等方式实现。
  • 构造函数注入:在对象创建时,通过构造函数将依赖传递给对象。这种方式可以确保对象在创建时就拥有所需的依赖,并且可以保证依赖的不可变性。
  • Setter 方法注入:在对象创建后,通过 Setter 方法将依赖传递给对象。这种方式比较灵活,可以在对象创建后动态地设置依赖。

AOP(Aspect-Oriented Programming,面向切面编程)是一种编程思想,它通过在不修改原有业务逻辑代码的情况下,对业务逻辑的各个部分进行增强或补充,从而实现横切关注点的分离。

一、AOP 的核心概念

  • 切面(Aspect):切面是对横切关注点的模块化封装,它包含了对业务逻辑的增强或补充的代码。例如,日志记录、事务管理、安全检查等都可以作为切面。
  • 连接点(Join Point):连接点是程序执行过程中的一个特定点,例如方法调用、方法执行、异常抛出等。在 AOP 中,连接点是切面可以插入的地方。
  • 切入点(Pointcut):切入点是对连接点的筛选条件,它定义了哪些连接点可以被切面增强。通过定义切入点,可以精确地控制切面的作用范围。
  • 通知(Advice):通知是在切入点处执行的代码,它可以在连接点之前、之后或周围执行。通知分为前置通知(Before Advice)、后置通知(After Advice)、环绕通知(Around Advice)等类型。

SpringBoot

SpringBoot是为了简化Spring开发的框架(具体体现就是说Spring创建一个代码需要配置对应的Bean和MVC(xml文件)但是SpringBoot无需配置)主要的一个特点就是约定大于配置(就我们上面说的Spring需要配置一些信息,但是SpringBoot就不需要)

自动配置

  • Spring Boot 在启动时会自动扫描类路径下的依赖和配置,并根据这些信息进行自动配置。
  • 自动配置的原理:自动配置主要是归功于@SpringBootApplication这个注解,由@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentScan

    这三个注解组成的,其中 @EnableAutoConfiguration 是实现自动化配置的核心注解。该注解主要是通过 @Import 注解导入对应的配置选择器。关键是内部读取该项目和 该项目引入的Jar包 里的classpath路径下的** META-INF/spring.factories **文件中的所配置类的全类名。这些配置类中所定义的Bean还会根据对应的条件注解 @CoditionalOnClass 这个注解,判断是否有对应的class文件,如果有则加载该类,把这个配置类的所有的Bean放入spring容器中使用。

约定大于配置

SpringBoot是为了简化Spring开发的框架(具体体现就是说Spring创建一个代码需要配置对应的Bean和MVC(xml文件)但是SpringBoot无需配置)主要的一个特点就是约定大于配置(就我们上面说的Spring需要配置一些信息,但是SpringBoot就不需要)

代码示例:

SpringBoot实现

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@SpringBootApplication
@RestController
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}@GetMapping("/hello")public String hello() {return "Hello, Spring Boot!";}
}

Spring代码实现:

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;@Controller
public class HelloWorldController {@RequestMapping("/hello")@ResponseBodypublic String hello() {return "Hello, Spring!";}public static void main(String[] args) {ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");}
}

同时,你需要创建一个名为 applicationContext.xml 的配置文件,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsdhttp://www.springframework.org/schema/mvchttp://www.springframework.org/schema/mvc/spring-mvc.xsd"><context:component-scan base-package="你的包名"/><mvc:annotation-driven/>
</beans>

SpringCloud

Spring Cloud 是一个基于 Spring Boot 的微服务开发框架,它提供了一系列工具和组件,帮助开发人员快速构建分布式系统。

一、主要特点

     

     

    http://www.dtcms.com/wzjs/183926.html

    相关文章:

  • 网上做任务的网站初学者做电商怎么入手
  • 成都手机wap网站制作怎么买域名自己做网站
  • 重庆佳宇建设集团网站如何制作一个个人网站
  • 简单网站制作软件数据分析培训机构哪家好
  • 做网上任务赚钱的网站亚马逊的免费网站
  • 娄底网站制作qq群推广网站
  • 高端网站设计制作方法快速开发网站的应用程序
  • 做网站要审批吗北京百度seo排名点击器
  • 医院网站的建设网站编辑怎么做
  • 微商城 网站制作域名ip地址在线查询
  • 日韩男女直接做的视频网站浏览器网站进入口
  • 郑州高端网站建设公司哪里可以买链接网站
  • 公司网站建设哪家公司好网络营销师证
  • 网站设计软件凡科建站收费价目表
  • 织梦如何做视频网站网页优化公司
  • wordpress备案号百度网络优化推广公司
  • 怎么做网站推广知乎今日新闻最新消息
  • 深圳营销型企业网站长沙百度网站快速排名
  • 山东规划 建设部门的网站今天最新新闻报道
  • 哪个网站有上门做指甲seo关键词搜索优化
  • 自己设置免费网站设计平台网络平台宣传方式有哪些
  • 中国菲律宾高铁seo短视频加密路线
  • 汽车网站开发的需求分析最近七天的新闻重点
  • 具有价值的做pc端网站小说推文推广平台
  • 在线培训系统搭建方案网站seo优化心得
  • android源码下载网站百度引擎入口
  • 网站建设h5 武汉上海关键词优化按天计费
  • 网站效果用什么软件做seo搜索引擎优化工程师招聘
  • 在线做效果图有哪些网站厦门人才网官网招聘信息网
  • 成都网站建设推荐安徽秒搜科技百度一下官网首页网址