八、web开发模式

一、JavaBean

1.1 JavaBean规范

		 
		 JavaBean,  咖啡豆。 JavaBean是一种开发规范,可以说是一种技术。
		
		 JavaBean就是一个普通的java类。只有符合以下规定才能称之为javabean。
		 	  javaBean规范:
						  1)必须提供无参数的构造方法
						  2)类中属性都必须私有化(private)
						  3)该类提供公开的getter 和 setter方法
						  	 布尔类型的get方法名称叫做 isXxx()方法,也符合javaBean规范。

		JavaBean的作用: 用于封装数据,保存数据。
			   访问javabean只能使用getter和setter方法


				

1.2 JavaBean的使用场景

			1)项目中用到实体对象(entity)符合javabean规范
			2)EL表达式访问对象属性。${student.name}  调用getName()方法,符合javabean规范。
			3)jsp标签中的属性赋值。标签处理器类提供一个 setNum(Integer num)。符合javabean规范。
			4)jsp页面中使用javabean。符合javabean规范
1.2.1 jsp页面中使用javabean

jsp提供了内置标签用于处理javabean。

<!-- 创建对象 -->  
<jsp:useBean id="s2" class="org.jsoft.hello.Student"></jsp:useBean>
相当于 	
	    Student s=new Student();


<!-- 给对象赋值 -->
<jsp:setProperty name="s2" property="age" value="12" />
<jsp:setProperty name="s2" property="name" value="hlp" />
相当于 
		s2.setAge(12);
		s2.setName("hlp");

<!-- 获取属性值 -->	
<jsp:getProperty name="s2" property="age" />
相当于:
		s2.getAge();

实例:
index.jsp

<%@page import="org.jsoft.hello.Student"%>
<%@page import="java.util.HashMap"%>
<%@page import="java.util.Map"%>
<%@page import="java.util.List"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/hlp" prefix="hlp" %>

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>核心标签库</title>
</head>
<body>

<%
	Student s=new Student();
	s.setAge(12);
%>

<!-- 创建对象 -->
<jsp:useBean id="s2" class="org.jsoft.hello.Student"></jsp:useBean>

<!-- 给对象赋值 -->
<jsp:setProperty name="s2" property="age" value="12" />
<jsp:setProperty name="s2" property="name" value="hlp" />
	
<!-- 获取属性值 -->	
<jsp:getProperty name="s2" property="age" />

</body>
</html>

测试结果:
在这里插入图片描述

二、web开发模式


	SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,
	一种是JSP+JavaBean模式,
	另一种是Servlet+JSP+JavaBean模式。

	JSP+JavaBean模式:
					适合开发业务逻辑不太复杂的web应用程序,这种模式下,JavaBean用于封装
					业务数据,JSP即负责处理用户请求,又显示数据。

	Servlet+JSP+JavaBean(MVC)模式:
					适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp负
					责数据显示,javabean负责封装数据。 Servlet+JSP、JavaBean模式程序各
					个模块之间层次清晰,web开发推荐采用此种模式。

	MVC开发模式+三层结构
	

web开发的主要功能

			1)接受数据
			2)处理业务逻辑
			3) 显示数据
			4)跳转页面。

web开发模式的演变过程

	
	1)SUN公司推出JSP时,首先实行的是JSP+JavaBean模式 。
	   此时JSP主要负责了
						1)接受数据
						2)处理业务逻辑
						3) 显示数据
						4)跳转页面。
	   由于JSP职责太重,代码比较臃肿,所以在早期盛行一段时间就被弃用了。
	
	2)后来又推行了JSP+Servlet+JavaBean开发模式。
	   
	   此时JSP的职责被拆分。JSP的一部分职责被拆分给Servlet。
						JSP只负责:
								 3)显示数据。
					    Servlet负责:
					    		 1)接受数据
								 2)处理业务逻辑
								 4)跳转页面。
								 
		我们把JSP+Servlet+JavaBean开发模式简称为MVC开发模式。

	3)MVC开发模式中对于Servlet,其职责也是太过沉重,所以在MVC开发模式基础之上,又对Servlet
	   进行了拆分。   
			   Servlet负责:
						1)接受数据
						2)调用业务逻辑
								(在MVC中负责处理业务逻辑,后演变为调用业务逻辑。它将业务逻辑处理部分交给了Service层。)
						4)跳转页面。
				
	   MVC开发模式+三层架构
				持久层:dao层--和数据访问相关的操作
				业务逻辑层:service层--和业务逻辑相关的操作
				表现层 :web层-- 和用户直接交互相关的操作(传接参数,跳转页面)


2.1 JSP+JavaBean模式

在这里插入图片描述

	在JSP+JavaBean模式中,jsp主要负责:
							1)接受数据
							2)处理业务逻辑
							3) 显示数据
							4)跳转页面。
	
	优点:开发速度快
	缺点:维护成本高,扩展性低。
		  jsp职责太重,页面十分臃肿。
		  不适合完成业务复杂,需要经常变动的系统。

	在JSP刚刚推行时,这种开发模式十分盛行,不过随着发展,这种模式已经弃用了。
	

2.2 JSP+Servlet+JavaBean模式(MVC开发模式)

在这里插入图片描述

2.2.1 JSP+Servlet+JavaBean模式的职责划分
				jsp负责:
							显示数据
				Servlet负责:
							1)接受数据
							2)处理业务逻辑
							3)跳转页面。
	
	该模式将JSP的职责进行拆分,JSP只保留显示数据的职责,其余功能由Servlet负责。
	
2.2.2 MVC开发模式
	MVC开发模式:
				Model - JavaBean实现。用于封装业务数据
				View  - Jsp实现。用于显示数据
				Controller-  servlet实现。用于控制model和view

	所谓的MVC开发模式,指的就是JSP+Servlet+JavaBean开发模式。
		

2.3 MVC开发模式+三层结构

在这里插入图片描述


 	    MVC开发模式:
					Model - JavaBean实现。用于封装业务数据
					View - Jsp实现。用于显示数据
					Controller-  servlet实现。用于控制model和view
		三层结构:
					dao层: 和数据访问相关的操作
					service层: 和业务逻辑相关的操作
					web层: 和用户直接交互相关的操作(传接参数,跳转页面)		
		
		 MVC开发模式+三层结构:它将Servlet原有的业务逻辑处理功能交给了Service层去负责。					

发布了94 篇原创文章 · 获赞 0 · 访问量 648

猜你喜欢

转载自blog.csdn.net/weixin_45602227/article/details/104111711