知识大全 Struts入门--从原理到安装及实例讲解
Posted 知
篇首语:黄金的宝藏比不上知识的宝藏。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Struts入门--从原理到安装及实例讲解相关的知识,希望对你有一定的参考价值。
Struts入门--从原理到安装及实例讲解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
Struts的起源 Struts是作为Apache Jakarta项目的组成部分 该项目的目标是为建立Java web 应用程序而提供的一个开源框架 目前大家一般使用的版本为 但也出现了 通过使用struts 框架可以改进和提高Java Server Pages (JSPs) Servlet 标签库以及面向对象的技术在web应用程序中的应用 应用Struts框架可以减少你应用MVC(Model View Controller)设计模式的开发时间 从而提高开发效率 把Struts应用于J ee客户端 应该是一个不错的选择 Struts的工作原理 谈到Struts 我们就不得不提到MVC设计模式 MVC即Model View Controller的缩写 它是web应用当中的常用的设计模式 MVC 减弱了业务逻辑接口和数据接口之间的耦合 以及让视图层更富于变化 Struts是MVC的一种实现 它很好的结合了Jsp Java Servlet Java Bean Taglib等技术 那么我们来看看Struts框架的工作原理 控制 在Struts中 ActionServlet起著一个控制器(Controller)的作用 ActionServlet是一个通用的控制组件 这个控制组件提供了处理所有发送到Struts的HTTP请求的入口点 它截取和分发这些请求到相应的动作类(这些动作类都是Action类的子类) 另外控制组件也负责用相应的请求参数填充 Action Form(通常称之为FromBean) 并传给动作类(通常称之为ActionBean) 动作类实现核心商业逻辑 它可以访问java bean 或调用EJB 所有这些控制逻辑利用Struts config xml文件来配置 视图 主要是由Jsp来控制页面输出的 它接收到Action Form中的数据 利用 taglib bean logic等显示数据 模型 在Struts中 主要存在三种bean 分别是 Action ActionForm EJB或者Java Bean ActionForm用来封装客户请求信息 Action取得ActionForm中的数据 再由EJB或者Java Bean进行处理 Struts 优点与缺点 优点 利用Struts提供的taglib可以大大节约开发时间 表现与逻辑分离 维护扩展比较方便 便于团队开发 缺点 大量的使用标签 对于初学者难度较大 Struts 安装 安装Struts 比较简单 假设我们使用的是Tomcat 并且安装在D:\\tomcat下 首先 请到 下载Struts 解压缩后 可以看到jakarta struts 目录 在这个目录下面 你可以看到这样一个目录 webapps 该目录下面有多个* war 我们copy struts blank war 文件到D:\\tomcat\\webapps下 restart Tomcat 在Tomcat 的webapps下就会生成一个struts blank空白Struts开发环境 另外 在你解压缩的目录下的webapps中 struts example war 是一个很好的struts学习教程 如果你想深入学习请访问 或者 下载 《Struts in Action》 E 文版 一个简单的例子 Logon jsp <%@ taglib uri= /WEB INF/struts tld prefix= %> <%@ page contentType= text/; charset=gb %> <% /** * This page shows Logon interface * Title: LOGON SYSTEM * Description: Logon Page * Copyright: Copyright (c) * Company: * @author bluesunny <> * @version */ response setHeader( Pragma No cache ); response setHeader( Cache Control no cache ); response setDateHeader( Expires ); %> <> <head> <title>Logon</title> </head> <body> <:errors/> <:form action= /Logon focus= username > username:<:text property= username size= /> password:<:password property= password size= /> <:submit property= submit /> </:form> </body> </> 页面为用户登陆页面 应用到Struts的标签 LogonForm java package logon app; import javax servlet *; import apache struts action *; /** * This page shows LogonForm java * Title: LOGON SYSTEM * Description: LogonForm Page * Copyright: Copyright (c) * Company: * @author bluesunny * @version */ public class LogonForm extends ActionForm private String username; private String password; public LoginForm() username = null; password = null; public void setUsername(String username) this username = username; public String getUsername() return this username; public void setPassword(String password) this password = password; public String getPassword() return this password; public void reset(ActionMapping mapping HttpServletRequest request) username = null; password = null; 这个页面为ActionForm bean 主要是用来封装客户端的用户名与密码 LogonAction java package logon app; import java io *; import java sql *; import apache struts action Action; import apache struts action ActionForward; import apache struts action ActionMapping; import apache struts action ActionForm; import javax servlet *; import javax servlet *; import apache struts action *; /** * This page shows LogonAction java * Title: LOGON SYSTEM * Description: LogonAction Page * Copyright: Copyright (c) * Company: * @author bluesunny * @version */ public class LogonAction extends Action public ActionForward execute(ActionMapping actionMapping ActionForm actionForm HttpServletRequest request HttpServletResponse response)throws Exception LogonForm form = (LogonForm)actionForm; ActionErrors errors = new ActionErrors(); String username = form getUsername(); String password = form getPassword(); If(username equals( bluesunny ) && password equals( bluesunny )) return actionMapping findForward( success ); else errors add( login new ActionError( Logon failed )); saveErrors(request errors); return actionMapping findForward( failed ); 取得ActionForm中的数据 进行处理 处理结果返回到Jsp页面 web xml <?xml version= encoding= ISO ?> <!DOCTYPE web app PUBLIC //Sun Microsystems Inc //DTD Web Application //EN app_ _ dtd ;> <web app> <display name>Struts Logon Application</display name> <! Standard Action Servlet Configuration (with debugging) > <servlet> <servlet name>action</servlet name> <servlet class> apache struts action ActionServlet</servlet class> <init param> <param name>config</param name> <param value>/WEB INF/struts config xml</param value> </init param> <init param> <param name>debug</param name> <param value> </param value> </init param> <init param> <param name>detail</param name> <param value> </param value> </init param> <load on startup> </load on startup> </servlet> <! Standard Action Servlet Mapping > <servlet mapping> <servlet name>action</servlet name> <url pattern>* do</url pattern> </servlet mapping> <! The Wele File List > <wele file list> <wele file>logon jsp</wele file> </wele file list> <! Struts Tag Library Descriptors > <taglib> <taglib uri>/tags/struts bean</taglib uri> <taglib location>/WEB INF/struts bean tld</taglib location> </taglib> <taglib> <taglib uri>/tags/struts </taglib uri> <taglib location>/WEB INF/struts tld</taglib location> </taglib> <taglib> <taglib uri>/tags/struts logic</taglib uri> <taglib location>/WEB INF/struts logic tld</taglib location> </taglib> <tagli cha138/Article/program/Java/ky/201311/27855相关参考
简单例子 先做一个最简单的struts的例子在浏览器中请求一个action然后返回一个字符串到jsp页面上显示出来 第一步把struts最低配置的jar包加入的项目中 monslogging
详细讲解Quartz如何从入门到精通 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Quartz
Struts入门初步知识 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 如何安装Struts
Struts入门经验(一) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Struts安装 首
Java:Struts入门初步知识 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 如何安装Str
实例讲解Oracle监听口令及监听器安全 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 很多人都
C#接口基础知识实例讲解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 从技术上讲接口是一组包含
知识大全 获取ServerSocket信息的方法及FTP原理
Java网络编程从入门到精通(28):获取ServerSocket信息的方法及FTP原理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发
JAVA拦截器原理及Struts2扩展 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 最近发现很
Struts配置讲解Web应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Web应用的发布描