扣丁学堂盘点JavaEE之Struts1框架轻易入门详解

2018-01-05 13:33:38 628浏览

  JavaEE学习就从最通用的MVC框架Struts开始学习,然后到Hibernate,最后是Spring。对于Struts来说,Struts1和Struts2区别较大。有部分人认为只需要了解最新的就可以了,但是把最原始的东西多看一下,对我们程序员来说可能收获更多。毕竟编程,思路是最重要的。

扣丁学堂盘点JavaEE之Struts1框架轻易入门详解

一、什么是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培训

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号