美文网首页
IoC容器,使用注解方式加载bean,入门注解,java反射了解

IoC容器,使用注解方式加载bean,入门注解,java反射了解

作者: 在路上phper | 来源:发表于2018-02-24 23:15 被阅读7次

这节课首先我们学习下注解,使用注解在代码中对bean进行定义
首先来到官网https://docs.spring.io/spring/docs/5.0.3.RELEASE/spring-framework-reference/core.html#beans-annotation-config
https://docs.spring.io/spring/docs/5.0.4.RELEASE/spring-framework-reference/core.html#beans-java
接下来演示下代码
首先创建一个MyConfig文件
目录如下

image.png
代码如下
image.png
根据官网可知 在MySpring中调用如下
image.png
运行结果
image.png
下面将setUserNameLength参数改为6
代码如下
image.png
运行结果
image.png
上面代码即为注解方式加载bean对象
下面我们学习一些其他知识点。
image.png
以后我们会了解到什么时候使用xml方式好还是注解方式好
假设有这样的需求 数据库中有许多字符串连接字符串包括用户名密码等等 我们把这些写在myuser.xml文件中也是可以的 这里面有大量的常量字符串 这种明显写在xml中更方便
接下来我们对自定义注解进行编码
首先在com.jtthink下面创建一个MyAnnos包(注解)
接下来在SpringBean下面创建一个测试文件MyTest.java文件
目录如下
image.png
代码如下
image.png
接下来创建一个注解
在MyAnnos中创建一个NameCheck注解文件
image.png
接下来在MyTest文件中打上注解
image.png
有了注解之后,我们的代码是否能通过注解产生一些变化呢?
在注解里面是不能写任何代码的 会报错
接下来在MySpring中写入测试代码
image.png
运行结果
image.png
可以看见输出了bhc 注解没有产生任何作用
所以接下来我们需要了解反射这个功能
image.png
反射:在程序运行的过程中,去加载某一个类或对象,也叫作动态加载
image.png
接下来我们写下代码
image.png
运行结果
image.png
以上代码为通过反射方式获取MyTest类中的方法
下面通过反射的方式获取注解
image.png
运行结果
image.png
结果为空 说明并没有获取到注解
是因为注解代码中需要写入一些修饰内容
接下来学习下注解的生命周期
image.png
image.png
接下来修改一下NameCheck中的注解
image.png
把MySpring中取出注解的地方做下修改
image.png
因为我们的注解打在了showName方法上 所以需要通过方法取出注解 不能通过类取出
运行结果
image.png
可以看见取出了注解内容
接着修改下MyTest中打入注解内容
image.png
运行结果
image.png
可以看见注解发生了变化
那么这样写注解有什么作用呢
得到注解后可以做一个判断
看如下代码
image.png
运行结果
image.png
所以在spring内容有庞大的程序对我们的注解进行控制,其也是使用反射的方式
下面我们接着修改一下MySpring代码
image.png
运行结果
image.png
我们将name值做下修改
image.png
运行结果
image.png
image.png
执行了上面的invoke方法 输出了showName值

相关文章

网友评论

      本文标题:IoC容器,使用注解方式加载bean,入门注解,java反射了解

      本文链接:https://www.haomeiwen.com/subject/poqwtftx.html