在浪曦的struts视频课程的指导下,做了第一个struts的例子 本人用的是struts-2.1.8.1版本
所以在加载jar包的时候要多加载一个conmons-fileupload.jar否则启动tomcat会报错,说什么strcut-default找不到还是怎么的。
代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
然后是增加两个jsp文件,分别是login.jsp和result.jsp
login.jsp:
<body>
<form action="login.action" methord="post">
username:<input type="text" name="username"><br>
password:<input type="password" name="password"><br>
<input type="submit" value="submit">
</form>
</body>
result.jsp
<body>
username: $(requestScope.username)<br>
password: $(requestScope.password)
</body>
<!--这里老是说是用了EL但是我是初学者,不懂只是照抄,但是在最后运行的时候貌似有问题!还在研究当中-->
LoginAction.java 代码
package com.test.action;
public class LoginAction {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String execute() throws Exception
{
return "success";
}
}
struct.xml(注意要建立在scr的目录下,也就是.classes的目录)
代码:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="struts2" extends="struts-default">
<action name="login" class="com.test.action.LoginAction">
<result>/result.jsp</result>
</action>
</package>
</struts>
运行后的结果如图:
点击submit的时候,出现的结果和老师说的不同,在老师的结果应该是:
username zhangsan
password 123
但是我的结果是,如图:
而且,我的URL是 http://localhost:8080/struts2/login.action?username=zhangsan&password=123
而老师的真确例子是http://localhost:8080/struts2/login.action
和我的相比,后面那串都没有了!!!!请问 有没有大牛,能帮我指点一下啊! 灰常感谢