HelloStruts
Hello Struts
- 建立项目
- 打开myeclipse
- 新建项目
- 选择myeclipse-java enterprise projects-web project
- 项目名称:hellostruts
- 选择java ee 6.0
- 设定server
- window – preferences – myeclipse – servers – tomcat – 8.x
- 选择tomcat home directory
- 选择enable
- finish
- 设定jdk环境
- window – preferences – java – installed jres
- 如果没有对应的JDK(不是JRE),选择add
- 选择standard VM -> next
- 选择JDK对应的Directory(C盘)
- 将刚刚设定的JDK设为默认
- 建立第一个struts2.1的程序
- 找到struts目录下对应的apps目录
- 解压struts2-blank-2.1.16.3war
- Copy对应的lib的jar文件到工程的webINF的lib下,需要除junit和spring-test之外的所有文件,其中commons-io的jar包会在文件上传和下载时需要,其他为必须
- Copy对应的struts.xml到src目录,在package explorer视图进行操作
- 注释掉struts.xml的多余内容
- 建立HelloStruts2_1.jsp文件
- *修改jsp文件的默认编码属性window-preferences-web-jspfiles-设为Chinese,National Standard
- 在struts.xml中照原配置进行对应的配置
- 修改对应的web.xml,建立struts2的filter(参考struts自带的项目)
5.运行项目
- 可以首先部署到tomcat上项目(Tomcat测试:http://localhost:8080)
- 也可以项目右键debug as – myeclipse server app,选择刚刚建立好的server
- 在浏览器中访问时地址是:http://localhost:8080/工程名字(/action名.action)
encoding问题:
6.其他
- 学习建立struts的dev-mode,好处在于我们修改了配置文件的时候能够自动热替换 (ctrl+S之后就可以在web browser中运行成功)
- 建立jar文件对应的源码struts-2.1.16.3/src/core/src/main/java,以及xwork对应的源码,以及对应的javadoc location,(更好的方式是建立自己的user-library)
3.javadoc location
4.浏览struts的目录
将struts的代码导入视图:
5.认识eclipse jee的项目部署目录,认识如何修改webapp的context-root,项目copy改名后可能会出现的问题
6.package explorer – 建立jar的源文件和目标关联,navigator – 观察所有的内容
7.认识Action的后缀名,在struts2默认中,带不带action都可以
7.如何导入源码?比如action.class
8.路径问题的说明
struts2中的路径问题是根据action的路径而不是jsp路径来确定,所以尽量不要使用相对路径。<br />
<a href="index.jsp">index.jsp</a>
<br />
虽然可以用redirect方式解决,但redirect方式并非必要。
<br />
解决办法非常简单,统一使用绝对路径。(在jsp中用request.getContextRoot方式来拿到webapp的路径)
<br />
或者使用myeclipse经常用的,指定basePath
9.导入或者复制工程
导入工程:import项目,如果导入的项目的jre和系统的不一样,删除项目中的jre重新导入自己的包。
然后如图:
复制工程:
T是hellostruts的复制品。可是运行失败,应该注意:将web-root改为“项目名称”
10.namespace:
设“namespace=str"那么访问路径就是”http://localhost:8080/项目名称/str/action名(.action)“
11.action
自己在src中写的action.class编译后会放在web-inf.
HelloStruts的更多相关文章
- Struts2第一个工程helloStruts极其基本配置
前面已经准备好了Struts-2.3.15,现在就可以直接搭建Struts2的工程了.前面http://blog.csdn.net/huangchnegdada/article/details/917 ...
- ActionMapping
在Struts中,ActionServlet只是任务的分派者,它依请求分配任务给其它的对象来执行,而分配的依据是请求的URI以及struts-config.xml的<action-mapping ...
- Struts2 初体验
Sturts是一款优雅的,可扩展性很强的框架.它是由Struts开发团队和WebWord团队合作,共同开发的一个新的产品.新版本的Struts2 更加容易使用,更加接近Struts所追求的理念.从开发 ...
- Struts框架的入门使用
1.struts框架的使用 导入jar包 1.commons-fileupload-1.2.jar 2. freemarker-2.3.15.jar 3.ognl-2.7.3.jar 4.struts ...
- struts2.3 创建工程
1:在该网站下载struts2.3.16.3,目前为最新版.http://www.struts.apache.org/download.cgi 不妨下载“Full Distribution”版本 下载 ...
- [struts2学习笔记] 第二节 使用Maven搞定管理和构造Struts 2 Web应用程序的七个步骤
本文地址:http://blog.csdn.net/sushengmiyan/article/details/40303897 官方文档:http://struts.apache.org/releas ...
- 一脸懵逼学习Struts数据校验以及数据回显,模型驱动,防止表单重复提交的应用。
1:Struts2表单数据校验: (1)前台校验,也称之为客户端校验,主要是通过Javascript编程的方式进行数据的验证. (2)后台校验,也称之为服务器校验,这里指的是使用Struts2通过xm ...
- struts2第一天——入门和基本操作
一.概述 1.运用场景: 应用于三层架构中web层的框架(显示层的运用),是经典MVC模型的web应用的变体. 2.与struts1的对比: struts2是在struts1基于webwork发展的全 ...
- Struts2(一)
一.Struts下载地址 http://struts.apache.org/download.cgi 二.导入包.配置Web.xml和struts.xml 在下载的包中从示例中找到一些包就可以 str ...
随机推荐
- undefined is not an object (evaluating '_react2.PropTypes.string')
对所引用的组件原 .import React, {Component,PropTypes} from 'react' 改成:import React, {Component} from 'react' ...
- 优先队列(挑程)poj 2431
每次写poj的题都很崩溃,貌似从来没有一次一发就ac的,每次都有特别多的细节需要考虑.还有就是自己写的太粗糙了,应该把每种情况都想到的,总是急着交,然后刷一页wa. 优先队列直接用stl就可以,简单实 ...
- java-Integer类
1.为什么会有基本类型包装类 * 将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据. 2.常用操作 * 常用的操作之一:用于基本数据类型与字符串之间的转换. * Intege ...
- 2017.4.28 KVM 内存虚拟化及其实现
概述 KVM(Kernel Virtual Machine) , 作为开源的内核虚拟机,越来越受到 IBM,Redhat,HP,Intel 等各大公司的大力支持,基于 KVM 的开源虚拟化生态系统也日 ...
- python 字符串,列表,元组,字典相互转换
1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} 字典转为字符串,返回:<type 'str'> {'age': 7, 'n ...
- 【BZOJ1067】【SCOI2007】降雨量
新人求助,降雨量那题,本机AC提交AC 原题: 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”.它的含义是X年的降雨量不超过Y年,且对于任意Y<Z<X,Z年的降雨量严格小于X年.例 ...
- day09 MapReduce
, PS:上图为MapReduce原理全解剖, 图上带红色标识的部分是能够自定义的1.首先要解决读文件的问题. mapTask中有个read()方法,专门负责读取键值对,而且是整行整行的读2.在读好文 ...
- Hi3516CV300 sample -> region
- mysql之 表空间传输
说明:MySQL(5.6.6及以上),innodb_file_per_table开启. 1.1. 操作步骤: 0. 目标服务器创建相同表结构1. 目的服务器: ALTER TABLE t DISCAR ...
- mysql 不允许分组的问题
异常信息:this is incompatible with sql_mode=only_full_group_by 解决办法: 找到 my.cnf find / -name my.cnf 然后在 ...