struts2 简介
一、struts2 是一个框架,属于属于表现层,需要我们基于这个框架下进行开发。
特点:
可读性 可维护性 可拓展性。
javaEE 开发根据职责的纵向划分:表现层 业务层 持久层。也就所说的javaEE的三大框架(ssh)。
表现层:负责处理与界面交互的相关操作。(struts2/spring)。
业务层:负责复杂的逻辑业务计算和判断。(spring)
持久层:负责将业务逻辑数据进行持久化处理。(Hibernate/MyBatis)
如图所示:
MVC 思想
作用: 将表现层中的代码做的更加细致的划分,也就是说责任分离。
数据模型(model)负责封装应用的状态,并实现应用的功能。通常有划分为数据模型、业务模型,数据模型负责用来存放业务数据(订单信息、用户信息),业务模型包含应用的业务操作(数据添加、修改)等。(Service、DAO/Entity)
视图展现(view):也就我们所说的界面,用来将模型的内容展现给用户,用户可以通过视图来请求模型进行更新,用户可以通过点击按钮向控制器发送请求。(jsp)
控制器(controller):用来控制应用程序的流程和处理视图所发出的请求。(Selvlet)
二、前端控制器(核心控制器)
流程图:
前端控制(Front Controller)是在web应用系统前端设置一个入口控制器,所有的request请求都该发往该控制器统一处理。(认证 导航 session 国际化 本地化处理)
优点:
1、集中控制
2、提高管理性和安全控制能力
3、提高可重用性可扩展性
三、Struts2 入门
Struts1 与 Struts2 是相互不兼容的。
Struts2框架 = Struts1 + XWork;
Struts1 与 Struts2 区别
Struts1 有个核心控制器,但是只提供一个接口,也就是 execute ,还要配置actionform之类的,依赖性比较强。
Struts2 是针对拦截器来开发的,就是所谓AOP思想,可以配置很多的action,但是因为请求之前的拦截器有一些注入的操作,速度相对Struts1 慢一些。
3.1、 strut2 框架是通过过滤器来配置前端控制器 (web.xml)配置
语法如下:
<filter>
<!--权限命名 -- >
<filter-name>struts</filter-name> --名称自定义
<filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </filter-class> --类路径 快捷键查找 【Ctrl+Shift+t】 输入【strutspre】
</filter>
<filter-mapping>
<filter-name>struts</filter-name>--自定义名称
<url-pattern>/*</url-pattern>--过滤所有文件
</filter-mapping>
3.2、 找到请求分发的xml文件进行配置映射【struts.xml】,将文件到src目录下
配置语法:
<package name="名称" extends="struts-default" namespace="/">
<action name="action名称" class="命名空间" method="方法名称">
<result name="方法的返回值" type="跳转方式">跳转路径</result>
</action>
</package>
例如:
新建类文件 hellow.java 命名空间为:com.demo 方法为:execute 返回值为“view“
<package name="hellowPk" extends="struts-default" namespace="/">
<action name="hellow" class="com.demo.hellow" method="execute">
<result name="view" type="dispatcher">/index.jsp</result>
</action>
</package>
运行结果如下:
struts2 简介相关推荐
- 【struts2】struts2简介
Struts2其实并不是一个陌生的Web框架,Struts2是以Webwork的设计思想为核心,吸收了Struts1的优点,因此,可以认为Struts2是Struts1和Webwork结合的产物. 一 ...
- Struts2 简介
回顾Struts2的使用过程,网上搜的教程多多少少都会有点问题,重新记录下创建过程,方便查阅. 1.下载Struts2的jar包 下载地址:http://archive.apache.org/dist ...
- Struts2框架概述、Struts简介、Struts环境搭建、Struts执行流程、Struts文档、Struts配置文件的加载顺序-day01
目录 第一节 框架概述 1.1 什么是框架 1.2 三大框架 1.3 三层架构 1.4 MVC.Servlet.Filter MVC Servlet Filter 第二节 Struts简介 2.1 S ...
- Struts2笔记——初次框架配置
1.Struts2简介 Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架.其全新的Struts 2的体系结构与S ...
- Java Struts2 (一)
一.Struts2简介 1.Struts2概述 Struts2是Apache发行的MVC开源框架.注意:它只是表现层(MVC)框架. 2.Struts2的来历 Struts1:也是apache开发的一 ...
- struts2总体介绍
这篇博客开始将总结一下有关框架的知识,在开发中合适的利用框架会使我们的开发效率大大提高.当今比较流行的开源框架: 关注数据流程的MVC框架 (Struts1/2, WebWork, Spring MV ...
- 整合Struts2、Spring、Hibernate构建J2EE应用
[论文摘要] J2EE即是以Java 2平台为基础的体系结构,又是一组旨在简化企业解决方案的开发.部署.运行.维护等相关复杂问题的技术规范与指南.Struts2.Spring.Hibernate是当今 ...
- Struts2(一)之认识struts2
大家可能都听说过框架,听起来是一个和牛逼的事情,笔者也是这样的.还没有学习的时候,很期待框架到底是什么东西.听说功能非常的强大. 其实框架的作用和定义就是: 把一些繁琐的重复性代码封装起来,使程序员在 ...
- Struts1、Struts2及SpringMVC对比
Struts2其实并不是一个陌生的Web框架,Struts2是以Webwork的设计思想为核心,吸收了Struts1的优点,因此,可以认为Struts2是Struts1和Webwork结合的产物. 简 ...
最新文章
- 如何用CSS快速布局(一)—— 布局元素详细
- postgresql数据库修改表
- performance metrics
- 多个流,简短的读和写
- GMM高斯混合模型学习笔记(EM算法求解)
- spring aop 注入源码解析 1
- Flex 按钮添加图标
- c语言 消除最后一个空格,新人提问:如何将输出时每行最后一个空格删除
- Linux之nc命令
- 创建一棵二叉树(C++)以及遍历
- 贾君鹏你妈妈喊你回家吃饭-利用WCF的Duplex推送消息
- 日常计算机使用的需求和解决方案(一)
- 7.7_adadelta
- Codeforces 868C - Qualification Rounds 思维
- PostOffice
- 【烧录问题】flymcu下载出现从08000000开始运行失败
- 沉睡者IT:零基础学习短视频与+玩转抖音快手
- yum命令下载安装包及依赖包
- Python 文件
- 找不到凭据分配oracle修正,远程连接身份验证错误,又找不到加密Oracle修正