JSP和Struts2、Hibernate、Spring3基础内容和原理
一、JSP工作原理
1、首先是利用客户端浏览器,然后由客户端浏览器请求JSP页面,向JSP服务器发出请求。
2、JSP服务器内部原理
JSP服务器首先在收到客户端传送过来的请求后,将JSP页面编译成Servlet文件(JAVA文件),然后执行Servlet文件,生成.Class文件,然后将执行结果以HTML的格式发送到浏览器上。
3、客户端浏览器接收到Servlet发送过来的内容,并将其显示到页面中。
二、JSP的两种体系结构
1、JSP页面独自响应请求并将处理的结果返回用户
2、将JSP和Servlet联合使用来实现动态内容服务的方法
三、JSP开发Java Web站点的主要方式
1、直接使用JSP
对于最小型的Web站点,可以直接使用JSP来构建动态网页。
2、JSP+JavaBean
中型站点面对的是数据库查询、用户管理和少量的商业业务逻辑,
3、JSP+Servlet+JavaBean
能够将网站的逻辑关系和网站的显示页面轻易分开。
4、Java EE开发模型
整个系统分为三个主要部分:1、视图;2、控制器;3、模型。
四、Struts2运行原理解析
1、客户提交请求到服务器
2、请求被提交到经过一系列过滤器和拦截器,最后到达FilterDispatcher(核心控制器)、Filterdispatcher是Struts2中MVC模式的控制部分。
3、FilterDispatcher读取配置文件Struts.xml,根据配置信息调用某个Action来处理客户请求。
4、Action处理后,返回处理结果,FilterDispatcher,根据Struts.xml的配置找到对应的页面跳转。
Struts2运行原理图:

五、Hibernate基础原理
1、Hibernate主要作用是:
体现了ORM(对象与实体之间的映射关系)的思想,即对象与数据库中的表的相互映射。、
2、Hibernate主要原理是:
特点是封装了JDBC与ORM技术的数据持久性的解决方案,是在Java中关注最多,使用最广泛的框架。
3、Hibernate主要原理图:

六、Spring3基础原理
一、主要作用
主要是用于降低模块间的耦合度的框架,Spring3能够通过Ioc(控制反转)来降低模块间的耦合度。
二、主要包含的内容
Spring3是一个轻量级的控制反转(IOC)和面向切面变成(AOP)的容器框架。之所以叫轻量级是指从软件大小与开销两方面而言的。IOC的作用:对象依赖的其他对象通过被动的方式传递进来而不是这个对象自己做创建或者查找依赖对象。
JSP和Struts2、Hibernate、Spring3基础内容和原理的更多相关文章
- jsp之认识 servlet (基础、工作原理、容器请求处理)
Tomcat 的安装: eclipse 需要自行安装tomcat,这是web 项目运行的服务器.如果用的是MyEclipse,里面自带tomcat,方便清除部署垃圾,利于项目运行. Tomcat的安装 ...
- Struts2.0+Spring3+Hibernate3(SSH~Demo)
Struts2.0+Spring3+Hibernate3(SSH~Demo) 前言:整理一些集成框架,发现网上都是一些半成品,都是共享一部分出来(确实让人很纠结),这是整理了一份SSH的测试案例,完全 ...
- struts2+hibernate整合-实现登录功能
最近一直学习struts2+hibernate框架,于是想把两个框架整合到一起,做一个小的登录项目.其他不多说,直接看例子. 1).Struts2 和hibernate的环境配置 包括jar包.web ...
- JQuery+Ajax+Struts2+Hibernate 实现完整的登录注册
写在最前: 下午有招聘会,不想去,总觉得没有准备好,而且都是一些不对口的公司,可是又静不下心来,就来写个博客. 最近在仿造一个书城的网站:http://www.yousuu.com ,UI直接拿来用, ...
- Spring整合Struts2,Hibernate的xml方式
作为一个学习中的码农,一直学习才是我们的常态,所以最近学习了SSH(Spring,Struts2,Hibernate)整合,数据库用的MySQL. 写了一个简单的例子,用的工具是IntelliJ Id ...
- [Java web]Spring+Struts2+Hibernate整合过程
摘要 最近一直在折腾java web相关内容,这里就把最近学习的spring+struts2+hibernate进行一个整合,也就是大家经常说的ssh. 环境 工具IDE :Idea 2018 数据库 ...
- struts2.3+spring3.2+hibernate4.2例子
有些教程比较老,可是版本更新不等人,基于马士兵老师小例子,自己重新引用了新的包,调试确实有点烦人,但是通过英文文档和google解决问题.官网的更新超快,struts2.3+spring3.2+hib ...
- Spring+Struts2+Hibernate的整合
这篇主要采用Maven搭建Spring+Struts2+Hibernate的整合项目,复习一下SSH框架,虽然spring提供自己的MVC框架, 但是Spring也提供和其他框架的无缝整合,采用组件形 ...
- JSP+Spring+SpringMVC+Hibernate+Mysql实现的校园失物招领网站
项目简介 项目来源于:https://github.com/wenlongup/LostAndFound 因原github仓库无数据库文件,经过本人修改,现将该仓库重新上传至个人gitee仓库. ht ...
随机推荐
- js 回调函数理解
function A(callback) { console.log('我是主函数'); setTimeout(function () { callback("我是主函数传出的") ...
- springboot单元测试自动回滚:@Transactional
2019-04-21 12:23:14.509 INFO 9384 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - St ...
- Windows 7 改造
1.界面改造 1.1 软件 Wallpaper Engine 收费(18¥) 动态桌面,通过steam安装,使用steam中的创意工坊下载内容 最好使用集成显卡运行,单显卡方案容易桌面异常刷新 Clo ...
- npm ERR! Unexpected end of JSON input while parsing near...错误
问题解决方案在GitHub中: https://github.com/vuejs-templates/webpack/issues/990 总结一下:1.删除package-lock.json 2.进 ...
- C# Ini、Json、Xml 封装类
1.Ini是什么?(我对它的理解,用于存储用户配置信息的文件,该文件放在用户电脑...) INI文件是一个无固定标准格式的配置文件.它以简单的文字与简单的结构组成,常常使用在Windows操作系统,或 ...
- 浅谈jquery事件命名空间
什么是jquery的事件命名空间? 先看如下简单代码: $("#btn").on("click.name1.name2",function(){ console ...
- 华莱士的 第一个python程序之(用户登录)
Name = "shangzb"password = 43while True: _Name = input("Name:") if _Name == Name ...
- 20165228《网络对抗技术》Exp0 Kali安装 Week1
2018-2019-2 <网络对抗技术>Exp0 Kali安装 Week1 Kali下载:来自官网 Kali安装 参考自kali安装教程 (因为写博客时已经安装好kali,所以这部分没有自 ...
- Hive元数据找回
如果不小心删除了了hive的元数据文件(/user/hive/warehouse),只要先前core-site.xml文件中设置了fs.trash.interval属性就可以找回.hdfs会为用户创建 ...
- 【EMV L2】数据元格式 & 对齐方式
[数据元格式] [对齐方式] 摘录:<中国金融集成电路(IC)卡规范 第6部分:借记贷记应用终端规范.pdf>- 8 终端数据