Struts2的概述和入门
忽如一夜春风来,千树万树梨花开
上节我们说到,JAVAEE的三层架构,即web层,service层,dao层.hibernate是应用在dao层的.而我们现在所学的Struts2是应用在web层.Struts2在struts1和webwork框架基础之上发展的全新的框架.
Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。
首先介绍Struts2的应用场景,如下图
第一步,导入必要的Struts2开发jar包,jar包下载地址Struts2标准配套开发包.
第二部,创建action,并继承于ActionSupport
这里的返回值"ok"应与struts.xml里面的result标签中name值一致,才能跳转到相应页面.继续看下面.
第三步,配置action的访问路径,在src目录下创建Struts2的核心配置文件,名字叫struts.xml文件.在struts.xml文件首先引入约束文件.如下
那么,这段约束在哪找呢??在Struts的核心jar包中.找到并打开struts-default.xml文件.
你将看到如下的约束代码
第四步,进行action的配置.
1 配置action时候,首先必须写package标签
2 在package标签里面有name属性,表示名称,理论上可以随便写
3 在package里面有extends属性,属性值固定的struts-default
写了这个值之后,package里面配置的类,具有action功能
4 在package里面有namespace属性
namespace的值和action标签的name属性值构成访问路径
我们可以看到在action中,配置的返回值ok跳转到了user.jsp页面,所以,在此之前,我们应该有user.jsp页面.
第五步,我们需要在web.xml文件中配置struts2的过滤器.这是必须的,否则在访问时会出现404错误.
最后,在浏览器输入localhost:8080/项目名称/user.action,根据struts.xml配置的跳转页面跳到相应的user.jsp页面.
学习是一个循序渐进的过程,我们都是在学习阶段,如有问题,还望指正.
Struts2的概述和入门的更多相关文章
- 1 Struts2基本概述及其入门
什么是Struts2? webwork+Struts1 一个基于MVC设计模式的web层框架,本质上相当于一个Servlet.. 在MVC设计模式中,Struts2作为控制器Controller来建立 ...
- MySql概述及入门(五)
MySql概述及入门(五) MySQL集群搭建之读写分离 读写分离的理解 为解决单数据库节点在高并发.高压力情况下出现的性能瓶颈问题,读写分离的特性包括会话不开启事务,读语句直接发送到 salve 执 ...
- MySQL概述及入门(四)
MySql概述及入门(四) 什么是MySQL的锁? 数据库锁定机制,就是数据库为了保证数据的一致性,而使各种共享资源在被并发访问变得有序所设计的一种规则,简单说,就是不让别人动 总的来说,MySQL各 ...
- MySQL概述及入门(三)
MySql概述及入门(三) MySQL性能优化 主要优化安全和性能方面 安全方面 : 数据可持续性 性能方面 : 数据的高性能访问 性能优化——慢查询 在MySQL数据库中有一个慢查询日志功能,去获取 ...
- MySQL概述及入门(二)
MySql概述及入门(二) MySQL架构 逻辑架构图: 执行流程图: MySQL的存储引擎 查询数据库支持的存储引擎 执行: show engines: 多存储引擎是mysql有别于其他数据库的一大 ...
- MySQL概述及入门(一)
MySql概述及入门(一) 什么是MySQL? MySQL是当今主流的关系型数据库管理系统(记录是有行有列的数据库) , 可以与Oracle 和SQL Server 竞争 , 是最好RDBMS( ...
- Struts2学习第一天--Struts2的概述、Struts2的入门、Struts2常见的配置、Struts2的Action的编写
action的name要与访问路径对应.hello.action. 加到tomcat启动 访问:http://localhost:8080/struts2-1/demo1/demo1.jsp 改为su ...
- Struts2(一)— 入门
一.概述 1.什么是Struts2 Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立 ...
- Struts2_day01--课程安排_Struts2概述_入门
Struts2_day01 Struts2课程安排 今天内容 Struts2概述 Struts2框架入门 导入源文件 Struts2执行过程 查看源代码 Struts2的核心配置文件 标签packag ...
随机推荐
- Go Runtime hashmap实现
努力学习go中,看到skoo博客内容很不错, 所以转载学习下 前两天有小伙伴问道是否看过 Go 语言 map 的实现,当时还真没看过,于是就花了一点时间看了一遍 runtime 源码中的 hashma ...
- windows下查找指定端口被哪个程序占用
在Windows环境下,用netstat命令查看某个端口号是否占用,为哪个进程所占用. eg.查看端口号为61078被哪个程序占用 1.查看端口号为61079被哪个PID所占用:Netstat –an ...
- Xcode的版本问题
1. 已经安装了Xcode6,如何再安装Xcode5,并使两者共存? 2. Xcode6升级到Xcode7 适配问题 3. XCODE6中使用iOS7 SDK的方法: 从XCODE 5的目录中: /A ...
- Lua C Api lua_gettable 、lua_settable 、lua_next 使用详解
之前一直没理清lua_gettable和lua_settable的使用,今天理清了,顺便就做下笔记了.1.lua_gettable void lua_gettable (lua_State *L, i ...
- Backbone+React使用
1.react作为backbone的视图 2.backone和react和通信,backbone的view 渲染react组件, react组件使用backbone的collection数据 < ...
- bitmap资源回收
这个问题哎,困扰本宫一天! bitmap不完全解决method: http://blog.csdn.net/hahahacff/article/details/8540942 http://blog. ...
- Selenium2(java)启动常用浏览器 三
默认启动firefox浏览器 Webdriver driver = new FirefoxDriver(); 启动谷歌浏览器 配置chromedriver WebDriver driver; Syst ...
- firefox 28.0
Ubuntu 安装 firefox 28.0指令: apt-cache show firefox | grep Version sudo apt-get install firefox=28.0+bu ...
- linux 套接字编程入门--Hello World
下述代码是linux套接字编程的入门代码.分为服务端和客户端源码. 服务端代码的主要流程是绑定ip地址和端口号建立套接字,等待客户端发起访问.接受客户端请求之后,向客户端发送字符串"hell ...
- linux下的5款桌面环境
以前都用Ubuntu,没有换过桌面环境,不会换,也担心换了不会(真是有病,担心用不习惯,还不如回去用windows) ubuntu 默认的是Unity,用过一段不长的时间,恩,说不出来有什么不好的,也 ...