idea的Struts2

看了struts2的视频,跟着把它的项目放到idea里想改一改运行起来,之前现在eclipse里跑成功了,于是想在idea里试试,在eclipse里很简单,服务器启动后,webapps会多一个项目名的文件夹,我想在idea里是不是得弄个war包出来放进去,于是考进idea’以后,就一发不可收拾的弄了一下午到现在晚上八点多。

有jar包没有引入的问题,很多,不想说了,现在总结正确的:

1.按照一般的要求,WEB-INF下应该有lib和class文件夹,用于放jar包和编译后的class文件。(lib下的jar包放好后,要右击add to library
   2,最重要的全部在project structure里面’:

首先project:

然后Modules:

找到第二个paths,按照图操作

结果:

然后dependencies:默认,因为struts2是jar包右击add to library后起的名字。

Libraries:

暂时好像不记得。就是jar包位置,也是显示add to library’时起的名字

Facts:

Default的那个必须选上,不然下面红框的内容会标红报错,报错后找到这里勾选上即可:点击铅笔即可进行勾选。

Artifacts:就是生成的war包的名字,说错了,看了下,根本没找到所谓的war包,这点很郁闷,没有war包,tomcat到底拿的什么在运行??之前就是因为搜索war包如何生成搞了好久,现在他么告诉我不用war包!

下面有个problem,有什么错可能会在这里提示,有Fix就点击。然后配置tomcat和artifacts就行了。

另外:

Out里面的内容真心不知道这么复杂干嘛的,不想知道。

然后:

struts.xml是在src目录下:

Web.xml:核心过滤器:

<filter>
    <filter-name>
struts2</filter-name>
    <filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>
struts2</filter-name>
    <url-pattern>
/*</url-pattern>
</filter-mapping>

Demo1.jsp:

Suc.jsp:

HelloAction:

流程就是:访问demo1.jsp,然后struts.xml会识别请求,找到action里的方法,方法返回的ok又被struts.xml再次识别,访问suc.jsp,完成!

之前右击add to library 的jar还没引入的意思吗?

最后,webapp下没有东西,东西在下面的work下的。。。的localhost下的struts2,里面有demo1.jsp和suc.jsp的class文件:

思考问题:struts2是个web项目吧?tomcat到底怎么执行的,为何没有对应的war包?

只在work里有,而eclipse是在webapp里有个文件夹,也不是war包?好头疼这个问题。

切记:不能把传智播客的struts项目直接弄到idea里,文件结构都不一样的,必然出错。

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值