Struts2初步学习总结
Struts2当时上课的时候老师给我们讲过,了解过一些,但也仅仅是了解,,,没动手去做,准确的说是试了一下,然后没做成功,,,现在又想把这个夹生饭给煮一下了,,,,
结合W3Cschool和轻量级Java EE企业应用实战(李刚的作品)又从头学了一遍Struts2
Struts2概述:此处省略了,,,
Struts2架构:MVC架构(模型-视图-控制器,功能分开,该干啥的干啥)

环境设置:JDK + Eclipse + tomcat,在创建工程的时候还是书上推荐的方法好用:
先下载Struts2的压缩包,解压缩,里面有空工程的项目的压缩文件,打开这个文件把lib下的jar包拷到自己的工程lib下面,这对入门很好用,不需要去考虑每个包的具体功能,然后就是配置文件,写代码了
核心配置文件struts.xml放到src文件目录下就可以**********这里有个问题我没弄明白,书上说要在WEB-INF下创建classes文件夹,然后把配置文件struts.xml放到文件夹下,,下载的例子也是这样做的,网上
说编译的时候会把src下的文件在classes文件夹下拷贝一次,但我的没有,都没有生成classes文件夹,但我的项目是能成功运行的--------感觉是Eclips配置和tomcat服务器版本问题
架构(好高端的名字):Actions(操作) Interceptors(过滤器) ValueStack(值栈) Result(结果类型) 视图技术
这图感觉够形象的,把项目运行的流程表示出来了
配置文件:需要在struts.xml中配置写好的Action,在web.xml中配置StrutsPrepareAndExecuteFilter类接入点
Actions动作:从上图可以看到,经过Interceptors的过滤后交给相应的Action处理,然后Action返回result,根据配置文件映射到相应视图
拦截器:有预先配置的拦截器,还能自定义拦截器
值栈:用来视图页面来获取数据(就是用来传递数据用到的吧)
文件上传功能:这个我写了,用的struts2的标签,原理:提交处理后会把文件存放在某个临时位置,然后在相应action的execute中把文件存放到你想放的目录(遇到了一个问题,默认把文件保存到eclipse的解压目录下了)
数据库访问:这个和普通的数据库访问一样(还没用到别的框架)
发送电子邮件:用到了别的jar包,没写成,用的google的邮箱发的
验证框架:这个可以通过action的validate方法实现,刚开始因为写错了name绕了湾(这部分给我的感觉像ASP.net里的数据验证
本地化/国际化:就是几个资源文件
主题和模板:参考教程
各种Struts2提供的标签
(只是初步了解了这个框架,写了一些简单的例子,细节上面没仔细研究)
Struts2初步学习总结的更多相关文章
- 尚硅谷STRUTS2视频学习笔记
上一个月一直在学习STRUTS2,学习的是尚硅谷佟刚老师的视频,因为很喜欢佟刚老师的声音,而且他讲的很细,笔记做的也多,基本上是照着他的视频完整的敲了一遍代码,下面就把学习到的知识梳理一遍,最后把项目 ...
- json2.js的初步学习与了解
json2.js的初步学习与了解,想要学习json的朋友可以参考下. json2.js的初步学习与了解 1.)该js的下载地址是:http://www.json.org/json2.js 2.)在页面 ...
- 老周的ABP框架系列教程 -》 一、框架理论初步学习
老周的ABP框架系列教程 -- 一.框架理论初步学习 1. ABP框架的来源与作用简介 1.1 简介 1.1.1 ABP框架全称为"ASP.NET Boilerplate ...
- struts2源代码学习之初始化(一)
看struts2源代码已有一段时日,从今天開始,就做一个总结吧. 首先,先看看怎么调试struts2源代码吧,主要是下面步骤: 使用Myeclipse创建一个webproject 导入struts2须 ...
- 初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助
初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助,如果有bug或者更好的优化方案,也请批评与指正,谢谢,代码如下: var fs = require('f ...
- EF Codefirst 初步学习(二)—— 程序管理命令 更新数据库
前提:搭建成功codefirst相关代码,参见EF Codefirst 初步学习(一)--设置codefirst开发模式 具体需要注意点如下: 1.确保实体类库程序生成成功 2.确保实体表类库不缺少 ...
- Struts2框架学习(三) 数据处理
Struts2框架学习(三) 数据处理 Struts2框架框架使用OGNL语言和值栈技术实现数据的流转处理. 值栈就相当于一个容器,用来存放数据,而OGNL是一种快速查询数据的语言. 值栈:Value ...
- Struts2框架学习(二) Action
Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器 ...
- Struts2框架学习(一)
Struts2框架学习(一) 1,Struts2框架介绍 Struts2框架是MVC流程框架,适合分层开发.框架应用实现不依赖于Servlet,使用大量的拦截器来处理用户请求,属于无侵入式的设计. 2 ...
随机推荐
- OI数学 简单学习笔记
基本上只是整理了一下框架,具体的学习给出了个人认为比较好的博客的链接. PART1 数论部分 最大公约数 对于正整数x,y,最大的能同时整除它们的数称为最大公约数 常用的:\(lcm(x,y)=xy\ ...
- 6.BOM
BOM的介绍 浏览器对象模型. 操作浏览器部分功能的API.比如让浏览器自动滚动. BOM的结构图 window对象是BOM的顶层(核心)对象,所有对象都是通过它延伸出来的,也可以称为window的子 ...
- 标题title出现不规则背景
Html代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- django通过使用jwt模块实现状态保持
第一步:安装jwt pip install djangorestframework-jwt 第二步:settings/dev的配置文件配置 REST_FRAMEWORK = { # 认证配置 'DEF ...
- 利用Logstash plugins做更多的事情
1. 引言 之前一篇文章<Logstash 介绍及linux下部署>,我们实现了logstash的安装以及简单的控制台标准输入输出测试,那么logstash能不能做更多的事情呢?答案是肯定 ...
- 2019.2.14 t1 最大公约数
代码: #include <cstdio> #include <iostream> #include <cstring> #include <algorith ...
- leetcode-665-Non-decreasing Array
题目描述: Given an array with n integers, your task is to check if it could become non-decreasing by mod ...
- L1-1 天梯赛座位分配
天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情.为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位 ...
- autokeras 在windows10下的安装与使用
注意:autokeras只适用于python3.6 先打开命令行(cmd), 输入 python --version 查看python版本,是否需要降级和升级. 降级的命令如下: conda inst ...
- win 10安装应用程序提示Error 1317的解决方法
打开windows防火墙 关闭文件夹权限访问保护