本程序系统主要有一下几大部分:
总控制器struts-congig.xml配置文件、xml配置文件、登录welcome和Err的jsp页面、还有最后的两个表单和小控制器(小队长)LoginAction
login.jsp:
<body>
<!-- login.jsp strutslogin为项目名login为配置的资源名 -->
<form action="/strutslogin/login.do" method="post">
u:<input type="text" name="username"><br>
p:<input type="password" name="password"><br>
<input type="submit" value="登录">
</form>
</body>web.xml:
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/config/struts-config.xml</param-value>
</init-param>
</servlet>
<filter>
<filter-name>MyFilter1</filter-name>
<filter-class>com.dqd.filters.MyFilter1</filter-class>
</filter>
<filter-mapping>
<filter-name>MyFilter1</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>struts-config.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!-- struts-config文件 -->
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans> <!-- 表单 -->
<form-bean name="userForm" type="com.dqd.forms.UserForm"></form-bean>
</form-beans>
<action-mappings><!-- 小队长 -->
<action path="/login" name="userForm" type="com.dqd.actions.LoginAction">
<forward name="ok" path="/WEB-INF/wel.jsp"></forward>
<forward name="err" path="/WEB-INF/err.jsp"></forward>
</action>
</action-mappings>
</struts-config>
UserForm表单(继承ActionForm):
public class UserForm extends ActionForm {
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;
}
}
LoginAction(小队长继承Action):
public class LoginAction extends Action {
//loginAction
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
UserForm userform = (UserForm) form;
request.setAttribute("username1", userform.getUsername());
System.out.println("用户名="+userform.getUsername());
if("123".equals(userform.getPassword())){
return mapping.findForward("ok");
}else{
return mapping.findForward("err");
}
}
}Filter(控制乱码):
public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) {
// TODO Auto-generated method stub
try{
arg0.setCharacterEncoding("UTF-8");
arg2.doFilter(arg0, arg1);
arg1.setContentType("text/html;charset=utf-8");
System.out.print("aaaaa");
}catch(Exception e){
e.printStackTrace();
}
}
本文介绍了一个基于Struts框架的简单登录系统实现过程。包括使用struts-config.xml进行配置,通过ActionForm收集用户输入,利用Action处理业务逻辑并跳转页面等内容。
679

被折叠的 条评论
为什么被折叠?



