大数据基础之常用API三

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云解析DNS,个人版 1个月
简介: 大数据基础之常用API三
  1. SimpleDateFormat

    1. 构造方法
    2. 成员方法

      1. format
      2. parse
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    /*
    SimpleDateFormat 类: 简单的格式化时间的一个类
    
    构造方法:
    public SimpleDateFormat();
    public SimpleDateFormat(String parrent);
    
    成员方法:
    
    format  格式化日期输出字符串
    parse   输入字符串转换为日期
    
     */
    public class Demo02 {
        // 此处为抛出异常,之后会讲
        public static void main(String[] args) throws ParseException {
            // 构造对象
            SimpleDateFormat sdf = new SimpleDateFormat();
            System.out.println(sdf);
    
            // 使用传入的规则创建一个sdf对象
            SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd'\t'HH:mm:ss");
    
            //将日期格式化为字符串
            Date d1 = new Date();
            //空参构造格式化
            String format = sdf.format(d1);
            // 带时间格式的构造格式化
            String format2 = sdf1.format(d1);
    
            System.out.println(format); // "22-1-25 上午11:38"
    //        dateString ds1 = "Tue Jan 25 11:15:38 CST 2022";
            System.out.println(format2);// "2022-01-25 11:39:14"
            //将字符串格式化为日期
            // 将字符串转换为Date类型时,要注意sdf对象的时间格式,要和字符串的格式相匹配,否则就会转换失败而报错
            // 此处系统判断我们可能出现异常,所以强制我们处理异常,或者抛出异常
    //        Date parse = sdf1.parse("22-1-25 上午11:38");
            Date parse = sdf1.parse("2022-01-25    11:39:14");
    
            System.out.println(parse);
    
    
        }
    }
    /*
    需求
    •  定义工具类DateUtils, 该类有两个方法: date2String(), string2Date(), 分别用来格式化, 解析日期.
    •  在测试类中, 测试上述的两个方法.
    •  注意: 解析日期字符串时, SImpleDateFormat对象的模板要和被解析的字符串格式保持一致.
    
     */
    public class Demo03 {
        public static void main(String[] args) throws ParseException {
            // Date>> String
            Date d1 = new Date();
            System.out.println(DateUtils.Date2String(d1, "yyyy年MM月dd日  HH时:mm分"));
            
            // String>> Date 
            String dateStr = "2022年01月25日  11时:56分";
            Date d2 = DateUtils.String2Date(dateStr, "yyyy年MM月dd日  HH时:mm分");
    
            System.out.println(d2);
    
    
    
        }
    }
    package cn.itcast.demo04_Date;
    
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    public class DateUtils {
        //工具类的思想:
        //1. 构造方法私有
        private DateUtils(){
    
        }
    
        //2. 所有方法静态
        public static String Date2String(Date date, String parrent) {
            // 创建一个sdf对象
            SimpleDateFormat sdf = new SimpleDateFormat(parrent);
            //格式化
            String dateStr = sdf.format(date);
            //返回结果
            return dateStr;
        }
    
        public static Date String2Date(String dateStr, String parrent) throws ParseException {
            // 创建一个sdf对象
            SimpleDateFormat sdf = new SimpleDateFormat(parrent);
            // 解析
            Date date = sdf.parse(dateStr);
            // 返回
            return date;
        }
    }
  2. Calendar类

    1. 成员变量

      1. YEAR
      2. MONTH
      3. DATE
      4. DAYOFMONTH
      5. DAYOFWEEK
    2. 成员方法

      1. getInstalce
      2. get
      3. set
      4. add
    import java.util.Calendar;
    
    /*
    Calendar 帮助我们去记录和使用时间的一个类,目前已经基本替换Date, JDK1.1
    那为什么不删除Date呢??? 因为jdk要进行向下兼容 例如1.8版本要兼容1,8之前的所有版本,所以不能删除
    构造法方法:
    1.public calendar();
    2.public calendar(时区, 语言环境);  如果使用上边这种构造方式,会自动传入系统时区和语言环境
    1. 成员变量
       1. YEAR
       2. MONTH
       3. DATE
       4. DAYOFMONTH
       5. DAYOFWEEK
    2. 成员方法
       1. getInstalce
       2. get
       3. set
       4. add
       5.
     */
    public class Demo01 {
        public static void main(String[] args) {
            // Calendar 是一个抽象类,不能进行实例化,但是我们想使用他
            // 在类中给了一个getinstance这个方法,内部返回了一个Calendar的子类对象.
            // 如果想要使用Calendar构造方法创建一个类,就需要实现其所有抽象方法.
            Calendar calendar = Calendar.getInstance();
            System.out.println(calendar);
            // 获取当前的一些时间(静态变量)
            // Calendar.DATE 这个是给 Calendar添加或者删减数据用
    //        System.out.println(Calendar.DATE); // 5
    //        System.out.println(Calendar.MONTH); // 2
    //        System.out.println(Calendar.YEAR); // 1
    //        System.out.println(Calendar.WEEK_OF_MONTH); // 4
    
            // 计算机中month中0代表的是1月, 1代表2月  以此类推
            // 星期,月份在Calendar类中都有对应的常量代表
            calendar.set(2022, 0, 25);
            System.out.println(calendar.get(Calendar.DAY_OF_YEAR));
    
            //使用add 给DATE 添加4天
            calendar.add(Calendar.DATE, 4);
            calendar.add(Calendar.MONTH, -4);
            // 获取添加4天后是这一年的第几天
            System.out.println(calendar.get(Calendar.DAY_OF_YEAR));
            // 如果再Calendar使用过程中,进行了一系列操作将日期,月份或者年份进行减少或增加进入了下一个月年  都会进行记录
            // 所以我们再开发中你可以使用Calendar进行计算.
            System.out.println(calendar.get(Calendar.YEAR)); // 2021年
            
    
    
        }
    }

    案例:

    public static void main(String[] args) {
        //1. 创建一个Scanner对象
        Scanner sc = new Scanner(System.in);
        //2.提示并获取用户输入的年份
        System.out.println("请输入您要查询的年份:");
        int year = sc.nextInt();
        //3.创建一个calendar对象,将年份传入
        Calendar c1 = Calendar.getInstance();
        //4.将3月1日传入Calendar对象  ,此处是3月1日,所以MONTH应该传2
        c1.set(Calendar.YEAR, year);
        c1.set(Calendar.MONTH, 2);
        c1.set(Calendar.DATE, 1);
        //5.从当前calendar对象中减去一天,
        c1.add(Calendar.DATE, -1);
        //6.获取当月的日期,就是当年2月份的天数
        System.out.println("二月份的天数是:" + c1.get(Calendar.DATE));
    }
