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 ...
随机推荐
- Groovy学习笔记-动态类型
1.respondsTo方法判断对象是否存在指定方法 interface IHelp{ void helpMoveThings() } class Man implements IHelp{ void ...
- gulp的使用(二)之gulpfile.js文件的配置
Gulpfile.js是什么文件: gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成:使用她, ...
- dos6章
现在开始: 在CMD使用IF /?打开IF的系统帮助(自己看我就不全部列出来了),我们会发现IF有3种基本的用法!执行批处理程序中的条件处理. IF [NOT] ERRORLEVEL number c ...
- 删除csdn上面自己上传的资源
今天想删掉以前的资源,才发现CSDN并没有提供删除资源的功能,然后去网上搜了下,这才删除了,不知道怎么删除的小伙伴看过来~ 首先,找到自己要删除资源的页面,举个栗子 https://download. ...
- Ubuntu和Linux的区别
大家听别人介绍自己的Ubuntu时,会听到“我的操作系统是Linux的”.其实,这样介绍是缺乏严谨性滴.我们只要知道两点,基本上就搞清楚Linux和Ubuntu的关系: 1. 严格来说,Linu ...
- paddlepaddle
1. 训练过程中cost出现nan 可能是因为有脏数据,寻找脏数据的方法就是,设置batch_size=1, paddle.reader.shuffle 中buf_size=1 一条一条的进行训练,看 ...
- mysql执行sql脚本文件
mysql执行sql脚本文件 方法一:使用cmd命令执行(windows下,unix或Linux在的其控制台下) [MySQL的bin目录]\mysql –u用户名 –p密码 –D数据库<[sq ...
- 如何将本地git仓库中的代码上传到github
1, 在github上新建一个仓库,比如为:CSS3Test,仓库地址为:https://github.com/hyuanyuanlisiwei/CSS3Test 2,本地git仓库中的文件项目为C ...
- L1-043 阅览室
天梯图书阅览室请你编写一个简单的图书借阅统计程序.当读者借书时,管理员输入书号并按下S键,程序开始计时:当读者还书时,管理员输入书号并按下E键,程序结束计时.书号为不超过1000的正整数.当管理员将0 ...
- 各种BUG
1.下载VS2005,版本太低和win10不好兼容 2.由于提前下载好了,visual studio2010,在下载VS2012过程中提示说检测到要更新VS2010才可以,百度后,返回安装上一步,取消 ...