JAVA EE的Servlet中可以仅实现init()方法吗? 20
就是说不重载doGet和doPost方法,仅仅实现init()这一个方法,如果你决定回答请列出原因及来源谢谢...
就是说不重载doGet和doPost方法,仅仅实现init()这一个方法,如果你决定回答请列出原因及来源谢谢
展开
2个回答
展开全部
如果你只从语言定义的角度:实现servlet有2种方法1: extends HttpServlet 2: implements Servlet 第一种servlet中你可以不用重载任何方法它本身就是合法的,第二种是接口很明显你要实现所有的方法当然它没有doGet和doPost这2个方法,所有从语言定义上不重载doGet和doPost是完成合法的,一般我们创建servlet都是第一种方法,而对于servlet你如果只需要它的init而且创建的话,那你这个功能一定有其它的方法替换
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
init()这个方法只在重启服务器的时候被调用一次,而doGeg跟doPost不一样
追问
这个我是可以理解的,但是说,我现在仅定义一个没有意义的Servlet,它仅实现了init(),并在init()中初始化了一些东西,这个Servlet会正常编译执行么?原因又是什么呢?
追答
init方法所做的主要工作有二:
1. 加载struts配置文件,并创建用于封装配置信息的ModuleConfig对象
2. 加载资源文件,并创建用于封装资源文件的MessageResources对象
可以正常运行啊,只不过你只实现init方法貌似没什么作用,你在页面穿数据进来后台的话必须用doGet或者是doPost,如果你from表单的method=""如果等于个头就调用doGet,如果是post就调用doPost,doPost比doGet好
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询