从零学Java
文章平均质量分 82
贰贰柒丶阿拽
这个作者很懒,什么都没留下…
展开
-
Java - JDBC 结构优化3
在DAO层中,对数据库表的增、删、改、查操作存在代码冗余。可对其进行抽取封装DbUtils工具类实现复用。公用的增删改方法公用的查询方法。原创 2024-02-01 20:25:58 · 408 阅读 · 0 评论 -
JDBC 结构优化2
在释放资源的方法中,连接对象关闭后,提供threadLocal.remove()。**目的:**DAO提高数据操作的重用性,Service提高业务功能的重用性。在Service中,调用了多次DAO操作。每一个业务功能都要控制事务。原因:Service控制事务和DAO访问数据库时的连接对象,并非同一个。将关闭后的连接从当前ThreadLocal中移除。程序设计角度: 每一个步骤都是一个方法。服务者角度: 业务包含多个步骤。用户角度: 功能即业务。原创 2024-01-31 20:47:32 · 959 阅读 · 0 评论 -
JDBC - 结构优化1
*三层架构:**将程序划分为表示层, 业务逻辑层, 数据访问层三层,各层之间采用接口相互访问,并通过实体类对象作为数据传递的载体。表示(界面)层(User Interface Layer)。业务逻辑(服务)层(Business Logic Layer)。数据访问(持久)层(Data Access Layer)。**调用关系:**表示层调用业务层,业务层调用数据访问层。**目的:**是为了实现“高内聚低耦合”的思想。原创 2024-01-31 20:44:00 · 949 阅读 · 0 评论 -
HTM标签 - 2
a>文本或图片:在页面中使用超链接标签跳转到另一个页面###不写_blank_self_paren_top原创 2024-01-31 20:07:27 · 428 阅读 · 0 评论 -
HTML标签 - 1
一门使用标记标签来描述网页,展示信息给用户的语言。超文本:页面内可以包含图片、链接、音乐、程序等非文字元素标记:即标签,不同的标签实现不同的功能语言:人与计算机的交互工具。原创 2024-01-31 20:01:37 · 923 阅读 · 0 评论 -
Java - JDBC
JDBC(Java DataBase Connectivity)Java数据库连接,SUN公司定义的一套连接数据库的规范(标准)。使用JDBC连接数据库完成CRUD操作。JDBC中定义了访问数据库的接口,可以为多种关系型数据库提供统一的访问方式。由数据库厂商提供驱动实现类(Driver数据库驱动)。原创 2024-01-29 20:41:41 · 1050 阅读 · 0 评论 -
SQL - 事务控制
这是MySQL的默认事务隔离级别,它确保同一事务的多个实例在并发读取数据时,会看到同样的数据行。简单的说,幻读指当用户读取某一范围的数据行时,另一个事务又在该范围内插入了新行,当用户再读取该范围的数据行时,会发现有新的“幻读” 行。这种隔离级别出现不可重复读(Nonrepeatable Read)问题,因为同一事务的其他实例在该实例处理期间可能会有新的commit,所以同一select可能返回不同结果。最高的隔离级别,它通过强制事务排序,使之不可能相互冲突,从而解决幻读问题。用数据库操作来模拟现实转账。原创 2024-01-25 21:13:36 · 2100 阅读 · 0 评论 -
SQL - 数据控制语句
数据控制语言:Data Control Language。用来授权或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,能够对数据库进行监视。比如常见的授权、取消授权、回滚、提交等等操作。原创 2024-01-25 21:11:51 · 772 阅读 · 0 评论 -
SQL - 数据定义语句
DDL(Data Definition Language), 即数据定义语句。定义语言就是定义关系模式、删除关系、修改关系模式以及创建数据库中的各种对象,比如表、聚簇、索引、视图、函数、存储过程和触发器等等。数据定义语言是由SQL语言集中负责数据结构定义与数据库对象定义的语言,并且由CREATE、ALTER、DROP和TRUNCATE四个语法组成。原创 2024-01-25 21:09:38 · 1412 阅读 · 0 评论 -
SQL - 数据操作语句
*语法: **INSERT INTO 表名(列1, 列2, 列3…) VALUES(值1, 值2, 值3…DELETE是清空整张表的数据,不释放空间;TRUNCATE是把表销毁,再按照原表的结构创建一张新表,释放空间。UPDATE 表名 SET 列1=新值1 ,列2 = 新值2,…DELETE属于DML语句,可以回滚,TRUNCATE属于DDL语句,不可以回滚。**语法: **DELETE FROM 表名 WHERE 条件;注: MySQL中每条记录最大长度64k。TRUNCATE TABLE 表名;原创 2024-01-25 21:07:46 · 2038 阅读 · 0 评论 -
SQL语句 - 查询语句
SELECT 列名FROM 表名WHERE 条件GROUP BY 分组HAVING 过滤条件ORDER BY 排序列(ASC|DESC)LIMIT 起始行,数据个数FROM: 指定数据来源表WHERE:对查询数据做第一次过滤GROUP BY:分组HAVING:对分组后数据做第二次过滤SELECT:查询各字段的值ORDER BY:排序LIMIT:限定查询结果。原创 2024-01-24 19:52:09 · 970 阅读 · 0 评论 -
从零学Java MySQL
按照数据结构来组织、存储和管理数据的仓库。是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。数据库的分类:结构描述网状结构以节点形式存储和访问。层次结构定向有序的树状结构实现存储和访问。关系结构Oracle、DB2、MySQL、SQL Server,以表格(Table)存储,多表间建立关联关系,通过分类、合并、连接、选取等运算实现访问。非关系结构【NoSQL】原创 2024-01-23 19:33:55 · 1073 阅读 · 1 评论 -
设计模式 简单工厂模式
开发中有一个非常重要的原则“开闭原则”,对拓展开放、对修改关闭。工厂模式主要负责对象创建的问题。可通过反射进行工厂模式的设计,完成动态的对象创建。原创 2024-01-23 10:20:20 · 345 阅读 · 0 评论 -
Java 基础 - 反射
类的对象:基于某个类 new 出来的对象,也称为实例对象。类对象:类加载的产物,封装了一个类的所有信息(类名、父类、接口、属性、方法、构造方法、包) ,每个类只有一个类对象。反射:把Java类中的各种成分映射成单独的Java对象进行操作。注意:每个类加载到内存都会生成一个唯一的类对象。原创 2024-01-23 10:19:02 · 835 阅读 · 1 评论 -
JDK8 New Time API
之前时间API存在问题:线程安全问题、设计混乱。LocalDate: 本地日期LocalTime: 本地时间LocalDateTime: 本地日期时间Instant:时间戳。ZoneId:时区。Date、Instant、LocalDateTime的转换。DateTimeFormatter:格式化类。原创 2024-01-23 10:16:47 · 380 阅读 · 0 评论 -
从零学Java - Lambda表达式
Lambda表达式:特殊的匿名内部类,语法更简洁。允许把函数作为一个方法的参数(函数作为方法参数传递),将代码像数据一样传递。如果一个接口只有一个抽象方法,则该接口称之为函数式接口,函数式接口可以使用Lambda表达式,Lambda表达式会被匹配到这个抽象方法上。@FunctionalInterface 注解检测接口是否符合函数式接口。代码示例:@FunctionalInterface //函数式接口: 只有一个抽象方法//匿名内部类@Override。原创 2024-01-22 19:56:10 · 984 阅读 · 0 评论 -
从零学Java - Stream API
流(Stream)与集合类似,但集合中保存的是数据,而Stream中保存对集合或数组数据的操作。原创 2024-01-22 19:54:50 · 659 阅读 · 0 评论 -
从零学Java - 注解
注解(Annotation):属于引用数据类型,是代码里的特殊标记, 程序可以读取注解,一般用于替代配置文件。原创 2024-01-22 19:44:08 · 977 阅读 · 0 评论 -
从零学Java - 枚举
枚举是一个引用类型,枚举是一个规定了取值范围的数据类型。原创 2024-01-22 19:43:12 · 320 阅读 · 0 评论 -
从零学Java 单例模式
单例(Singleton):保证只能创建一个该类的对象。实现单例三个步骤私有化构造方法在类内部创建一个对象在类中添加一个公开的方法,返回单例对象。原创 2024-01-22 19:42:39 · 640 阅读 · 0 评论 -
计算机网络编程
概念:由点和线构成,表示诸多对象间的相互联系。概念:计算机网络是将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路和通信设备连接起来的一种计算机系统。作用:在网络操作系统、网络管理软件及网络通信协议的协同管理下,可以实现资源的共享和信息的高效传递。常见的计算机网络互联网:(Internet)点与点相连万维网:(WWW – World Wide Web)端与端相连物联网:( IoT - Internet of things) 物与物相连网络编程。原创 2024-01-18 20:54:21 · 2193 阅读 · 0 评论 -
从零学Java IO流
概念:内存与存储设备之间传输数据的通道。水借助管道传输;数据借助流传输。原创 2024-01-17 19:50:54 · 830 阅读 · 0 评论 -
从零学Java File
概念:代表物理盘符中的一个文件或者文件夹。原创 2024-01-16 20:29:41 · 543 阅读 · 0 评论 -
从零学Java 多线程的三个特性
synchronized可保证原子性和可见性。volatile可保证可见性和有序性。(1)读取i的值 (2)执行加1操作(3)修改i的值。多线程要保证并发线程正确执行,必须要保证三个特性。i++是原子操作吗?使用原子操作类解决。原创 2024-01-16 20:28:52 · 385 阅读 · 0 评论 -
从零学Java 线程安全的集合
Collection体系集合、以及线程安全集合。注:下划线代表线程安全集合。原创 2024-01-16 20:27:45 · 906 阅读 · 0 评论 -
从零学Java Lock 接口
JDK5加入,与synchronized比较,显示定义,结构更灵活。提供更多实用性方法,功能更强大、性能更优越。原创 2024-01-16 20:25:33 · 830 阅读 · 0 评论 -
从零学Java 线程池
将任务提交给线程池,由线程池分配线程、运行任务,并在当前任务结束后复用线程。原创 2024-01-15 18:54:06 · 599 阅读 · 0 评论 -
从零学Java 线程的状态
主线程main()或独立线程run()结束,进入终止状态,并释放持有的时间片。: 调用start()之后,进入就绪状态。等待OS选中,并分配时间片。: 线程对象被创建,即为初始状态。只在堆中开辟内存,与常规对象无异。需求:A线程将“Hello”存入数组;B线程将“World”存入数组。: 获得时间片之后,进入运行状态,如果时间片到期,则回到就绪状态。当多线程并发访问临界资源时,如果破坏原子操作,可能会造成数据不一致。:多个线程并发同时执行。:一个线程接着一个线程。原创 2024-01-15 18:02:15 · 850 阅读 · 0 评论 -
从零学Java 多线程(基础)
进: 正在进行;程: 程序程序:程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念;进程:进程是执行程序的一次执行过程,它是一个动态的概念。是系统资源分配的单位程序是静止的,只有真正运行时的程序,才被称为进程。目前操作系统都是支持多进程,可以同时执行多个进程,通过进程ID区分。概念: 线程,又称轻量级进程(Light Weight Process)。进程中的一个执行路径,同时也是CPU的基本调度单位。进程由多个线程组成,彼此间完成不同的工作,抢占式执行,称为多线程。原创 2024-01-15 09:08:32 · 975 阅读 · 0 评论 -
从零学Java Map集合
将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。: 双向链表保存HashMap的顺序,有顺序的HashMap。: 哈希表,键重复依据hashCode和equals方法。2 定制Comparator比较器。: 红黑树,重复依据排序实现。1 实现Comparable接口。原创 2024-01-13 09:56:17 · 860 阅读 · 0 评论 -
从零学Java Set集合
特点元素自身提供的比较规则称为自然排序。Comparator可以实现定制比较规则。compare(o1,o2),如果返回值为0,则为重复元素。使用Comparator比较器,元素类型可不实现Comparable接口,并且优先级高于Comparable接口。//创建比较器,定制比较规则@Overriden2:n1;//创建集合练习TreeSet实现字符串按照长度排序,如果长度相同,按照编码顺序。//练习:TreeSet实现字符串按照长度排序,如果长度相同,按照编码顺序。原创 2024-01-11 20:20:17 · 392 阅读 · 0 评论 -
从零学Java 泛型
Java泛型是JDK1.5中引入的一个新特性,其本质是参数化类型,把类型作为参数传递。常见形式有泛型类、泛型接口、泛型方法。语法<T,…> :T称为类型占位符,表示一种引用数据类型(一般使用一个大写字母表示)。多个占位符之间使用逗号隔开。好处提高代码的重用性防止类型转换异常, 提高代码的安全性。原创 2024-01-11 20:18:55 · 455 阅读 · 0 评论 -
从零学Java List集合
有序、有下标、元素可以重复。原创 2024-01-10 19:21:16 · 394 阅读 · 0 评论 -
从零学Java 集合概述
概念:对象的容器,定义了对多个对象进行操作的常用方法;可实现数组的功能。和数组区别数组长度固定,集合长度不固定。数组可以存储基本类型和引用类型,集合只能存储引用类型。原创 2024-01-10 19:18:51 · 586 阅读 · 0 评论 -
从零学Java 异常
java 异常原创 2024-01-10 10:30:41 · 420 阅读 · 0 评论 -
从零学Java 常用类
Java 中一些常用的类,BigDecimal,Math,Random,Date......原创 2024-01-09 17:47:12 · 970 阅读 · 0 评论 -
从零学Java - String类
String 类笔记原创 2024-01-08 21:02:45 · 908 阅读 · 0 评论 -
从零学Java 包装类
基本数据类型所对应的引用数据类型。原创 2024-01-06 19:05:03 · 374 阅读 · 0 评论 -
从零学Java Object类
任何类,如没有书写extends显示继承某个类,都默认直接继承Object类,否则为间接继承。垃圾回收: 由GC(Garbage Collector)销毁垃圾对象,释放数据存储空间。当对象被判定为垃圾对象时,由JVM自动调用此方法,用以标记垃圾对象,进入回收队列。哈希算法根据对象的地址或字符串或数字计算出来的int类型的数值。Object类中所定义的方法,是所有对象都具备的方法。返回引用中存储的实际对象类型 (类对象)。自动回收机制:JVM自动回收所有垃圾对象。:没有有效引用指向此对象时,为垃圾对象。原创 2024-01-06 19:04:11 · 400 阅读 · 0 评论 -
从零学Java 内部类
概念: 在一个类的内部再定义一个完整的类, 内层的类称为内部类特点编译之后可生成独立的字节码文件内部类可以访问外部类的私有成员, 而不破坏封装可为外部类提供必要的功能。原创 2024-01-06 19:03:18 · 399 阅读 · 0 评论