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 ...
随机推荐
- 使用mbedtls的使用说明和AES加密方法(原来的PolarSSL)
关于PolarSSL mbed TLS(以前称为PolarSSL)是TLS和SSL协议的实现,并且需要相应的加密算法和支持代码.这是双重许可与Apache许可证 2.0版(与GPLv2许可也可).网站 ...
- dede织梦系统接入熊掌号推送api,完整详细教程
第一步: 根据熊掌号要求完成校验页面,官方文档很详细,照着弄就行了 第二步: 开始后台改造 1.进入后台文件夹dede(自己实际的文件夹),然后进入templets目录,打开body_inde ...
- Hadoop学习------Hadoop安装方式之(一):单机部署
Hadoop 默认模式为单机(非分布式模式),无需进行其他配置即可运行.非分布式即单 Java 进程,方便进行调试. 1.创建用户 1.1创建hadoop用户组和用户 一般我们不会经常使用root用户 ...
- 2018-软工机试-E-热河路(TLE只拿了90分,待思考)
单点时限: 2.0 sec 内存限制: 256 MB 没有人在热河路谈恋爱, 总有人在天亮时伤感 如果年轻时你没来过热河路, 那你现在的生活是不是很幸福 ——李志<热河> 奔跑.跌倒.奔跑 ...
- MySQLdb模块(数据库)
安装 pip install mysqlclient 连接数据库 db = MySQLdb.connect(host="IP",port=端口,user="账号" ...
- 【Java】关于项目启动大请求量高负载时如何确保db等资源不出错的问题
如果一个项目启动时(单机), 瞬间来了1000个访问, 如何确保db等资源不会压垮呢? 现在想想我当时回答的并不好, 而现在看公司框架才发现其实有针对于这一块做过专门的优化的.下面就来分享下公司关 ...
- Unity3D UGUI实现Toast
项目中有些信息需要以Toast的形式体现出来,不需要交互,弹出后一段时间后消失,多个Toast会向上重叠,下面是一个UGUI Toast的实现,动画部份用到了Dotween来实现 首先需要制作Toas ...
- python从零开始 -- 第0篇之Hello World!
为什么选择python以及版本选择 学习资料 学习方法和路径 1. 为什么选择python以及版本选择: Python 好玩,强大,更多关于关于为什么选择Python,在 编程小白的第一本 Pyt ...
- Queue 队列的使用
队列一个先进先出的对象集合 public class PlayChickTopicData : MonoBehaviour { Queue<TopicData> topicDatas = ...
- mysql 外键和子查询,视图
1.mysql 外键约束 建表时生成外键 foreing key ('sid') references' student'('id'); 建表后添加外键 alter table' course ...