spring hibernatestruts+Spring+hibernate简单流程

spring hibernate  时间:2022-02-28  阅读:()

struts+Spring+hibernate简单流程

SSH框架都是取其优点的, 个人理解: Hibernian 的最大好处就是根据数据库的表反向生成实体类,并且还有关系在里面,还有就是它的对数据的操作也很方便。 Spring 我理解的就是程序员的春天,省去了在类里面new 对象的过程,把这个调用与被调用的关系直接展示到了配置文件里,做任何操作都变简单了。 我就这么跟你说吧, 程序框架搭好,各种jar包导好后,开工了 就拿注册功能来说 页面只有两个文本框 一个用户名(uname) 一个密码(pwd) 首先是action层: 它是负责在页面和程序之间传输数据的,还有作用是做页面跳转。页面由用户填写表单数据,点击提交按钮,页面的表单数据由Hibernian自动封装到该页面表单所对应的ActionFrom(ActionFrom跟实体类不是一个东西,ActionFrom是页面有什么值,我类里就写什么属性,是封装表单数据用的。而实体类是完全按照数据库的字段生成的,实体类可以当做ActionFrom用,但ActionFrom绝对不可以当做实体类用),这样表单数据就以ActionFrom对象的形式在Action的点击提交按钮执行的那个方法里存在了,这个时候你需要的就是把表单数据存入数据库中,但如果数据库里并非只有页面上的uname和pwd两个字段,还有其他字段比如用户状态,那你就需要另行在程序里给该属性赋值了,否则会报非空错误,这里的例子,页面只有两个文本框,数据库也只有这两个字段,就不必考虑那么多了,到这一步,action的功能告一段落了,接着是把数据传入BIZ层。 Biz层(业务逻辑层): 它负责的是对数据的处理,比如网站功能是点卡销售,你就需要在这个层里对点卡的打折啊其他的数学问题做操作了,在这个例子里,此层只做单纯的数据传递作用,而后又到了DAO层。 Dao层(数据库操作层): 它负责对数据向数据库增删改查的操作,不多解释了。 以上例子,不使用spring的话,每个层之间的数据传递你都需要new一个调用该层数据的类的实例,而使用了spring的话,你需要做的就是把Dao层和Biz层的每个类都写一个接口类,接口类里写实现类的方法,在调用的时候不new 对象,直接用对象点(.)方法就可以,别忘了对每个对象加上set/get方法。 Biz层例子 private saveMyScheduleDaoImpl smsDI; //类里定义写接口(saveMyScheduleDaoImpl ),不要写实现类,并且不new set/get方法略········· public List saveMySchedule(Schedule s) { return smsDI.saveMySchedule(s); //因为是接口的实例,所以要求该接口里必须写上实现类的所有方法,这样才能点(.) } 这里只简单写了一个BIZ层的。 以上流程只是从页面获取值存入数据库,是单向的Action层->Bzi层->Dao层的数据传递,Dao层->Biz层->Action层的数据传递和我刚刚将的一样,就是反过来了。 到这一步的总结: Dao层写接口并且接口里写实现类的所有方法。 Biz层写接口并且接口里写实现类的所有方法。调用Dao层方法只定义Dao层需要调用方法所属的类的接口,而后添加get/set方法,再用该接口的没有new的实例点(.)方法。 Action层同Biz层。 下面就是强大的spring的工作了-------依赖注入 所有改写的死东西都写完了,我们就差在配置文件里依赖注入了 找到spring的配置文件,先注Dao层,这个时候一定要注意一点,就是依赖注入的时候注的必须是实体类!! 而不是接口!! 这是一种良好的变成习惯。 Dao层的依赖注入里绑定的是你在往工程加Spring的时候让你填写SessionFactory的那个值,配置文件上面应该会有这个bean的。 然后是Biz层的依赖注入,同样也是注实体类,根据我这个例子里面会有smsDI需要绑定,这个时候填写你注的Dao层的相对应的类的名字就行。 然后是Action层的依赖注入,大体同Biz层一样。 依赖注入完毕后,你就可以尽情的去嗨配了。

妮妮云36元,美国VPS洛杉矶 8核 8G 36元/月,香港葵湾 8核 8G

妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...

数脉科技:六月优惠促销,免备案香港物理服务器,E3-1230v2处理器16G内存,350元/月

数脉科技六月优惠促销发布了!数脉科技对香港自营机房的香港服务器进行超低价促销,可选择30M、50M、100Mbps的优质bgp网络。更大带宽可在选购时选择同样享受优惠,目前仅提供HKBGP、阿里云产品,香港CN2、产品优惠码续费有效,仅限新购,每个客户可使用于一个订单。新客户可以立减400元,或者选择对应的机器用相应的优惠码,有需要的朋友可以尝试一下。点击进入:数脉科技官方网站地址数脉科技是一家成...

ThomasHost(月付5美元)美国/法国/英国/加拿大KVM,支持Windows

ThomasHost域名注册自2012年,部落最早分享始于2016年,还算成立了有几年了,商家提供基于KVM架构的VPS,数据中心包括美国、法国、英国、加拿大和爱尔兰等6个地区机房,VPS主机套餐最低2GB内存起步,支持Windows或者Linux操作系统,1Gbps端口不限制流量。最近商家提供了一个5折优惠码,优惠后最低套餐月付5美元起。下面列出部分套餐配置信息。CPU:1core内存:2GB硬...

spring hibernate为你推荐
x77论坛"0x00000008"指令引用的"0x00000008"内存.该内存不能为"read"trapezoidtearing strength是什么意思逗号运算符c语言的逗号运算符什么意思,举例解释下aftereffectpremiere pro与after effect的区别linux安装教程linux怎么安装啊html源代码求一个简单的HTML代码,在线等,急系统登录界面电脑用户登录界面,输入密码登不进去了,怎么解决,急rs485协议HART modbus profibus 这三种协议有什么区别?这几种协议都是干什么用的?数据管理制度数据必须符合以下基本原则有哪些阶乘函数阶乘怎么算?
美国vps服务器 php主机空间 vps推荐 外贸主机 omnis 美国主机代购 免费个人博客 193邮箱 bgp双线 服务器是干什么的 国外免费asp空间 shuang12 德隆中文网 免费个人网页 万网注册 学生机 什么是dns 美国达拉斯 vim 大硬盘分区 更多