对spring,struts,hibernate及MVC的理解
对于spring,hibernate,struts等框架,刚开始的时候总是会很迷茫,不知道他们是用来做什么的。
1.对框架的作用理解
个人认为框架的作用是把代码进行了分类,减少了代码的耦合性。
如果不用框架的话,自己写出来的代码会很乱,各种函数方法都会聚集在一个类中或一个界面,而引入框架后对代码进行了分类。
例如spring中的xml,controller,service等,在controller中进行了对entity及service的调用。
这样代码更易于管理,方便维护,不至于在写完之后自己找都找不到了。
做项目的时候还用了mybatis。spring与struts是逻辑层使用,而mybatis与hibernate是数据持久层使用。
mybatis实现了dao接口与xml的绑定,自动生成了接口的具体实现。
2.spring与struts对比
//引用

3.hibernate与mybatis与ibatiS对比
hibernate就是把jdbc封装起来作为工具使用。
mybatis中需要自己写sql及resultMap,及对应结果的映射,而hibernate不需要,直接用就可以。当相对来说hibernate上手较mybatis更难。
hibernate数据移植性好,适合快速修改,数据库无关性高,功能很强大。
mybatis较之比较弱,但可以更细致sql。
ibatiS比mybatis更弱,需要手动指定对应关系。
4.MVC是什么
(M)model (V)view (C)control
model实现系统业务逻辑,view显示相当于jsp显示界面 ,control控制 model和view
mvc目的是实现web系统的职能分工。
各司其职,改起来比较方便,当业务变动时只需修改M层,当界面变化,只需修改V层。
对spring,struts,hibernate及MVC的理解的更多相关文章
- Spring+Struts+Hibernate 简介(转)
http://blog.csdn.net/slnqnd/article/details/1772910/ Struts2.0 +Hibernate 3.2 +Spring 2.0 一. ...
- MyEclipse — Maven+Spring+Struts+Hibernate 整合 [学习笔记-4]
引入Hibernate 在pom.xml中加入jar包引用 <!-- hibernate4 --> <dependency> <groupId>org.hibern ...
- MyEclipse — Maven+Spring+Struts+Hibernate 整合 [学习笔记-3]
引入Struts2 在pom.xml中加入jar包 <!-- struts2 --> <dependency> <groupId>org.apache.struts ...
- MyEclipse — Maven+Spring+Struts+Hibernate 整合 [学习笔记-2]
引入Spring 修改 pox.xml 文件 添加jar包引用 <!-- spring3 --> <dependency> <groupId>org.springf ...
- MyEclipse — Maven+Spring+Struts+Hibernate 整合 [学习笔记-1]
示例数据库test,用户信息表
- spring+struts+hibernate整合
spring整合: 1:添加配置文件和相应的spring jar包(记得一定要加上commons-logging的jar包,有坑****) 2:创建date对象,如果成功则spring的环境ok
- MyEclipse — Maven+Spring+Struts+Hibernate 整合 [学习笔记-5]
测试项目 目录结构
- Spring + Struts + Hibernate 简单封装通用接口
1.BaseDao public interface BaseDao<T> { /** * 获取符合条件的记录数 * @param filter * @param sortName * @ ...
- Spring + Struts + Hibernate + Bootstrap-table 实现分页和增删改查
1.bootstrap界面效果图: 2.Teacher实体类 public class Teacher { private int id; private String name; private S ...
随机推荐
- Sublime Text 3 安装 Emmet 插件
首先安装 Package Control 1.通过快捷键 ctrl+` 或者 View > Show Console 菜单打开控制台 2.粘贴以下代码后回车安装 import urllib.r ...
- 7.广播和多播,IGMP协议
1.单播,多播,广播的介绍 1.1.单播(unicast) 单播是说,对特定的主机进行数据传送.例如给某一个主机发送IP数据包.这时候,数据链路层给出的数据头里面是非常具体的目的地址,对于以太网来 说 ...
- [UT]Unit Test理解
Coding中有一个原则:Test Driven Development. UT中的一些基本概念: 1. 测试驱动 2. 测试桩 3. 测试覆盖 4. 覆盖率 单体测试内容: 1. 模块接口:测试模 ...
- win8系统换win7系统
吐槽一下先,win8换win7好费事~第一次弄,不过总算弄好了,记录一下吧. 首先,最坑人的就是,win8没法像win7那样按F1或者别的,直接进入BIOS,也就没法设置U盘引导,据说是由于win8的 ...
- JAVA中获取当前运行的类名,方法名,行数
JAVA中获取当前运行的类名,方法名,行数 public static String getTraceInfo(){ StringBuffer sb = new StringBuffer(); Sta ...
- MYBATIS 无效的列类型: 1111
查询的时候竟然也会报错,如果参数是数字,需要加上jdbcType 在xml中加上 t.chart_id = #{chartId,jdbcType=DECIMAL}
- ASP.NET Zero--13.一个例子(6)商品分类管理-删除分类
1.添加按钮 首先添加一个删除按钮,打开文件Index.js[..\MyCompanyName.AbpZeroTemplate.Web\Areas\Mpa\Views\Category\Index.j ...
- 使SSH不用输入密码
1. 自动ssh/scp方法== A为本地主机(即用于控制其他主机的机器) ;B为远程主机(即被控制的机器Server), 假如ip为192.168.60.110;A和B的系统都是Linux 在A上运 ...
- vue.js中ajax请求
<div id="app"> <table style="border-collapse: collapse"> <thead&g ...
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
转: http://blog.csdn.net/it_man/article/details/5074371 Spring事务配置的五种方式 前段时间对Spring的事务配置做了比较深入的研究,在此之 ...