同步操作将从 flatfish/Java-Review 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
就是控制反转。电脑的输入设备依赖它被插入的是什么键盘。插入机械键盘,输入设备就是机械键盘,插入数字键盘就只能输入数字。从插键盘这个事来说:无非是从电脑角度看,是依赖注入,输入设备是什么依赖注入的键盘是什么;从键盘角度看是控制反转,插入的键盘来控制电脑是什么输入设备。
为什么要用依赖注入?目的就是可以灵活搭配。如果你的电脑上的键盘是焊死在电脑上的,键盘坏了,你的电脑也废了。你肯定不想这样吧。
Java开发中,我们需要创建大量的对象,有些重要的对象牵一发而动全身,这样的对象我们可以交给Spring帮我们来创建,我们只需要提供配置文件,这个配置文件可以是xml,也可以是java本身。好比Spring是个工厂,按图纸就可以做出产品。
什么是切面?你可以这样想:一个公司有多个销售部,都需要行政帮忙搞定日常的订文具、机票、办公室、出差酒店什么的,都需要财务搞定报销、收付款什么的事务吧,要仓库帮忙发货什么的。不可能每个销售部都去招几个行政、财务和仓管什么吧,销售部门只要做好业务就行了,订文具什么的事情交个专门的部门去办就行。
在Spring AOP 中,把这些公共的事务,也就是这个例子中的行政啊、财务啊、仓管啊,看成一个个切面,让你的开发的时候,专注于核心业务。
这个的话,你要先理解一下MVC是什么?
C - Controller:控制器。接受用户请求,调用 Model 处理,然后选择合适的View给客户。
M - Model:模型。业务处理模型,接受Controller的调遣,处理业务,处理数据。
V - View:视图。返回给客户看的结果。注意这里的客户未必是人,可能是浏览器,可能是APP。
这样想必你不明白,举例:你去饭店吃饭,坐下来后,服务员小妹来找你点菜。你点了个宫保鸡丁,小妹就拿着你的点菜单都后厨。后厨的师傅打开食物储藏柜,找到鸡丁,开炉子,放油,一顿爆炒,装盘。小妹端起盘子回到你的桌子。当然,如果小妹觉得你帅,说不定还会偷偷加个鸡腿给你;如果你碰巧是当年甩了小妹的前男友,说不定小妹会吐口口水在里面。
这里,你就是客户,你点菜就是发出请求(Request),小妹就是Controller,后厨就是 Model,小妹最后给的盘子及里面的内容就是View,小妹给你盘子就是响应(Respond)。Controller处理客户请求,反馈给Model。Model处理,返回数据(宫保鸡丁)给Controller(小妹)。小妹可以直接给你,也可以给你加鸡腿或吐口水后给你。最终,你得到了一盘吃的(View)。
Spring MVC就是个MVC框架,和Spring天生就集成。
一个帮你和数据库打交道的框架。帮你把数据库的表翻译成类,字段翻译成类的字段,记录翻译成对象。(当然这些全要靠你自己定义。)
这样做的后果就是,你可以像写java一样操作数据库了。什么打开JDBC,防止sql注入,不用考虑,MyBatis帮你搞定。
Spring中,通过简单的设置就可以集成MyBatis这个框架,所以会有SSM框架的说法。
从配置文件(通常是XML配置文件中)得到 sessionfactory.
由sessionfactory 产生 session
在session 中完成对数据的增删改查和事务提交等.
在用完之后关闭session 。
在java 对象和 数据库之间有做mapping 的配置文件,也通常是xml 文件。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。