栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JavaSE进阶-XML&注解

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaSE进阶-XML&注解


    xml
        xml的编写                  【重点】
        xml的解析                  【重点】
        xml的约束                  【了解】
    注解                           【重点】
  

xml
    xml的概述
        什么是xml
            可扩展标记语言
            可扩展:标签(元素)是可以任意自定义的
            标记语言:是由标签(元素)组成的一门一样

        xml的作用
            1、存储数据(当做配置文件使用)
            2、传输数据

    xml的编写                  【重点】
        xml标签的语法
            1、标签由一对尖括号和标签名组成
            2、标签一般成对出现                      [双标签/围堵标签]
                xxx
            3、标签也可以不成对出现,但是必须有结束标记  [单标签/自闭合标签]
               
            4、在开始标签处可以定义属性,属性一般是以键值对的形式出现的
                属性名就是键,要和标签名使用空格隔开
                属性值就是值,值必须使用引号(单双引都可以)引起来
                比如:
               
                id就是属性
            5、标签必须正确的嵌套
                // 正确嵌套
                 // 错误嵌套
            6、标签名区分大小写
                // 错误的

        xml文档的语法
            1、后缀名必须是.xml的
            2、xml文档必须有文档声明,而且文档声明必须位于第一行第一列
               
            3、xml文档必须有一个根标签,而且有且只能有一个
                根标签:最外层的标签,所有的标签都必须直接或者间接在根标签内部

                子标签:嵌套在内部的标签
                父标签:外部的标签
            4、xml文档中可以使用注释
               
            5、特殊字符需要使用实体引用替换
                < < 小于       lt  less than
                > > 大于       gt  great than
            6、可以使用CDATA区
               
                CDATA区:其中的内容都不会被解析,会被原样展示

        xml编写练习:
                描述一个书店(bookstore标签),其中有三类(category属性)书
                第一类书:java类型
                    标题(title标签):java基础入门
                    作者(author标签):传智播客
                    出版年份(year标签):2015
                    价格(price标签):59.9
                第二类书:children类型
                    标题(title标签):哈利波特
                    作者(author标签):J K.罗琳
                    出版年份(year标签):2005
                    价格(price标签):29.9
                第三类书:web类型
                    标题(title标签):学习xml
                    作者(author标签):罗伊
                    出版年份(year标签):2003
                    价格(price标签):39.9


    xml的解析                  【重点】
        什么是xml的解析
            将xml文档中存储的数据读取出来
            在xml文档中数据存在于标签体内部和属性值中
            解析就是读取标签体内部和属性值中的内容

        DOM解析思想
            文档对象模型
            将文档的各个组成部分封装成不同的对象:
                Document
                Element
                Attribute
                Text
                Node
            解析工具:
                选用DOM4J

        xml解析的练习
            需求:
                解析这个xml文件,
                将解析到的数据封装到学生对象中.
                并将学生对象存储到ArrayList集合中
                遍历集合

            步骤:
                1、解压压缩文件获取到jar包,将jar包导入到模块中
                2、准备要解析的xml文档
                3、编写标准类Student用于封装解析之后的数据
                4、编写测试类进行解析操作

    xml的约束                  【了解】
        约束的概述
            什么是约束
                用于对xml的文件的编写进行限制的文档
                xml文档中主要是标签和属性组成,所以限制主要是针对标签和属性

            约束的分类
                DTD
                Schema

        DTD
            约束的编写

            约束的引入
                引入本地dtd
                   

                xml文档内部引入dtd
                   

                引入网络中的dtd   [常见]
                                                PUBLIC "名称" "网络中的地址">

                                          PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
                      "http://mybatis.org/dtd/mybatis-3-config.dtd">

            根据约束写xml文件


        Schema
            约束的编写
            约束的引入
            根据约束写xml文件

注解
    注解的概述
        什么是注解
            以@符号开头的内容就是注解,比如:@Override
            注解是代码级别的内容,是代码的一部分,用于对其他的代码进行说明,它可以使用在类上、方法上、变量上等

        注解(Annotation)和注释(Comment)的区别
            注解:用于对代码的说明,但是它是程序看的,它也是属于代码的一部分,会被编译器所识别,会被JVM所运行
            注释:用于对代码进行解释说明的文字,用于给程序看方便阅读代码的,会被编译器所忽略,不是代码的一部分

        注解的作用:
            1、可以用于检测验证
            2、当做配置使用,替代配置文件方式,简化代码

    JDK提供注解的使用
        @Override
        @FunctionalInterface
        @Deprecated
        @SuppressWarnings

    自定义注解
        格式:
            元注解
            public @interface 注解名 {
                属性;
            }

        属性
            注解本质上是一个接口,继承了java.lang.Annotation接口
            属性本质上是接口中的抽象方法

            属性的格式:
                public abstract 返回值类型 方法名() default 默认值;

                格式解析:
                    public abstract:修饰符,默认的,如果要写出只能固定写成public abstract
                    方法名:属性名
                    ():参数列表,参数列表只能为空
                    default 默认值:用于给属性赋予默认值
                    返回值类型:
                        只能是以下5种类型:
                            基本类型
                            String
                            Class
                            注解
                            枚举

                            和以上5种类型的一维数组类型

                    如果一个属性没有赋予默认值,则在使用注解的时候必须显式赋值,否则报错
        元注解
            什么是元注解
                也是注解,是用于定义注解的时候修饰注解的,放在注解定义之上的

            元注解
                @Target:用于限制注解使用的位置
                @Documented:限制生成的api文档中是否保留该注解
                @Retention:注解保留的时期
                    SOURCE:源码(.java),源码中有该注解,但是编译之后的字节码文件中就没有该注解了
                    CLASS:字节码文件(.class),源码和字节码文件中都有该注解,但是对类加载到JVM内存中的时候就没有该注解了
                    RUNTIME:运行时(Class),源码、字节码文件和类加载到JVM内存中生成的Class对象中都有该注解
                             如果是通过反射来操作注解,那么该注解一定要设置为RUNTIME
                @Inherited:设置该注解是否会被继承

                自定义的时候不加元注解也不会报错,因为会有默认值

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1035750.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号