MySQL12-反射

image-20200731104831470

…写在最后

image-20200731142122193

一、概念

在java程序过程中,动态去获取类信息(所有的属性和方法),同时调用属性和设置属性值以及方法,这个在动态操作属性和方法过程叫做java的反射机制

二、使用(会有很多异常)

2.1获取类信息

自动加载类信息(静态块也进行加载),c代表类信息(属性,方法,构造方法)

image-20200731105926342

image-20200731110326063

普通的只是获取类信息,没有加载类(静态块等)

image-20200731105916491

2.2根据类信息,可以动态创建对象

//调用无参构造方法,用的较多
Object obj = c.newInstance();//捕获异常

相当于

image-20200731111312744

调用有参构造(不兼容包装类Integer等)

image-20200731111834001

2.3 获取里面的所有属性信息

根据属性名获取字段信息(抛异常),返回一个field(字段),私有也可以获取

image-20200731112630684

忽视private的检测

image-20200731141231889

方法里执行set也可以忽略private的检测

有返回值用result来接收,无返回值为null

image-20200731141729690

获取所有字段信息,返回一个字段集合(field[])

image-20200731113014168

反编译?

2.4 获取类下面的方法

需要抛异常,参数为方法名,方法参数的类类型来进行对具体方法的匹配

image-20200731113432199

2.5重写basedao

1.通过字段

image-20200731143044500

2.通过方法invoke

image-20200731145139627

getColumnName取的是列名,不取别名

image-20200731144759000

要换一下方法getColumnLable,取的是别名,实际情况用lable方法

image-20200731144919962

三、多表查询的dao

外键所在类设置一个属性为:主键类的对象

多表映射只能自己写

怎么体现外键的关系?在department里新建的company的作用?

四、JDBC事务的执行

image-20200731162227649

五、调用JDBC的存储过程

CallAbleStatement

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值