Web开发框架 SSH 简介
Struts
是一个很好的MVC框架,主要技术是Servlet和Jsp。Struts的MVC设计模式可以使我们的逻辑变得很清晰,让我们写的程序层次分明。
官方地址:http://struts.apache.org
Spring
提供了管理业务对象的一致方法,并鼓励注入对接口编程而不是对类编程的良好习惯,使我们的产品在最大程度上解耦。
官方地址:spring: http://www.springsource.org
Hibernate
是用来持久化数据的,提供了完全面向对象的数据库操作。Hibernate对JDBC进行了非常轻量级的封装,它使得与关系型数据库打交道变得非常轻松。
官方地址:http://www.hibernate.org
SSH架构图:
- Struts负责Web层
ActionFormBean接收网页中表单提交的数据,然后通过Action进行处理,再Forward到对应的网页,在Struts-config.xml中定义了<action-mapping>,ActionServlet会加载进来。
Spring负责业务层管理,即Service
Service为Action提供统一的调用接口,封装持久层的DAO,并集成Hibernate,Spring可对JavaBean和事物进行统一管理。Hibernate负责持久层,完成数据库的CRUD操作
Hibernate有一组hbm.xml文件和PO,是与数据库中的表相对应的,然后定义DAO,这些是与数据库打交道的类。
在Struts+Spring+Hibernate系统中,对象之间的调用流程如下:
- Struts —> Spring —> Hibernate
- JSP —> Action —> Service —> DAO —> Hibernate
Web开发框架 SSH 简介相关推荐
- 开源web终端ssh解决方案-gateone简介
好久都没来写博客,最近忙啥去了呢? 一是忙于saltstack的二次开发,二是云计算的学习研究中,所以就一直没写东西,今天给大家介绍个工具. 1. 首先来说一下为什么要 web ssh? 许多人不是说 ...
- Java开源Web开发框架
WebWork WebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架.WebWork目前最新版本是2.1,现在的WebWork2.x前身 ...
- Python web开发框架—— Pyramid学习(一)
pyramid开发者文档: https://trypyramid.com/documentation.html 一.pyramid简介 在Python web 开发框架里有多种选择,有Django.T ...
- KOA 2.0 新一代WEB开发框架-姜威-专题视频课程
KOA 2.0 新一代WEB开发框架-231人已学习 课程介绍 koa 是由 Express 原班人马打造的,致力于成为一个更小.更富有表现力.更健壮的 Web 框架. 使用 koa ...
- 一站式 Java Web 开发框架 Firefly 作者邱鹏滔专访
Firefly是一个高性能的一站式Java Web框架,涵盖了web开发的主要技术栈,包含模板引擎.IOC/MVC框架.HTTP服务器.Common工具.Log.Json解析器等模块. 项目主页: h ...
- 极速Web开发框架JFinal
JFinal是一个基于Java的极速Web开发框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展.Restful,在拥有Java语言所有优势的同时再拥有Ruby.Python ...
- 【Python Web】30个Python Web开发框架介绍
收藏:30个Python Web开发框架介绍 1. Bobo 2. Bottle 3. CherryPy 4. Cyclone 5. Flask 6. Itty-Bitty 7. Klein 8. M ...
- python web开发框架比较
python web开发框架,如Django.Flask.Tornado.Web2py等的比较. 名称 watch star fork commints branches releases contr ...
- python web开发框架flask_Python Web 开发框架,Flask 与 Django那个更好
本文把 Flask 和 Django 做一个比对,因为我对这两个 Python Web 框架都有实际的开发经验.希望我可以帮助您选择学习哪个框架,因为学习一个框架可能会非常耗时 -- 当然也很有趣! ...
最新文章
- Windows下查看dll被哪个进程调用
- C# VS2012操作word文档 (二).插入表格图片
- pandas常用函数(更新中)
- vue.js v-for
- 推特称攻击者利用其 API 匹配用户名和电话号码
- DFS序--树的问题转化为区间问题
- Spring的数据库编程浅入浅出——不吹牛逼不装逼
- Android中的界面组成
- LGOJP1941 飞扬的小鸟
- php-ftm,关于KEA128中FTM0/1的问题
- SAS统计描述、作图与均值显著性检验
- matplotlib的常用的两种方式以及pylab
- java中接口可以继承接口吗?
- PostgreSQL pgsql身份证格式校验,身份证格式提取api
- 组合逻辑中的竞争与冒险
- att汇编教程 linux,att 汇编 helloworld
- 聚划算成清仓专用 问题产品充斥
- python+opencv像素的加减和加权操作
- SQL Server 中4个系统数据库,Master、Model、Msdb、Tempdb
- mysql查询姓名第二个字_下列哪条语句能够从学生表中查询出姓名的第二个字是“敏”的学生的信息( )。_学小易找答案...
热门文章
- mysql命令技巧_Mysql命令行技巧汇总
- 分区和分片的区别_数据库的分表、分库、分片和分区等区别
- python 人脸识别_手把手教你用python实现人脸识别,识别率高达99.38%
- 微软技术支持工程师_微软催你买电脑啦!即可+99元即可享受上门帮教服务
- 面向对象课程第二单元作业总结
- LB 终面 与 智能家电 的浅析
- I00031 Look-and-say sequence
- 802.11n 连接的建议设置是什么?
- LaTeX 简介与安装
- 3 文件读写 计时 我的烂电脑在1S钟能写70多MB的数据