Spring+Struts+Hibernate理解

前言

这次小编学习了spring+struts+Hibernate的框架,但是小编有点蒙,因为好像对他们不是太理解,所以在开始之前小编先做一个简单的总结,为了以后更好的发展做铺垫


Spring

Where spring

spring框架的产生是因为javaEE中EJB开发的负责性而产生的,所以会有很多东西与EJB非常类似,但是他唯一没有的就是规范,因为他的民间流行的一种产品,但是现在的EJB已经借鉴了spring的技术,加上自身的改良非常好用了


What spring

目的:解决企业应用开发的负责性
功能:使基本的javabean代替EJB
范围:任何java应用
使用:javabean技术
spring是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架


How spring

控制反转:当我们调用方法的时候我们不许要主动的去创建对象了,而是把这个权利叫给别人去干
依赖注入:spring主动创建被调用类的对象,然后把这个对象注入我们自己类中,这样我们就可以使用了


AOP:我们把一个方法看成一个切面,在这个前面的前后左右,我们都可以设置一些处理的方法,来进行一些特殊的处理
比如我们吃蛋糕,在吃蛋糕的时候我们需要拆盒,吃完之后我们要收拾垃圾,通过这种方式来实现编程


为什么叫做切面编程

在最开始的时候我们需要干的事情就是把每个里面都写日志,事物,权限,等一些共同的代码,没有得到复用,而且修改起来非常的方便,这个时候我们使用切面编程,切面指的横向编码,也就是我的事物,日志横穿一样,这样每一个人都可以都可以用一个,复用,易修改


这里写图片描述


这里写图片描述


Struts

What Struts

它是一个开源的框架,使用Struts的目的是为了让我们减少web应用的时间,当我们使用mvc框架的时候,如果想混合的使用jsp和servelts,那么strus是一个不错的选择,Strusts是Apache赞助的一个开源项目,最开始的时候他不是独立存在的,因为他采用了javaServlet和jsp计划,并且还让javaEEweb应用了mvc框架,所以才独立出来


Where Struts

Strusts翻译过来的意思是支柱,他的名字由来是建筑和旧式飞机使用的支持金书架。这个框架之所以叫Struts是因为为了提醒我们记住那些支撑我们房子的东西。这也是Struts所扮演的角色
当建筑师需要建筑每一层的时候,我们需要为每一层弄一个支柱,其实我们Struts也是在为业务应用的每一层提供支持,他的目的就是为了让我们减少运用MVC设计模型来开发web应用的时间,也就是减少开发时间,因为对于servelt与jsp来说可重用性差,非常不方便所以才有了Struts


这里写图片描述


Hibernate

What Hibernate

Hibernate的中文译为冬眠,但是用在javaEE中我们叫做持久化,什么是持久化:持久书就是将内存中的关系对象存储在关系型数据库中,也可以存储在磁盘或者是xml文件中


Where Hibernate

开放源代码的对象关系映射框架,他对JdBC做了对象封装,而且是轻量级的,他将POJO与数据库表建立映射关系,hibernate是一个采用全自动化的ORM框架,采用元数据描述对象-关系映射细节,元数据一般采用xml格式,hibernate可以自动化的生成sql语句,


Hibernate 优点

1.封装了jdbc,简化重复性代码
2.简化DAO编码工作,使开发更加对象化
3.移植性好,支持各种数据库,如果换了数据库我们也不用更改Hibernate的代码,只需要在配置文件中更改就可以了
4.Hibernate不需要继承任何类,不需要实现任何的接口,这样的对象叫做POJO对象


为什么我们要对象JDBC进行封装为Hibernate

1最开始的时候当我们还没有Hibernate的时候我们发现JDBC有很多语句 和连接,所以这个时候我们就是用Hibernate对JDBC进行了封装
2使用Hibernate的时候我们利用了他的ORM框架,这个时候我们就不需要对sql数据进行直接的操作,我们对对象来进行操作,把关系数据库的字段映射成我们的内存中对象的属性


这里写图片描述


对上述图进行扩展

1.Configuration:负责配置并启动Hibernate
2.SessionFactory接口:负责初始化Hibernate
3.session接口:负责持久化对象的CRUD(更新,删除,添加)等操作
4.Transaction接口:负责事物
5.Query:我们使用sql或者hibernate字符来对数据检索和创建对象
6.Criteria:对象用于创建和执行面向规则查询的对象来检索对象


这里写图片描述


总结

这次的学习让我体会到了新知识的思想,另外就是面向对象,面向过程,面向切面,让我们感觉这种思想这的非常好,如果运用到生活中我们一定会高效起来的,所以学习计算器是为了学习思想!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王雪芬-ghqr-264962

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值