day59-struts2_01:笔记。----【框架就是jar包】而已

===========首先是最基础的:环境搭建:
/**
搭建struts步骤:
熟能生巧:
新建web项目,
导jar包【struts包下apps>struts-blank项目(案例项目)下的包是必须的最基本的jar包---没有借鉴项目时,靠这个】,
web.xml配置核心过滤器:StrutsPrepareAndExecuteFilter【### ctrl+shift+T 关键字查找资源:StrutsPrepareAndExecuteFilter】,
src下编写struts.xml框架,
编写页面请求的action【就是个普通Java类(不再需要Servlet)】,
最后根据逻辑,详细配置struts.xml。
------------大体步骤结束。simple。
*/



/**

					struts2_01


4天struts2的知识点概述:
			1 struts2的入门(环境搭建以及如何让浏览器访问struts2)

			2 页面请求数据的封装(属性驱动封装 模型驱动封装)

			3 如何封装数据(值栈)和如何在页面展示(OGNL表达式)

			4 拦截器




案例驱动:展示所有的客户

技术分析:
	hibernate
	struts2




	   

struts2的概述:
		什么是struts2?
		struts2: 就是web层的框架,对web层的功能进行了封装
		

		常见的4个web层框架:(了解===面试)
			
			struts1
			webwork
			
			struts2(===结合了Struts1和webwork的优点)
			springmvc



struts2框架在web层的执行原理:
				见图




			     


struts2框架的入门案例:
		1 搭建环境  
		
			apps	:Struts2提供一些项目。
			  docs	:Struts2提供的开发规范和文档
			  lib	:Struts2提供的开发jar包
			  src	:Struts2提供的源代码
		
		关注点:  apps/struts2-blank.war项目
		    原因: 这个项目是struts2最基本的环境搭建项目
		    怎么玩:导入struts-2.3.24\apps\struts2-blank\WEB-INF\lib下面的所有jar包


		2 测试:

			1  有一个首页,首页上有一个超链接

			2  创建一个action(javabean)

			3  配置action在浏览器的访问路径  固定: 在src下有一个名称叫 struts.xml配置文件
			


入门案例的执行流程:

简化版本(粗糙版本):
			见图

详细版本(4天)


/


1 配置文件的内容:===######【记住】
	①加载了struts2的哪些配置文件? 这个这些文件的加载先后顺序?
		查看源码可见:【StrutsPrepareAndExecuteFilter源码->init()方法->Dispatcher的init()】
			StrutsPrepareAndExecuteFilter的init()方法
				【加载顺序:1~5】
				①struts提供好的:
				1:	default.properties  键值对的常量===struts.action.extension=action,,
						===struts2.core包下:org.apache.struts2根目录下。			
				2: 	struts-default.xml  放了大量的拦截器
						===struts2.core包根目录下:
				3: 	struts-plugin.xml
						===struts2-spring-plugin包根目录下:这里没用到这个jar包。(未加载到它不会报错)
					
				②自己编写的:
				4: 	struts.xml(最重要)
				5: 	struts.properties(键值对:一般是不用的===别人写了要认识)
						struts.action.extension=xxx
				去web.xml下【加载StrutsPrepareAndExecuteFilter的初始化参数】(一般不用的)


				
	②配置文件的先后顺序加载有一个特点:
	 后面加载的配置文件内容如果和前面先加载的配置文件内容相同了;
	后面的内容会覆盖前面的内容 (以后面的配置文件命令为主)。
		【例如:struts.xml配置资源后缀:struts.action.extension=xxx,
			会覆盖系统自带的default.properties文件的配置】



	③标签:
			constant 覆盖default.properties文件下的常量
				name:常量名
				value:常量值


			package ------【self理解:类级别】
				name: 包名 意义不大  【给别人继承用的】
					条件:整个struts.xml文件下唯一
				extends:继承哪个包   暂时默认值:struts-default (struts提供好了一个包,包名叫struts-default)
				
				namespace: action的浏览器访问路径  和action标签name属性组成了
					1 :可以什么都不写获取namespace=""

					2 :namespace="/"
 
					3 : 模块名写法: namespace="/模块名"  适用于模块开发

				abstract:
					如果为true,这个包下不能有action  只给别人继续用


			action: ------【self理解:方法级别】
				class: action的全限定名
				name: 和namespace组成action的浏览器访问路径
					条件:  不能以多层的形式出现  例如:name="hello1/hello2"
						针对的是大部分struts2的版本

				method: 指定action的方法 默认是execute



			result标签: 接收返回字符串(逻辑视图名称) ------【self理解:方法返回值级别】
				name: 返回的逻辑视图的名称
				标签体内的文本:页面的地址
				
			扩展内容: 明天详聊
			
				-------------【self 笔记】
			constraint标签:package外部配置全局常量:例如:
		
				【例如:struts.xml配置资源后缀:struts.action.extension=xxx】
			include标签###:包含外部外部配置xml(模块开发):例如:customer模块
		




2 action(javabean)的内容: ------【self理解:###### action:普通Java类。】

		①action的3种编写方式

			 1 普通方式 
				既没有实现也没有继承


			 2 实现方式
				实现Action接口

				Action的接口中提供了【五个逻辑视图的常量】的名称:

		特点:都是返回字符串
			 *  * SUCCESS	        :成功
			 *  * NONE		:不跳转  
			 *  * LOGIN		:用于用户登录失败页面跳转
			 *  * INPUT		:表单出错情况下,页面跳转
			 *  * ERROR		:错误页面


			 3 继承的方式(工作中使用)
				  继承actionsupport类


		
		②action的三种访问方式:
				1 普通方式 (method方式)(掌握)

				2 通配符方式(掌握)

				3 动态方法方式(理解)
						条件:需要配置常量开启动态方法





3 总结:
	struts2的概述 ---web层框架

	struts2在web层执行原理 
			###所有的web框架都【基于前端控制器】
					【实现的方式不同】:
							struts2--fiter(StrutsPrepareAndExecuteFilter)

							spingmvc--serlvet


	搭建环境做了入门案例
			1 简化的入门案例执行流程(图)
			
			2 配置文件的编写
				1 struts2加载了几个配置文件(6)? 加载顺序的特点(后面的会覆盖前面)
						init()
		

			 3 action的3种方式编写


			 4 action的方法3种访问方式
			 

	整合:小demo案例。struts2做web层action,hibernate做dao查询数据库。--------导了jar包就行,直接用。simple。


*/



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值