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

做网站 免费字体做好网络推广

做网站 免费字体,做好网络推广,有教做桥梁质检资料的网站吗,全球咨询公司最新排名IOC 在传统Java当中,我们的对象都需要new关键字来生成,这在面对很多对象的情况产生了不必要的麻烦,因为我不需要在一个项目中一直做重复的事情,那怎么办把,自然而然的一些好的框架就诞生了,避免我们去做这…

IOC

在传统Java当中,我们的对象都需要new关键字来生成,这在面对很多对象的情况产生了不必要的麻烦,因为我不需要在一个项目中一直做重复的事情,那怎么办把,自然而然的一些好的框架就诞生了,避免我们去做这些重复的事情。

ioc就是控制反转,创建对象的容器,他是一种面向切面的编程,就比如你要重复做某些事情,你单纯把这件事情抽象出来,然后写出来,给我的感觉很像Lombok,加一个@Data这样子数据就不需要get,set方法,自动生成,这样子就看着很优雅了,有一种美感。

ioc容器加载有大体上有两种模式,一种基于xml,还有是基于注解,后者就具有普适性,越来越常用了,接下来就展示一下这两种方法

这两种方式的前提都要在pom.xml中配置好依赖,这是至关重要的一步

基于XML的方式

(现大多使用注解方式,xml方式并不简洁,本文仅记录xml用作了解)

resource目录下创建Spring的xml文件,名称无要求

文件最上头的几行为约束,表示可以用哪些标签等

在bean.xml文件中写bean标签:id为类的唯一标识,class为类的全类名(包名+类名)

ApplicationContext context=new ClassPathXmlApplication(spring.xml)

想获取文件里面的对象,三种方法,基于id,基于class,还有就是两个一起用

getBean(类名.class)或者getBean(id)都可以,但是值得注意两点:

当根据类型获取bean时,要求IoC容器中指定类型的bean有且只能有一个。

当IOC容器中一共配置了多个,根据类型获取时会抛出异常。

因为他不只要找谁。

基于注解的方式

AnnotationConfigApplicationContext + @Configuration

创建一个类,给他加上@Configuration注解,给要创建的对象加上一个Bean注解(这里给以给定一个value/name值,这样子可以通过id查找,默认是方法名)

这里注意的是,当配置类很多的情况,我们可以直接传进去资源包,会通过扫包的形式,指定该包名即可,加载所有bean。

ApplicationContext ctx = new AnnotationConfigApplicationContext(AppConfig.class);
public class AnnotationConfigApplicationContext extends GenericApplicationContext implements AnnotationConfigRegistry {...
}


都是基于ApplicationContext继承,看名字其实,确实很好,在以后大规模的时候就会知道他的优势,感觉越来越有趣了,哈哈哈

这里再补充一下,bean

什么是bean

可以这么说bean是计算机自动生成的类,Bean 是Spring框架中用于表示一个对象的术语,我感觉都挺对,但是和一般的对象不一样,他有他的规范:

  • 这个Java类必须具有一个无参的构造函数
  • 属性必须私有化。
  • 私有化的属性必须通过public类型的方法暴露给其它程序,并且方法的命名也必须遵守一定的命名规范。

接下来介绍一些注解

@Component注解

作用是将一个 Java 类标识为 Spring 的组件(Bean) 注解可以用于标记任何一个普通的 Java 类,并将其纳入 Spring 管理

@value注解

直接赋值

@Value("localhost:8080")
String url;

@Autowired注解

装配,自动装配,不光能创建单个对象,还能完成对象之间的关系注入

@Data
@Component
public class DataConfig{
@Value("localhost:3306")
private Sting url;
@Value("Driver")
private Sting driverName;
@Value("root")
private Sting username;
@Value("root")
private Sting password;
}
@Data
@Component
public class GlobalConfig{
@Value("8080)
private String port
@Value("/")
private String path;
@Autowired
private DataConfig dataConfig;
}

有了这个注解,当ioc容器中存在这两个对象,就可以在全局中获取这个DataConfig,根据类型获取(byType),也可以根据名称加上一个(@Qualfiler("name")专门取名字的一个注解,就回会去找改类型为这个名称的注解进行对应,如果没找到,会报错)。

AOP

面向切面编程,抽象化的面向对象的编程,面向对象的补充,以打印日志为例,当我们打印日志和业务当面重叠时(即耦合度很高的情况下,其实是不利于我们开发的),方法的开始的参数,解释的时候打印结果,会有重复的代码,统一的位置抽象起来,形成一个对象,一百个方法,只需要对应的位子,单独处理,自动更新。只保留核心的代码,进行一个分离

那怎么实现呢?

如果单纯使用方法,还得创建对象,其实是比较麻烦的

流程,一个对象,切面对象(即分离出来的某一部分),通过代理对象进行连接,先分离后整合的方式

@ASpect声明是一个参数

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

相关文章:

  • 做网站怎么开发客户长春网站关键词排名
  • 做科技申报看什么网站线上营销推广公司
  • 微信网页版如何识别二维码seo排名点击器原理
  • 丽江建网站seo站点
  • wap网站开发用什么语言今日热搜榜官网
  • 政府网站建设与管理规范免费行情软件网站大全
  • 网站建设 算什么ios aso优化工具
  • 深圳专业建站系统建站公司做网络销售如何找客户
  • html如果制作一个内容多的网站网络营销的推广方法
  • 做营销网站建设价格广州网站优化页面
  • 汕头专业的免费建站建个网站需要多少钱?
  • 冠县做网站网络营销的四大特点
  • 网站建设对企业很重要新闻 今天
  • 做网站优化多少钱杭州小周seo
  • 网站建设制作包括哪些比较好的品牌策划公司有哪些
  • 个人网站建设网络营销平台有哪些
  • wordpress密码阅读苏州seo
  • 网站建设与管理方案的总结新闻联播俄罗斯与乌克兰
  • 朝阳区网站建设现在推广引流什么平台比较火
  • 百度搜索引擎收录广州网站优化方案
  • 提供手机自适应网站建设维护百度推广年费多少钱
  • python做的网站seo优化在哪里学
  • 江西网站建设价格低怎么注册百度账号
  • 企业官方网站制作推广软件常熟网站建设
  • 百度短链接转化器seo是什么的缩写
  • 百度网站验证方法seo优化中商品权重主要由什么决定
  • 个人网站做团购百度快照如何优化
  • 公司集团网站开发百家号关键词排名
  • mvc4做网站五系统优化app
  • 万豪酒店线上营销推广惠州seo关键词排名