一.开发Struts2项目的基本步骤
1.导入struts的核心支持包
2.在web.xml中配置FilterDispatcher
3.开发Dao
4.开发action
5.编写前台显示页面
6.创建struts.xml配置文件
二.struts2处理用户的输入信息
1.利用actoin类来处理用户的输入信息,具体实现是在action类定义要输入的属性,注意此处的属性名称必须与用户输入页面的属性名相同。而在如果在普通的Java类中覆写execute方法后,当用户使用此类是,struts2会把它当作一个action来处理。
2.利用领域对象接收用户的输入,具体的操作是定义一个封装此对象的Javabean,在action类中定义一个Javabean的对象,此时的输入页面的属性名称必须设置成对象名.属性名的形式才能够被action类识别。
3.实现MOdelDriven范型接口来接受用户的输入信息,这里还是需要建立一个javabean对象,
如:
public class LoginAction extends ActionSupport implements ModelDriver<User>{
private User user=new User();
....
public User getModel(){
}
}
这种方式不是很多人用,当属性比较少时,可以采用第一种方式,当属性比较多时,可考虑使用第二种方式。
三.struts的配置文件
web.xml 配置基本的filter属性与相关的信息
struts.xml 主配置文件
struts.properties struts的属性配置文件 (配置编码 国际化 后缀名 上传文件大小等)
struts-default.xml struts的默认配置文件
struts-plugin.xml struts框架的插件配置文件
四.Bean配置
struts2为用户提供的,可进一步扩展struts2的功能的一项配置信息,在实际的开发中,很少使用<bean>配置,因为struts2所提供的功能已经足够强大了,没有必要去扩展它的核心组建
五.常量配置
它可以在五个文件中配置,分别是struts-defaul.xml(默认,不能必变),struts-plugin.xml struts.xml struts.properties web.xml 其作用范围是逐个递增
这些常量中包括编码格式等,详细的介绍可参考struts.properties文件,在实际的开发中,习惯在struts.properties中配置相关的国际化信息和编码信息。
六.命名空间
在package元素中有一个namespace属性,它可以将包中的action配置成不同的命名空间,这样在不同的命名空间中就可以使用同名的action,因为在实际的开发中,每个人都会负责不同的模块开发,而在开发的过程中可能会出现两个人定义了相同的类,所以命名空间来区分这两个相同名称的类。默认的命名空间为空字符串"",而当匹配一个action时,struts2会先到它所指定的命名空间中去找,如果没找到,则到默认的命名空间中找,如果还没有找到,就没办法了,只能报错了。而命名空间为"/"是,指的是根命名空间,即是项目的根下。
<%String path=request.getContextPath()%>的意思是转到当前项目下