- 博客(93)
- 收藏
- 关注
原创 数据库连接池
连接池连接池就是存储我们数据库连接对象的容器,系统初始化后,会去申请一些连接对象,用户访问数据库时,会去容器中获取数据库连接对象,使用完毕后会归还给容器。好处:1.提高资源利用率2.提高访问速度DataSourceJava提供的接口,DataSource接口由框架编写者实现方法 Connection getConnection() 获取连接 close() 归还连接对象,如果调用的是连接池中的Connection对象的clos...
2022-06-02 17:18:44
252
原创 JDBC.
JDBC入门1.注册驱动 驱动从哪里来? 框架开发者会将代码封装成jar包 项目根目录新建lib文件夹,拷贝驱动到此目录下 将驱动进行编译,驱动文件右键 -- ADD as Library 使用Java代码加载驱动类2.获取数据库连接对象3.通过数据库连接对象Statement对象4.通过Statement对象执行sql语句5.处理结果6.关闭资源package demo01_jdbc入门;import java.sql.Connection;import java.s
2022-05-24 20:32:13
119
原创 数据库..
数据库概述数据库(Database)DB,是按照数据结构来管理和存储数据的仓库。数据库的特点:持久化方便管理和存储数据使用统一的操作方式数据库的分类根据数据库中数据的关系来进行分类.........
2022-05-22 20:55:37
272
原创 多线程..
并发:只能够让多个任务在逻辑上交替执行的程序设计并行:指物理上可以同时执行进程:一个正在运行的程序(包含程序运行的环境、程序上下文)线程:线程是进程中的一个执行单元主线程(Java):执行主方法的线程单线程:就是一条一条代码的执行。多线程(Java):Java中允许使用多线程,允许并发的执行多个线程如何实现多线程?Thread:用来开启多线程** 1.新建一个类继承Thread类* 2.重写父类的run方法,在run方法里面写自己的逻辑* 3.创建子类对象*
2022-05-19 17:47:51
111
原创 反射...
反射:框架设计的灵魂框架:半成品软件。可以在框架的基础上进行软件开发,简化编码反射:将类的各个组成部分封装为其他对象,这就是反射机制好处:1.可以在程序运行过程中,操作这些对象。2.可以解耦,提高程序的可扩展性获取(字节码文件)class对象的方式1.Class.forName(“类全名”):将字节码文件加载进内存,返回Class对象。多用于配置文件,将类名定义在配置文件中。读取文件,加载类。...
2022-05-17 18:45:24
71
原创 学生评分案例
主入口类package MONA;import java.util.Scanner;public class Main { public static void main(String[] args) { showFun(); } public static void showFun(){ //可以一直进行操作 while (true){ System.out.println("请选择功能");.
2022-05-15 19:05:05
154
原创 其他流..
序列化:把对象存储到文件中package MONA.demo10_序列化流;import java.io.FileOutputStream;import java.io.ObjectOutputStream;import java.io.Serializable;/** * 序列化 * Java的对象,将对象存入文件中 * 反序列化 * 将文件中的对象读取到Java内存中 * * 在序列化对一个对象时会出现异常: * NotSerializableException
2022-05-12 17:45:22
82
原创 装饰模式.
装饰设计模式强调的是增强效果(对一个类的某些功能进行增强)。装饰类package MONA.demo13_装饰设计模式;/** * 喝咖啡 * 咖啡:拿铁 摩卡 * 加调料: 牛奶 巧克力 * * 装饰设计模式 */public class Demo01 { public static void main(String[] args) throws Exception { MochaCoffee mochaCoffee =
2022-05-12 16:41:35
80
原创 缓冲流..
* 缓冲流:提高读取、写入的效率** 字节缓冲输出流:* BufferedOutputStream* 字节缓冲输入流:* BufferedInputStreampackage MONA.demo06_字节缓冲流;import java.io.BufferedOutputStream;import java.io.FileOutputStream;public class Demo { public static void main(String[] a.
2022-05-11 14:42:16
145
原创 字符流..
package MONA.demo07_字符编码;import java.io.FileInputStream;import java.util.TreeMap;/** * 统计一个文件中 * 字母出现的次数 * 如有文件char.txt,内容为: * aaabbbcccdddeeefff * 实现思路: * 1.读取文件,将文件内容保存到String类型的变量中 * 2.使用Map集合的特性,完成统计功能 */public class D.
2022-05-10 20:14:33
135
原创 集合中的数据存入到文件中,文件中的数据读取到集合中
* Map<String ,Integer> map = new LinkedHashMap<>();* map.put(“摩卡”,30);* map.put(“卡布奇诺”,27);* map.put(“拿铁”,27);* map.put(“香草拿铁”,30);* ||* \ || /* \/* 摩卡=30* 卡布奇诺=27* 拿铁=27* 香草拿铁=30package MONA.demo01_作业题;import java.io.File..
2022-05-08 16:14:34
594
原创 乱码问题.
package MONA.demo06_编码;import java.io.FileInputStream;import java.io.FileOutputStream;/** * 写入:gbk * 读取(解析):utf-8 * * 乱码出现的原因: * 写入时的编码和读取时的编码不一致 * */public class Dem01 { public static void main(String[] args) throws Exception { .
2022-05-07 20:28:11
356
原创 IO流...
程序需要实现与设备和不同介质之间的数据传输,例如:键盘录入、读取电脑文件等,Java将这种通过不同输入输出设备(键盘,显示器,网络)等之间的数据传输抽象表述为“流”。按照操作的数据不同,可以分为:字节流:字节流可以操作任何数据,因为在计算机中任何数据都是以字节的形式存储的。字符流:字符流只能操作纯字符数据,比较方便。按照流向分,又可以分为输入流(我读取一个文件)和输出流(把一个数据输出到一个文件中)字节流字节输出流OutputStreamOutputStream是抽象类,是所
2022-05-07 20:27:33
175
原创 案例之实现复制指定文件
package MONA.demo03_练习题;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.util.Scanner;public class Demo03 { public static void main(String[] args) throws Exception { File file = getFile(); .
2022-05-07 19:28:16
233
原创 递归...
package MONA.demo06_递归;/** * 递归:自己调用自己 * 必要条件:递归需要退出 * 1~5 * 1+2+3+4+5 */public class Demo { public static void main(String[] args) { int sum = getSum(100); System.out.println(sum); } public static void m1(){ .
2022-05-05 15:38:58
83
原创 File类
File功能1.创建文件、目录2.删除文件、目录3.获取文件/目录的一些属性信息:大小、最后修改日期、文件名等。相对路径和绝对路径1.相对路径:相对路径就是相对于当前文件的路径。2.绝对路径:绝对路径就是硬盘上的真正路径。package MONA.demo01_file类;import java.io.File;import java.io.IOException;/** * file类的创建和删除 */public class Demo02 { pub
2022-05-05 15:24:16
318
原创 异常及错误
现阶段遇到的异常 JVM(java虚拟机)遇到异常后处理方式: 1.先确定异常的类型,到类库中实例化一个该异常类型的对象 2.看程序员(代码中)是否捕获此异常 没有捕获: 将异常信息直接打印到控制台中 有捕获: 程序员处理package MONA.demo01_异常;public class Demo01 { static String s; public static void main(String[.
2022-05-04 15:46:31
535
原创 案例之TreeMap
TreeMap统计字符串出现package MONA.demo01;import sun.reflect.generics.tree.Tree;import java.util.Comparator;import java.util.TreeMap;//快速搜索类:Ctrl+Shift+N/** * 自定义对象作为TreeMap的key * 1.自定义对象必须实现Comparable * 2.通过构造方法传入比较器(Comparator) */public class Dem.
2022-03-13 19:57:58
694
原创 HashMap使用
当给HashMap中存放自定义对象时,如果自定义对象作为key存在,这时要保证对象唯一,必须复写对象的hashCode和equals方法(如果忘记,请回顾HashSet存放自定义对象)。package MONA.demo01;import java.util.HashMap;import java.util.Objects;/** * 自定义对象作为Kkey * 当自定义对象作为key时,自定义对象必须重写一下两个方法 * hashCode * equals */public c
2022-03-13 15:40:13
876
原创 Map...
package MONA.demo01;import java.util.HashMap;import java.util.Map;public class Demo01 { public static void main(String[] args) { //K:键 //V:值 //Map<K,V> Map<String,String> map = new HashMap<>() ; .
2022-03-12 20:32:53
257
原创 Collections工具类使用
package MONA.demo07_collections;import java.util.ArrayList;import java.util.Collection;import java.util.Collections;public class Demo { public static void main(String[] args) { ArrayList<String> ss = new ArrayList<>(); .
2022-03-12 19:56:10
288
原创 案例之键盘录入学生信息按照总分排序
package MONA.demo06_treeset;import java.util.Comparator;import java.util.Scanner;import java.util.TreeSet;public class Demo04 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); TreeSet<Student2>.
2022-03-12 19:34:37
1274
原创 TreeSet集合
TreeSet基本特点1.元素是有序的2.不能存储重复的元素TreeSet类存储自定义对象package MONA.demo06_treeset;import java.util.Set;import java.util.TreeSet;/** * TreeSet * 1.元素是有序的(按照自然排序) * 2.不能存储重复元素 */public class Demo01 { public static void main(String[] args) {
2022-03-12 17:36:01
172
原创 获取10个不重复的随机数
package MONA.demo04_set;import java.util.HashSet;import java.util.Random;/** * 获取10个不重复的1至20之间的随机数 */public class Demo05 { public static void main(String[] args) { HashSet<Integer> hashSet = new HashSet<>(); Random .
2022-03-12 12:05:22
665
原创 Set接口与HashSet、HashCode 、LinkedHashSet
Set 具有与 Collection 完全一样的接口,只是行为上不同,Set 不保存重复的元素,而且Set接口中元素无序。package MONA.demo04_set;import java.util.ArrayList;import java.util.HashSet;import java.util.List;import java.util.Set;public class Demo01 { public static void main(String[] args) {
2022-03-12 11:53:28
1334
原创 案例之模拟用户登录注册
package MONA.demo03_练习题;import java.util.ArrayList;import java.util.Scanner;/** * 模拟登陆注册 */public class Demo02 { //加大sc的作用域 static Scanner sc = new Scanner(System.in); //存储用户信息的集合 static ArrayList<User> users = new ArrayList.
2022-03-11 20:29:57
467
原创 ArrayList练习题
移除ArrayList中的重复元素package MONA.demo03_练习题;import java.util.ArrayList;public class Demo01 { public static void main(String[] args) { // 1.实例化一个集合 ArrayList<String> list = new ArrayList(); // 2.填充集合 list.add(".
2022-03-11 20:27:34
251
原创 linkedlist
linkedlist使用package MONA.demo02_linkedlist;import java.util.LinkedList;import java.util.List;/** * linkedlist */public class Demo01 { public static void main(String[] args) { LinkedList<String> list = new LinkedList<>();
2022-03-10 21:02:57
59
原创 ArrayList
ArrayList是List接口的一个实现类,它是程序中最常见的一种集合,内部封装了一个长度可变的数组对象,当存入的元素超过数组长度时,ArrayList会在内存中分配一个更大的数组来存储这些元素。因此ArrayList集合看做一个长度可变的数组特点:底层数据结构是数组,随机访问速度快(根据索引访问),插入和移除较慢。 插入的数据有顺序,元素可以重复 线程不安全,效率高。(线程不安全效率肯定高!)(线程安全之后效率就会不高)为什么效率低?数组结构的优点是便于对集合进行快速的随机访问,
2022-03-10 20:09:39
314
原创 泛型...
为什么要使用泛型package MONA.demo04_泛型;import java.util.ArrayList;import java.util.List;/** * 为什么要用泛型 */public class Demo01 { public static void main(String[] args) { List list = new ArrayList(); list.add("aaa"); list.add("bb
2022-03-10 19:34:36
219
原创 List迭代器
package MONA.demo03_list;import java.util.ArrayList;import java.util.List;import java.util.ListIterator;public class Demo02 { public static void main(String[] args) { List list = new ArrayList(); list.add("aaa"); list.add.
2022-03-09 21:14:44
1236
原创 List集合特有功能
package MONA.demo03_list;import java.util.ArrayList;import java.util.List;/** * list特有的方法 */public class Demo01 { public static void main(String[] args) { List list = new ArrayList(); list.add("aaa"); list.add("bbb");.
2022-03-09 16:43:42
534
原创 Collection遍历
package MONA.demo02_collection;import java.util.ArrayList;import java.util.Collection;import java.util.Iterator;/** * Collection集合遍历方式 */public class Demo04 { public static void main(String[] args) { Collection list1 = new ArrayList().
2022-03-09 16:06:12
393
原创 Collection集合
一、数组和集合类同是容器,有何不同?数组虽然也可以存储对象,但长度是固定的。 集合长度是可变的。 数组中可以存储基本数据类型,集合只能存储对象类型(类类型)。二、集合类的特点 集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。不使用集合写代码:用数组写,就非常的繁琐。package MONA.demo01_集合引入;import java.util.Arrays;public class Demo { public static void m..
2022-03-09 11:19:05
65
原创 包装类自动装箱问题
package MONA.demo09_包装类;public class Demo02{ public static void main(String[] args) { Integer i1 = new Integer(1); Integer i2 = new Integer(1); //fales 判断的是地址的值 System.out.println(i1 == i2); //true 判断的是实际的.
2022-03-08 18:15:29
200
原创 基本类型包装类概述
基本类型包装类概述将基本数据类型封装成对象类型的类,就叫包装类好处在于可以提供更多的操作基本数值的功能。Java提供了8种基本类型对应的包装类,如图所示:其中需要注意int对应的是Integer,char对应的Character,其他6个都是基本类型首字母大写即可。基本数据类型对象包装类特点:用于在基本数据和字符串之间进行转换。...
2022-03-07 16:53:11
372
原创 BigInteger与BigDecimal
如果数据过大,使用int类型计算会出现问题 //获取int类型最大值 //Integer.MAX_VALUE System.out.println(Integer.MAX_VALUE); int i = 2147483647; int b = 2147483647; int c = i+b; System.out.println(c);BigInteger 可以用来解决数据的溢出问题,可以
2022-02-13 17:31:59
165
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人