Struts下

作者: Percy_Gemini | 来源:发表于2017-10-26 09:02 被阅读0次

    Struts2 第三天

    学习目标

    • 在struts2框架下怎么实现文件的上传下载
    • 在struts2框架中怎么使用json传输数据
    • struts2注解开发(重要)
    • 两个案例

    文件上传

    注意事项

    前台:

    1. 表单提交方式为 post
    2. 文件表单项<input typr="file" name="upload">(name 属性很重要)
    3. 表单属性:entype="multipart/form-data"

    后台:

    1. Servlet3.0 Part组件
    2. Servlet2.5 FileUpload【Struts2,Springmvc】

    Struts2的文件上传下载

    服务器端:Commons-fileupload.jar

    Struts2框架本身支持文件上传:

    <interceptor name="fileUpload" class="org.apache.struts2.interceptor.FileUploadInterceptor"/>
    

    文件上传的案例

    private File upload(对应表单中的input的name属性的值);
    private String uploadContentType
    private String uploadFileName
    

    Struts2使用Ajax

    Json

    市场上流通的json工具:

    • fastjson
    • Gjson

    json概念:是数据传输的一种格式:

    对象:{"key":"value","key2":"value2"}

    数组:[value1,value2,value3]

    以上两种结构可以嵌套

    FastJson使用介绍

    1. 导入jar包

      ​ fastjson-1.2.9.jar

    2. 对于对象

      String = JSONObject.toJSONString(对象)

    3. 对于集合

      String = JSONArray.toJSONString(集合)

    Jackson使用

    SpringMVC框架底层就使用了Jackson

    1. 导入jar包

      jackson-all-1.9.jar

    2. 对于对象

      mapper = new ObjectMapper();

      String = mapper.writeValueAsString(对象)

    3. 对于集合

      mapper = new ObjectMapper();

      String = mapper.writeValueAsString(集合);

    4. 处理时间

      mapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd"))

    5. 不要某元素的时候,加注解@JsonIgnore或者在类名上加@JsonIgnoreProperties({"元素1",""元素2})

    Ajax

    Struts2框架使用json插件异步传输

    1. 导入jar包
    2. 使用json插件
      1. 将配置文件中的<package extends="json-default">
      2. action的返回视图<result type="json">
      3. 配置好上面后,struts2框架就会将valuestack中的栈顶元素转换成json相应到浏览器端

    Struts的注解开发

    常用的注解:

    注解基本格式:@注解名称

    • Action类上的注解
    @NameSpace:配置名称空间   
    @ParentPackage:配置extends
    
    • Action方法上的注解
    @Action(value="" results={@Result name="" type="" location=""})
    

    其它注解

    @Actions

    @Results

    @InterceptorRef

    Struts2注解开发的注意事项

    1. 包 必须包含action
    2. @Actions({}) 可以让多个路径访问同一个action
    3. @InterceptorRef
    4. @Results,全局结果视图

    用Struts2的注解开发做小案例

    公司内部项目开发流程

    1. 需求分析
    2. 技术选型
    3. 详细设计
      1. 数据库表设计
      2. 页面原型设计
      3. 概要设计
    4. 开发项目
      1. 根据概要设计---->写出详细设计文档
      2. 根据汇总后的详细文档开发项目
      3. 功能模块编码工作(程序员)
      4. 单元测试(程序员)
    5. 集成测试
      1. 专业测试人员测试
    6. 项目预上线(程序员)
    7. 项目上线
    8. 线上调试测试(程序员)

    先实现功能,后考虑优化

    相关文章

      网友评论

          本文标题:Struts下

          本文链接:https://www.haomeiwen.com/subject/asshpxtx.html