扣丁学堂盘点JavaEE之Struts1框架轻易入门详解
2018-01-05 13:33:38
628浏览
JavaEE学习就从最通用的MVC框架Struts开始学习,然后到Hibernate,最后是Spring。对于Struts来说,Struts1和Struts2区别较大。有部分人认为只需要了解最新的就可以了,但是把最原始的东西多看一下,对我们程序员来说可能收获更多。毕竟编程,思路是最重要的。
一、什么是Struts
Struts是开源框架(MVC)。使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的选择。
二、Struts的常用组件
1.ActionServlet
2.Action
3.ActionForm
4.ActionMapping
5.ActionForward
三、Struts的优点
1.基于配置文件的松耦合,Struts中的通常类都被写在配置文件里面了。如:Action、ActionForm、ActionForward等。如果需要修改一些常用配置的话,只需要修改配置文件就可以了。
2.Formbean(ActionForm)解决了验证信息的重新显示需要管理员设置的问题。
3.对数据等信息有集中的验证。
4.支持国际化以及异常信息处理。
四、五大组件介绍
1.ActionServlet
Struts中的最大控制器,是Struts框架的入口,并且封装了Servlet,被配置在web.xml当中
2.Action
小控制器,处理具体的业务逻辑
3.ActionForm
和页面表单对应的一个特殊javabean,负责在页面和控制器之间传递数据。同时还提供了集中验证方法
4.ActionMapping
用来从Struts的配置文件中读取信息
5.ActionForward
页面之间的跳转
五、Struts工程创建步骤
1.创建一个Web工程
2.添加Struts的jar包
3.创建一个Struts配置文件struts-config.xml
4.在web.xml添加Struts配置
action
org.apache.struts.action.ActionServlet
config
/WEB-INF/struts-config.xml
action
*.do
5.创建一个LoginForm
packagecom.demo.form;
importorg.apache.struts.action.ActionForm;
publicclassLoginFormextendsActionForm{
privatestaticfinallongserialVersionUID=1L;
privateStringusername;
privateStringpassword;
publicStringgetUsername(){
returnusername;
}
publicvoidsetUsername(Stringusername){
this.username=username;
}
publicStringgetPassword(){
returnpassword;
}
publicvoidsetPassword(Stringpassword){
this.password=password;
}
}
6.创建一个Action类
packagecom.demo.action;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importorg.apache.struts.action.Action;
importorg.apache.struts.action.ActionForm;
importorg.apache.struts.action.ActionForward;
importorg.apache.struts.action.ActionMapping;
importcom.demo.form.LoginForm;
publicclassDemoActionextendsAction{
publicActionForwardexecute(ActionMappingmapping,ActionFormform,
HttpServletRequestrequest,HttpServletResponseresponse)
throwsException{
//Stringusername=request.getParameter("username");
//Stringpassword=request.getParameter("password");
LoginFormloginform=(LoginForm)form;
Stringusername=loginform.getUsername();
Stringpassword=loginform.getPassword();
if(username!=null&&username.equals("lwh")){
returnmapping.findForward("success");
//request.getRequestDispatcher("/Success.jsp").forward(request,response);
}else{
returnmapping.findForward("failure");
//request.getRequestDispatcher("/Failure.jsp").forward(request,response);
}
//returnnull;
}
}
7.在struts-config.xml中配置Action、ActionForm和ActionForward
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEstruts-configPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration1.3//EN""http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<form-beanname="loginform"type="com.demo.form.LoginForm"></form-bean>
</form-beans>
<action-mappings>
<actionpath="/login"type="com.demo.action.DemoAction"name="loginform">
<forwardname="success"path="/Success.jsp"></forward>
<forwardname="failure"path="/Failure.jsp"></forward>
</action>
</action-mappings>
</struts-config>
8.其他代码
登陆页面:
<%@pagelanguage="java"import="java.util.*"pageEncoding="ISO-8859-1"%>
<%
Stringpath=request.getContextPath();
StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
<html>
<head>
<basehref="<%=basePath%>">
</head>
<body>
<formname="loginform"id="form1"action="<%=path%>/login.do"method="post">
<tableborder="0">
<tr>
<td>name:</td>
<td><inputtype="text"name="username"id="username"/></td>
</tr>
<tr>
<td>password:</td>
<td><inputtype="password"name="password"id="password"/></td>
</tr>
<tr>
<tdcolspan="2"align="center"><inputtype="submit"value="submit"/></td>
</tr>
</table>
</form>
</body>
</html>
成功页面:
<%@pagelanguage="java"import="java.util.*"pageEncoding="ISO-8859-1"%>
<%
Stringpath=request.getContextPath();
StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
<html>
<head>
<basehref="<%=basePath%>">
</head>
<body>
Success!
</body>
</html>
9.运行结果
Success!
以上就是关于扣丁学堂盘点JavaEE视频教程之Struts1框架轻易入门详解,最后想要学习JavaEE的朋友大可不必担心,只要你学好JavaEE游戏开发,想要高薪就业就不是什么难事。扣丁学堂不仅有专业的老师和课程体系,还有大量的零基础JavaEE培训视频教程供学员观看学习,想要学习的话就抓紧时间行动吧。Java技术交流群:670348138。
【关注微信公众号获取更多学习资料】
查看更多关于“Java开发资讯”的相关文章>>
标签:
JavaEE视频教程
JavaEE培训
JavaEE开发工程师
Java培训