Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Struts2基本疑问_Java_Struts2_Web Frameworks - Fatal编程技术网

Java Struts2基本疑问

Java Struts2基本疑问,java,struts2,web-frameworks,Java,Struts2,Web Frameworks,我是Struts2的新手。。。。下面我有一些疑问 在Struts2中,应用程序如何查找struts.xml??我们没有在web.xml文件中定义struts.xml,这与Struts1不同,Struts1在web.xml文件中定义struts-config.xml,那么它将如何看到struts.xml文件呢 b我们为什么不为我们的行动课写一篇扩展行动支持的文章呢。。我见过许多没有扩展任何其他预定义动作类的示例。。如果我们不扩展任何其他预定义的操作类或实现操作接口方法,它如何在我们的操作类中找到e

我是Struts2的新手。。。。下面我有一些疑问

在Struts2中,应用程序如何查找struts.xml??我们没有在web.xml文件中定义struts.xml,这与Struts1不同,Struts1在web.xml文件中定义struts-config.xml,那么它将如何看到struts.xml文件呢

b我们为什么不为我们的行动课写一篇扩展行动支持的文章呢。。我见过许多没有扩展任何其他预定义动作类的示例。。如果我们不扩展任何其他预定义的操作类或实现操作接口方法,它如何在我们的操作类中找到execute方法或populate方法


c在什么情况下我们使用extends Action Support

a如果您不将配置文件名config参数覆盖到web.xml中的Struts过滤器,那么它将默认为Struts.xml。这只是一个硬编码的默认值,因此按照约定进行配置

b该框架允许普通的旧java对象POJO进行操作。只要告诉它在struts.xml中调用什么方法,它就会使用反射来找到这样一个方法,这个方法必须是无参数的,然后返回一个字符串并调用它。另一方面,一些接口用于其他功能,例如,如果类实现了Preparable,那么在执行之前将自动调用prepare方法,可能类似于在Struts1中填充


c扩展ActionSupport是完全可选的,但允许访问一些可能有用的功能,例如某些操作方法的默认实现,如输入、方便的国际化方法等。

a如果您不在web.xml中将配置文件名config参数覆盖到Struts过滤器,然后它将默认为struts.xml。这只是一个硬编码的默认值,因此按照约定进行配置

b该框架允许普通的旧java对象POJO进行操作。只要告诉它在struts.xml中调用什么方法,它就会使用反射来找到这样一个方法,这个方法必须是无参数的,然后返回一个字符串并调用它。另一方面,一些接口用于其他功能,例如,如果类实现了Preparable,那么在执行之前将自动调用prepare方法,可能类似于在Struts1中填充

c扩展ActionSupport是完全可选的,但可以访问一些可能有用的功能,例如一些操作方法的默认实现,如输入、方便的国际化方法等。

+1 Todd的答案

To b:注意,虽然可以指定方法,但不需要指定方法,默认情况下,将调用execute方法

对于c:扩展ActionSupport是可选的,而且IMO非常频繁。有时,也建议您实施自己的say BaseAction,它经常扩展ActionSupport,以确定Web应用程序的常见功能,并使您的所有或几乎所有操作都扩展它。

+1 Todd的答案

To b:注意,虽然可以指定方法,但不需要指定方法,默认情况下,将调用execute方法


对于c:扩展ActionSupport是可选的,而且IMO非常频繁。有时,还建议您实施自己的say BaseAction,它经常扩展ActionSupport,以排除您的webapp的常见功能,并使您的所有或几乎所有操作都扩展它。

可能的答案太多,或者好的答案对于这种格式来说太长。请添加详细信息以缩小答案集或隔离可以在几个段落中回答的问题。可能的答案太多,或者好的答案对于此格式来说太长。请添加详细信息,以缩小答案集或隔离可以在几段中回答的问题。