相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
3月前
|
数据采集 运维 数据挖掘
API电商接口大数据分析与数据挖掘 (商品详情店铺)
API接口、数据分析以及数据挖掘在商品详情和店铺相关的应用中,各自扮演着重要的角色。以下是关于它们各自的功能以及如何在商品详情和店铺分析中协同工作的简要说明。
|
3月前
|
SQL 数据采集 分布式计算
MaxCompute产品使用合集之大数据计算MaxCompute的PyODPS API相比ODPSSQL那个数据清洗的效率高
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
1月前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之使用API调用ODPS SQL时,出现资源被定时任务抢占,该怎么办
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
1月前
|
分布式计算 DataWorks API
DataWorks产品使用合集之使用REST API Reader往ODPS写数据时,如何获取入库时间
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
1月前
|
分布式计算 大数据 Go
MaxCompute操作报错合集之使用go sdk调用GetTunnelEndpoint出现报错:InvalidAction.NotFoundSpecified api is not found,该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
1月前
|
分布式计算 DataWorks 大数据
MaxCompute产品使用合集之DataWorks中如何根据MC数据源做成api
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
2月前
|
Java 大数据 API
【大数据】HDFS、HBase操作教程(含指令和JAVA API)
【大数据】HDFS、HBase操作教程(含指令和JAVA API)
87 0
【大数据】HDFS、HBase操作教程(含指令和JAVA API)
|
2月前
|
SQL DataWorks 监控
DataWorks操作报错合集之在调用数据服务API时返回的错误码是"ODPS-0410051",并且错误信息提示"Invalid credentials - accessKeyId not found",该怎么办
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
33 0
|
2月前
|
机器学习/深度学习 分布式计算 大数据
MaxCompute产品使用问题之当使用Tunnel API进行数据操作时,MaxCompute会根据什么进行相应的处理
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
2月前
|
分布式计算 自然语言处理 大数据
【大数据】MapReduce JAVA API编程实践及适用场景介绍
【大数据】MapReduce JAVA API编程实践及适用场景介绍
57 0

热门文章

最新文章