Java基础_解析与生成XML
解析与生成XML
Java生成xml文件的四种方式
四种生成和解析XML文档的方法详解(介绍+优缺点比较+示例)
Java 自定义生成与解析(Dom4J)XML 文件
12345四种方式总结: 1.dom基于tree,sax基于事件,JDOM和DOM4J基于底层API 2.dom生成的内容会保存到内存中,方便删除和修改 3.sax不能修改已经生成的标签 4.添加JUnit在Libraries选择Add Library中的JUnit即可
【DOM】
DOM方式生成xml是基于DOM树的结构,整个DOM树会存在内存中,所以使用DOM方式可以频繁的修改xml的内容,但是因为DOM树是存在内存中的,所以对内存消耗较大。DOM方式比较适用于需要频繁删改的情况。
【SAX】
SAX方式生成xml是逐步写入的,也就是说,在SAX写入时,已经写入的部分是无法再回头修改的,因为SAX是基于事件驱动的,在写完一个标签之后是不能回头的,也因此,SAX的效率比较快,但是不能进行删改。
【JDOM】
JDOM方式不是Java提供的基本的生成xml方式,使用时需要导入额外的jar包,但 ...
Java基础_读取配置文件
读取配置文件读取properties配置文件
properties类中的主要方法
1)getProperty(String key)
用指定的键在此属性列表中搜索属性。也就是通过参数key,得到key所对应的value。
2)load(InputStream inStream)
从输入流中读取属性列表(键和元素对)。以供getProperty( String key)来搜索。
3)setProperty(String key, String value)
调用Hashtable的方法put 。他通过调用基类的put方法来设置键-值对。
4)store(OutputStream out, String comments)
以适合使用load方法加载到Properties表中的格式,将此Properties表中的属性列表(键和元素对)写入输出流。与load方法相反,该方法将键-值对写入到指定的文件中去。
5)clear()
清除所有装载的键-值对。该方法在基类中提供
12apple=src.main.java.per.hyc.ReflexAndInvokeTest.Appleorang ...
Java基础_集合
集合
Java进阶_注解
【黑马程序员-Java语言高级部分9.3】Java 注解
注解基础概念
注释:用文字描述程序的,给程序员看的
百度上的解释:
Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制,是一种代码级别的说明。Java 语言中的类、方法、变量、参数和包等都可以被标注。
和 Javadoc 不同,Java 标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java 虚拟机可以保留标注内容,在运行时可以获取到标注内容 。
当然它也支持自定义 Java 标注。
概念描述:
JDK1.5 之后的新特性
用来说明程序的
使用注解:@注解名称
作用分类
编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】
编写文档:通过代码里标识的注解生成文档,API文档是通过抽取代码中的文档注释生成的。
代码分析:通过代码里标识的注解对代码进行分析【使用反射】
大多数时候,我们会使用注解而不是自定义注解
注解给编译器和解析程序用
注解不是程序的一部分,可以理解为标签
预定义注解
@Overri ...
MySQL_事务
MySQL多表查询与事务的操作
基本介绍
概念:一个包含多个步骤的业务操作,被事务管理,那么这些操作要么同时成功,要么同时失败。
操作:
事务四大特征
原子性:是不可分割的最小操作单位,要么同时成功,要么同时失败。
持久性:当事务提交或回滚后,数据库会持久化的保存数据。
隔离性:多个事务之间。相互独立。
一致性:事务操作前后,数据总量不变
事务隔离级别
概念:多个事务之间隔离的,相互独立的。但是如果多个事务操作同一批数据,则会引发一些问题,设置不同的隔离级别就可以解决这些问题
存在问题
脏读:一个事务,读取到另一个事务中没有提交的数据不可重复读(虚读):在同一个事务中,两次读取到的数据不一样。幻读:一个事务操作(DML)数据表中所有记录,另一个事务添加了一条数据,则第一个事务查询不到自己的修改。
隔离级别
read uncommitted:读未提交(产生的问题:脏读、不可重复读、幻读)
A事务还没执行提交,B事务已经可以查到数据了
read committed:读已提交 (Oracle)(产生的问题:不可重复读、幻读)
A事务执行提交,B事务在同一次查询中查到已被修改的数 ...
MySQL_基础
【黑马程序员-Java语言高级部分10】MySQL入门学习
基础概念
数据库的英文单词: DataBase(简称DB)
数据库: 用于存储和管理数据的仓库
数据库的特点:
持久化存储数据的。其实数据库就是一个文件系统
方便存储和管理数据
使用了统一的方式操作数据库 — SQL
常见的数据库软件
数据库软件
安装
卸载
去mysql的安装目录找到my.ini文件复制 datadir=”C:/ProgramData/MySQL/MySQL Server 5.5/Data/“
卸载MySQL
删除C:/ProgramData目录下的MySQL文件夹。
配置
MySQL服务启动
手动
cmd—> services.msc 打开服务的窗口
使用管理员打开cmd
net start mysql : 启动mysql的服务
net stop mysql:关闭mysql服务
MySQL登录
mysql -uroot -p密码
mysql -hip -uroot -p连接目标的密码
mysql —host=ip —user=root —pas ...
MySQL_多表查询
MySQL多表查询与事务的操作
sql准备123456789101112131415161718192021# 创建部门表CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20));INSERT INTO dept (NAME) VALUES ('开发部'),('市场部'),('财务部');# 创建员工表CREATE TABLE emp ( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10), gender CHAR(1), -- 性别 salary DOUBLE, -- 工资 join_date DATE, -- 入职日期 dept_id INT, FOREIGN KEY (dept_id) REFERENCES dept(id) -- 外键,关联部门表(部门表的主键));INSERT INTO emp(NAME,gender,salary,join_date,dept_id) VA ...
MySQL_数据库设计
表间关系
MySQL约束与设计
关系分类
一对一(了解):
如:人和身份证
分析:一个人只有一个身份证,一个身份证只能对应一个人
实现方式:一对一关系实现,可以在任意一方添加唯一外键指向另一方的主键
一对多(多对一):
如:部门和员工
分析:一个部门有多个员工,一个员工只能对应一个部门
实现方式:在多的一方建立外键,指向一的一方的主键
多对多:
如:学生和课程
分析:一个学生可以选择很多门课程,一个课程也可以被很多学生选择
实现方式:多对多关系实现需要借助第三张中间表。中间表至少包含两个字段,这两个字段作为第三张表的外键,分别指向两张表的主键
案例
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758>-- 创建旅游线路分类表 tab_category>-- cid 旅游线路分类主键,自动增长>-- cname 旅游线路分类名称非空,唯一,字符串 100>CREA ...