1、认知:struts是一个基于javaee平台的mvc框架,他是属于一个表现层的开发框架,框架是一个模板,模板是一个半成品,自己本身是不能正常运行的


2、官方下载:http://struts.apache.org/download.cgi

    建议下载完整包


3、核心包:

struts2-core-2.1.8.jar(Struts2的核心库)

xwork-core-2.1.6.jar(WebWork的核心库)

commons-logging-1.0.4.jar(日志文件)

commons-fileupload-1.2.1.jar(文件上传与下载)

freemarker-2.3.15.jar (表现层框架)

ognl-2.7.3.jar(OGNL表达式语言,)

commons-io-1.3.2.jar(文件上传下载的依赖的包)


4、建议参考strusts2的apps下的案例结合学习


5、struts代码提示解决

1.首先在struts中搜索struts-2.0.dtd文件,建议找到后复制到自己的工作空间

2.在设置preferences——Files and Editors——xml——xml Catalog中设置,location中填入:struts-2.0.dtd文件的路径,keytype中选择uri,key中填入http://struts.apache.org/dtds/struts-2.0.dtd(从struts.xml复制的)


6、

1)ActionSupport类的作用 

    struts2不要求我们自己设计的action类继承任何的struts基类或struts接口,但是我们为了方便实现我们自己的action,大多数情况下都会继承com.opensymphony.xwork2.ActionSupport类,并重写此类里的public String execute() throws Exception方法。因为此类中实现了很多的实用接口,提供了很多默认方法,这些默认方法包括国际化信息的方法、默认的处理用户请求的方法等,这样可以大大的简化Acion的开发。 

    Struts2中通常直接使用Action来封装HTTP请求参数,因此,Action类里还应该包含与请求参数对应的属性,并且为属性提供对应的getter和setter方法。如:

public class UserAction extends ActionSupport {

private String name;

private int age;

private String[] hobby;

private Address address;

@Override

public String execute() throws Exception {

System.out.println(id+","+name+","

+ ""+address.getProvince()+","+address.getCity()+",");

return SUCCESS;

}

        

     

        public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public String[] getHobby() {

return hobby;

}

public void setHobby(String[] hobby) {

this.hobby = hobby;

}

public Address getAddress() {

return address;

}

public void setAddress(Address address) {

this.address = address;

}




        }

3.3:Adress 类

public class Adress {

private String province;

private String city;

public String getProvince() {

return province;

}

public void setProvince(String province) {

this.province = province;

}

public String getCity() {

return city;

}

public void setCity(String city) {

this.city = city;

}

        }

                                                                             初学,请多指教