欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    Struts2的其他应用.ppt

    • 资源ID:5449651       资源大小:913KB        全文页数:24页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Struts2的其他应用.ppt

    第6章 Struts 2的其他应用,6.1 Struts 2文件上传,6.2 Struts 2文件下载,6.3 Struts 2国际化应用,6.1 Struts 2文件上传,6.1.1 单文件上传【实例6.1】用Struts 2的Common-FileUpload框架上传单个文件。1创建Struts 2项目建立项目,取项目名为“StrutsUpload”。加载Struts 2包及修改web.xml文件,配置Struts 2,操作同【实例2.1】的第1步、第2步,不再赘述。2修改index.jsp在创建项目的时候,勾选自动生成index.jsp文件,读者可以应用该文件,将其中内容替换为自己编写的代码,如下:文件上传,6.1.1 单文件上传,3编写Action类前面已经介绍过,功能的处理一般都在Action类中实现;处理完成后,进行跳转。该Action类完成文件的上传工作。在src下建立包action,在该包下建立自定义Action类UploadAction。该类的实现代码为。在struts.xml中配置该Action类,代码如下:/success.jsp,6.1.1 单文件上传,4建立success.jsp上传成功后,跳转到成功页面。代码如下:成功页面 恭喜你!上传成功,6.1.1 单文件上传,5部署运行部署项目,启动Tomcat,在浏览器中输入“http:/localhost:9080/StrutsUpload/”,出现如图6.1所示的界面,选择要上传的文件,单击“上传”按钮,就会跳转到如图6.2所示的界面。打开D盘,在upload文件夹下可以找到刚上传的文件。,6.1.2 多文件上传,【实例6.2】在【实例6.1】的基础上修改,实现多文件的上传。修改index.jsp:文件上传,6.1.2 多文件上传,页面修改完成后,就可以修改对应的Action了。代码修改所示。修改完这两个文件就可以了。与上传单个文件一样,部署运行后,选择多个文件,如图6.3所示,然后单击“上传”按钮,成功后跳转到成功页面,这时可以打开D盘的upload文件夹查看上传的文件。,6.2 Struts 2文件下载,【实例6.3】用Struts 2框架的功能完成文件下载。1创建Struts 2项目建立项目,取项目名为“StrutsDownload”。加载Struts 2包及修改web.xml文件,配置Struts 2,操作同【实例2.1】的第1步、第2步,不再赘述。在项目WebRoot下建立一个image文件夹,其中放入一个文件“用例.rar”,用于本例下载演示之用。2修改index.jspindex.jsp修改为:文件下载 下载,6.2 Struts 2文件下载,3编写Action类Action类DownloadAction.java代码实现为:package org.action;import java.io.InputStream;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionSupport;public class DownloadAction extends ActionSupportprivate String downloadFile;/需要下载的文件路径/生成set方法,该值由配置文件传递过来public void setDownloadFile(String downloadFile)this.downloadFile=downloadFile;public InputStream getTargetFile()/根据上面给出的文件路径,生成它的输入流return ServletActionContext.getServletContext().getResourceAsStream(downloadFile);public String execute()throws Exception return SUCCESS;,6.2 Struts 2文件下载,4配置struts.xml文件文件下载最重要的工作就是在配置文件中进行配置,下面看其struts.xml文件:/image/用例.rar targetFile filename=example.rar 4096,6.2 Struts 2文件下载,5部署运行部署项目,启动Tomcat,在浏览器中输入“http:/localhost:9080/StrutsDownload/”,出现如图6.4所示的界面,点击其上“下载”链接,就会弹出“文件下载”对话框,单击“保存”按钮选择存盘路径。,6.3 Struts 2国际化应用,6.3.1 国际化原理及资源文件1命名规则Struts 2的国际化资源文件都是“*.properties”文件,而且该文件需要放在项目的classses文件夹下。就命名规则而言,国际化资源文件必须命名为“基本名称_语言代码_国家代码.properties”,例如,中文的国际化资源文件应命名为:基本名称_zh_CN.properties而英文国际化资源文件则命名为:基本名称_en_US.properties,6.3.1 国际化原理及资源文件,2内容格式资源文件内容的格式为“key=value”,其中key可以根据程序员自己的喜好来命名,但一般都会命名为容易理解或记忆的名称,而value值则是该key对应的值,不同国家语言对应的该值是不同的。例如,英文对应:login=login中文则对应:login=u767Bu5F55看到这里,读者可能有点迷惑,按常理来说,中文对应的应该是:login=登录,6.3.2 资源文件的访问方式,1使用标签标签只能在JSP页面中访问国际化资源信息,用法非常简单,该标签中有个name属性,将该资源文件的key赋予该name即可。例如:页面被请求时就会显示出“loginView”对应的value值。2使用标签属性key大部分Struts 2的表单标签都提供了key属性,只要把这个key属性的值对应到国际化资源文件的key,就可以实现标签的国际化。例如:页面被请求时就会显示国际化资源文件中key为“XH”对应的值,同样地,如果资源文件中没有该值,就会显示“XH”。,6.3.2 资源文件的访问方式,3使用getText()方法getText()应用范围比较广泛,可以在页面使用,也可以在Action类或校验配置文件中使用。对于上面两个方法的应用都可以用该方法来代替:使用getText()方法可以实现为:而在Action类中的使用也非常简单,例如,在讲解非表单标签时的Action类中有:addFieldError(username,fieldError中保存的username错误信息);可以看出,这里的错误信息是程序员直接写上去的,不能实现国际化。如果在资源文件中有对应的key-value对来表达这个错误信息,那么在Acton类中就可以直接根据key来取值:addFieldError(username,getText(对应key的名称);,6.3.2 资源文件的访问方式,上面是在Action类中使用getText(),还可以在校验配置文件中运用该方法来实现国际化。例如:true username为空!假设资源文件中定义key-value对来描述错误信息“username为空!”字样的key为“error”,那么配置文件可以改为:true$getText(error),6.3.3 国际化应用实例,【实例6.4】利用Struts 2的il8n拦截器以及国际化功能,开发如图6.5所示的界面,刚开始为中文页面,如果单击下面的“英文”链接,就会出现如图6.6所示的英文页面。,6.3.3 国际化应用实例,1创建Struts 2项目建立项目,取项目名为“SelectLanguageLogin”。加载Struts 2包及修改web.xml文件,配置Struts 2,操作同【实例2.1】的第1步、第2步,不再赘述。2创建资源文件Struts 2提供了很多加载国际化资源文件的方法。最简单、最常用的方法就是加载全局的国际化资源文件,它是通过配置常量实现的。在项目src下建立一个名为“struts.properties”的文件,在其中编写如下形式的代码:struts.custom.il8n.resources=资源文件名该例中资源文件名为“message”,故struts.properties的代码如下:struts.custom.il8n.resources=messgage,6.3.3 国际化应用实例,下面来建立两个资源文件,分别为英文和中文。(1)创建英文资源文件。建在src目录下,文件名为message_en_US.properties,代码如下:language=please select languagechinese=chineseenglish=englishloginView=Login ViewXH=XHKL=KLlogin=login,6.3.3 国际化应用实例,(2)创建中文资源文件。在src下创建文件message_zh_CN.properties,在其编辑区Properties选项页,单击“Add”按钮,添加并编辑各属性对应的中文名称,如图6.7所示。,6.3.3 国际化应用实例,3编写JSP编写登录页面,在index.jsp上修改即可,代码实现为::,6.3.3 国际化应用实例,4编写Action本例的目的是体现国际化的应用而非登录验证功能本身,故在Action中不进行任何处理,直接返回“SUCCESS”,Action类的代码如下:package org.action;import com.opensymphony.xwork2.ActionSupport;public class LoginAction extends ActionSupportpublic String execute()throws Exception return SUCCESS;,6.3.3 国际化应用实例,5自定义拦截器采取配置拦截器的方法,在进入“login.action”之前先对其进行语言的处理,拦截器代码实现为:package org.interceptor;import java.util.Locale;import java.util.Map;import com.opensymphony.xwork2.*;import com.opensymphony.xwork2.interceptor.*;public class CheckInterceptor extends AbstractInterceptor public String intercept(ActionInvocation arg0)throws Exception/获得Action上下文ActionContext ctx=arg0.getInvocationContext();/获得SessionMap session=ctx.getSession();/检查是否设置了Locale,如果未设定,则默认为简体中文Locale currentLocale=(Locale)session.get(WW_TRANS_I18N_LOCALE);if(currentLocale=null)/设置Locale实例currentLocale=new Locale(zh,CN);session.put(WW_TRANS_I18N_LOCALE,currentLocale);return arg0.invoke();,6.3.3 国际化应用实例,在struts.xml文件中配置拦截器,配置代码如下:/index.jsp,

    注意事项

    本文(Struts2的其他应用.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开