
Java+JDBC
文章平均质量分 67
Java基础和相关知识
抹泪的知更鸟
无论怎样的苦难喜甜,终将逝为云烟
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JDBC 基础学习详情笔记
JDBC2 基础学习笔记JDBC简介操作步骤数据库 URL 制定使用Properties对象JDBC工具类示例JDBC StatementsConnection:StatementsPreparedStatementCallableStatementResultSet查看结果集数据类型结果集类型结果集并发性事务批处理JDBC简介JDBC增删改查的通过操作代码示例JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库。主要用原创 2021-12-27 12:16:50 · 1134 阅读 · 0 评论 -
JDBC 事务、级联查询、连接池、乐观锁和悲观锁等 第二节
JDBC高级1.批处理有时候我们需要执行大批量的增删改时,可以使用 jdbc 的批处理,它能有效的提高执行效率。实现批处理可以使用 Statement 与 PreparedStatement 完成,通常在使用中常用的 API 有三个 addBatch(sql)、executeBatch() 和 clearBatch(),分别完成 SQL 的追加、执行与清除。清除主要是为了当批处理数据量过大时导致内存泄露。 案例:private static void t1() throws ClassNotFou原创 2021-11-06 19:20:41 · 270 阅读 · 0 评论 -
JDBC 数据库增删改查的通用代码示例详解
数据库的 CRUD的通用操作JDBC的基本操作使用Properties对象增删改查工具类加载数据库驱动类建立连接(Connection)关闭connection和statement增删改操作的通用代码查询操作的通用代码批量操作的通用代码重载excuteBathc方法Main方法测试代码结果展示获取User实体设计UserEntityMapper类获取User实体的工具方法service设计dao设计JDBC的基本操作为了使代码复用,提高开发效率,设计JDBC数据库的增删改查非常有必要。JDBC 操作数原创 2021-12-26 14:02:37 · 4903 阅读 · 2 评论 -
JDBC 在IDEA中配置mysql8驱动过程详解
MySQL驱动配置和使用下载驱动JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库。主要用于执行 SQL 查询,并查看查询的记录。使用 JDBC 需要先下载驱动。mysql8需要设置时区,有cj目录,mysql5没有跟上时代的步伐,建议使用mysql8驱动下载地址首先进入以下页面,进行选择:选择Platform这一栏根据使用的操作系统进行选择需要的驱动包开始下载将jar包复制到对应项目下查看原创 2022-01-04 13:19:16 · 8071 阅读 · 0 评论 -
JDBC 基础、CRUD、分页 第一节
JDBC基础知识JDBC 简介1.持久化 把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以”固化”,而持久化的实现过程大多通过各种关系数据库来完成。 持久化的主要应用是将内存中的数据存储在关系型数据库中,当然也可以存储在磁盘文件、XML数据文件中。 2.JDBC概念(Java Database Connectivity)JDBC(Java Data Base Connectivity)是一种用于执行 SQL 语句的 Ja原创 2021-11-06 18:59:41 · 177 阅读 · 0 评论 -
JDBC 数据库连接池详解和示例
JDBC数据库连接池学习目标数据库连接池数据库连接池原理第一步第二步第三步第四步第五步DBCPDBCP参数方法1方法2C3P0方法1方法2DbUtilsQueryRunner核心类ResultSetHandler结果集处理类案例查询其他方法作业模拟数据库连接池DBCP 连接池C3P0连接池学习目标了解数据库连接池的原理了解C3P0数据库连接池了解DBCP数据库连接池掌握Druid数据库连接池数据库连接池数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用现有的N个(自定义)数原创 2021-12-28 15:51:16 · 1398 阅读 · 0 评论 -
JDBC 使用反射的通用操作 第三节
public List queryTree() {List categoryAll = baseDao.selectAll();Category category = new Category();category.setCatId((long) 0);List list = findSon(category, categoryAll);return list;}private List findSon(Category category, List categoryList) {retur原创 2021-11-06 19:32:03 · 221 阅读 · 0 评论 -
java 乐观锁和悲观锁,Threadlocal
7.乐观锁和悲观锁悲观锁(Pessimistic Lock)顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会 block 直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。乐观锁(Optimistic Lock)顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机制。悲观锁原创 2022-01-20 22:16:17 · 646 阅读 · 0 评论 -
java 数组的使用和相关操作
多维数组简单的使用1.使用二维数组打印一个 10 行杨辉三角。1.1题目提示1.2代码1.3运行结果2.回形数格式方阵的实现2.1题目和提示2.2代码2.3运行结果3.求数值型数组中元素的最大值、最小值、平均数、总和等3.1代码3.2运行结果4. 数组的复制、反转、查找(线性查找、二分法查找)4.1代码:4.2运行结果1.使用二维数组打印一个 10 行杨辉三角。1.1题目提示1.2代码//使用二维数组打印一个10行杨辉三角public class YangHuiTest { public.原创 2022-01-05 22:51:24 · 104 阅读 · 0 评论 -
Java 打印日历等五个经典程序题
1.打印日历1、输入年和月,打印对应月的日历,当前日通过星号标记出来 (借助于:Calendar)public class Demonstrate { public static void main(String[] args) throws ParseException { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个年份:"); int year = s原创 2021-12-10 15:06:23 · 1136 阅读 · 0 评论 -
Java JUI打字小游戏项目
JUI打字游戏效果展示游戏页面暂停图游戏结束页面素材链接: 单词素材提取码: 95a8链接:图片素材提取码: 7s1u代码实现子弹类:package www.git;import javax.imageio.ImageIO;import java.awt.image.BufferedImage;import java.io.IOException;/**@author Liu*@Description 创建子弹类*@data 2021/12/8*/publi原创 2021-12-08 21:00:40 · 3168 阅读 · 0 评论 -
Java I/O读取和解析.emp文件示例
Java I/O读取和解析.emp文件示例1.使用到的知识点IO流存数据和读数据集合用来存储解析的数据,对数据进行相关操作文件操作创建相关的文件存储数据##2.示例演示2.示例12.1存储几个员工数据到不同的文件2.1.1题目要求要求用户输入一个员工信息,格式为:name,age,gender,salary,hiredate例如:张三,25,男,5000,2006-02-15然后将输入的员工信息解析成Emp对象。然后将该Emp对象的toString返回的字符串写入到文件中原创 2021-12-04 12:00:00 · 1061 阅读 · 0 评论 -
Linux 在Tomcat上部署项目 OA系统 第四节
Linux 在Tomcat上部署项目 OA系统安装一台centos 7取名为company,并在其上部署公司门户系统,要求通过浏览器可以访问项目下载地址:OA系统 (weiyun.com)1.安装虚拟机1.1创建虚拟机1.2 登录虚拟机和查看ip1.3打开网关1.4 远程连接2.安装jdk与Tomcat2.1从windows系统传文件到linux系统中2.2解压文件到目标文件夹2.3修改jdk环境3.安装配置mysql3.1安装mysql3.2查看文件3.3修原创 2021-10-30 04:00:36 · 414 阅读 · 0 评论 -
基于数组的小项目《客户管理软件》
Java小项目实践1.工具类package com.git.manager;import java.util.Scanner;/* * Cmutility工具类 *将不同功能封装成方法 */public class CMUtility { private static Scanner scanner = new Scanner(System.in); /* * 用于界面菜单的选择,键盘输入1-5 */ public static char readMenuSelect原创 2021-08-08 19:02:33 · 112 阅读 · 0 评论 -
java基础 多维数组的简单的使用
java基础 多维数组简单的使用1.使用二维数组打印一个 10 行杨辉三角。1.1题目提示1.2代码//使用二维数组打印一个10行杨辉三角public class YangHuiTest { public static void main(String[] args) { //1.声明初始化二维数组 int[][] yangHui = new int[10][]; //2.给数组的元素赋值 for(int i = 0;i < yangHui.length;i++) {原创 2021-07-26 23:03:00 · 321 阅读 · 0 评论 -
Linux常用软件下载 JDK、Tomcat、MySQL、Redis、Nginx 第三节
Linux 安装常用软件1.安装配置JDKLinux版的jdk下载地址:JDK下载 (weiyun.com)Linux的环境变量在 /etc/profile文件中jdk解压位置建议放在/opt/module下tar -zxvf jdk-8u111-linux-x64.tar.gz -C /opt/module/到指定路径查看jdk添加jdk环境变量vim /etc/profile在文件头添加jdk环境变量:一般配置JAVA_HOME、CLASSPATH和PATH配置完成后需要加原创 2021-10-30 03:52:07 · 1422 阅读 · 0 评论 -
JVM 基础学习 第一节
JVM基础学习JVM简介JVM 内存区域线程1.程序计数器2.虚拟机栈(Java Virtual Machine Stacks)3.本地方法栈4.堆(Heap)5.方法区6.StringTable的特性7.StringTable的位置8.StringTable的性能调优直接内存1.定义2.分配和回收原理JVM **运行时内存**1.**新生代**2.**老年代**3.**永久代**4.JAVA8与元数据# JVM 基础学习 第一节JVM简介java虚拟机平台上运行非Java语言编写的程序java源代原创 2021-11-28 19:35:31 · 972 阅读 · 0 评论 -
java基础学习新手之面向对象3
1.构造器1.1构造器的特征它具有与类相同的名称它不声明返回值类型。(与声明为void不同)不能被static、final、synchronized、abstract、native修饰,不能有return语句返回值1.2构造器的作用:创建对象;给对象进行初始化1.3根据参数不同,构造器可以分为如下两类:隐式无参构造器(系统默认提供)显式定义一个或多个构造器(无参、有参)注意:Java语言中,每个类都至少有一个构造器默认构造器的修饰符与所属类的修饰符一致一旦显式定义了构造器,则系统不原创 2021-08-06 20:36:04 · 104 阅读 · 0 评论 -
java基础学习新手之面向对象2
1.方法的重载①“两同一不同”:同一个类。相同方法名参数列表不同(顺序不同,个数不同),参数类型不同②判断是否是重载?跟方法的权限修饰符、返回值类型、形参变量名、方法体都没有关系练习/* 1.编写程序,定义三个重载方法并调用。方法名为mOL。 三个方法分别接收一个int参数、两个int参数、一个字符串参数。分别 执行平方运算并输出结果,相乘并输出结果,输出字符串信息。 在主类的main ()方法中分别用参数区别调用三个方法。 2.定义三个重载方法max(),第一个方法求两个int原创 2021-08-06 10:48:05 · 135 阅读 · 0 评论 -
数组中常见的排序算法及相关重要知识
数组中常见的排序算法及相关重要知识1.排序算法的介绍1.1什么是排序排序:假设含有n个记录的序列为{R1,R2,…,Rn},其相应的关键字序列为{K1,K2,…,Kn}。将这些记录重新排序为{Ri1,Ri2,…,Rin},使得相应的关键字值满足条Ki1<=Ki2<=…<=Kin,这样的一种操作称为排序。 通常来说,排序的目的是快速查找。1.2衡量排序算法的优劣:1.时间复杂度:分析关键字的比较次数和记录的移动次数2.空间复杂度:分析排序算法中需要多少辅助内存3.稳定性原创 2021-07-27 00:01:29 · 224 阅读 · 0 评论 -
JVM 内存分配和垃圾回收机制 第二节
JVM内存分配和垃圾回收机制JVM **运行时内存**1.新生代2.老年代3.永久代4.JAVA8与元数据垃圾回收1.如何判断对象可以回收1.1 引用计数法1.2可达性分析算法四种引用2.垃圾回收算法2.1标记清除2.2 标记整理2.3 复制3.分代垃圾回收3.1相关VM参数4.垃圾回收器4.4G15.JVM有哪些垃圾回收算法?6.JVM有哪些垃圾回收器?7.详细介绍一下CMS垃圾回收器?8.简述分代垃圾回收器是怎么工作的?9.说一下JVM的调优工具?10.常用的JVM调优的参数有哪些?11.永久代和元空间原创 2021-11-29 20:44:59 · 750 阅读 · 0 评论 -
Lamada表达式 Java8新特性详解
Lamada表达式 Java8新特性详解Lamada表达式 Java8新特性详解1.介绍1.1什么是lamada表达式1.2语法格式2.相关注意事项2.1匿名内部类的注意事项2.2省略注意3.常用的接口使用lambda表达式4.手写一个接口Inner1来实现lamda表达式5.代码示例Lamada表达式 Java8新特性详解1.介绍1.1什么是lamada表达式lambda表达式代替了匿名内部类的写法, Java8之后的新特性参数、返回值类型和要实现的接口的方法参数、返回值类型对应,语句表达原创 2021-12-02 18:22:40 · 1108 阅读 · 0 评论 -
Java 枚举类、时间类型、UDP、操作流
Java 枚举类1.什么是枚举类比较特殊的类 * 定义方式: * enum 名称{} * 不能直接new对象 * 常量 类型就是枚举类型 * java.lang.Enum{} * jdk1.5之后才有的类2.枚举类和普通类的区别: 1.普通类的对象是使用的时候使用new关键字创建 * 2.枚举类的对象自己在类中已经定义好的,只能使用这几个对象,不能自己创建 枚举类的注意点: * 1.构造方法只能使用默认和private,枚举类型中的构造方法,仅限在本原创 2021-10-25 00:04:01 · 270 阅读 · 0 评论 -
Java 集合和泛型
java 集 合Collection: 集合的接口,存储数据的一种方式 可以存储任意类型的数据 不能存基本类型,会自动转为包装类 提供了操作数据的方法:增删改查Collections: 集合的工具类(所有方法均是操作Collection) 定义集合中操作数据的相关方法 List: 有序且可重复的(调用对象的equals方法进行比较) ArrayList:增删慢,查询快(底层用数组实现) LinkedList:增删快,查询慢(链表实现) Vecto原创 2021-10-15 16:31:59 · 198 阅读 · 0 评论 -
java基础新手学习之面向对象
java基础新手学习之面向对象面向对象作为java的核心知识,需要重点需要,注重细节1.类的访问机制:在一个类中的访问机制: 类中的方法可以直接访问类中的成员变量。 (例外:static方法访问非static,编译不通过。)在不同类中的访问机制:先创建要访问类的对象,再用对象访问类中定义的成员。2.内存解析堆(Heap),此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配内存。这一点在Java虚拟机规范中的描述是:所有的对象实例以及数组都要在堆上分配。栈(Stack),通常来原创 2021-07-28 00:59:03 · 147 阅读 · 0 评论 -
Java 网络编程
Java 网络编程1.两种常见的网络协议TCP :TCP(英语:Transmission Control Protocol,传输控制协议) 是一种面向连接的、可靠的、基于字节流的传输层通信协议,TCP 层是位于 IP 层之上,应用层之下的中间层。TCP 保障了两个应用程序之间的可靠通信。通常用于互联网协议,被称 TCP / IP。**UDP ** : UDP (英语:User Datagram Protocol,用户数据报协议),位于 OSI 模型的传输层。一个无连接的协议。提供了应用程序之原创 2021-10-15 16:45:16 · 123 阅读 · 0 评论 -
java IO流
java IO流字节流InputStream/OutputStream(抽象类)文件流: FileInputStream: read() 文件输入流,将文件中的内容读取到程序中 FileOutputStream: write() 文件输出流,将程序中的内容写到文件中缓冲流: 在内存中开辟一段缓冲区,减少对硬盘的操作,提高效率 缓冲区中的内容由系统自动刷新,当缓冲取满了之后,将缓冲区的内容一次性写入到文件中 Bff原创 2021-10-15 16:27:16 · 112 阅读 · 0 评论 -
Java 数组和语法
java 数组:一维数组定义数组:多个相同类型的数据的组合数组的定义: 类型[] 数组名;例: int[] arr;一维数组的赋值:1、声明数组,同时赋值 类型[] 数组名 = {值1,值2,值3};2、声明数组 赋值 类型[] 数组名 = new 类型[]{值1,值2};3、声明数组,给定数组长度 类型[] 数组名 = new 类型[5]; 通过下标给数组赋值: arr[0] = 5; arr[1] =7; ...数组的默认值:整数的默认值为0 (原创 2021-10-15 16:43:23 · 148 阅读 · 0 评论 -
Java 反射
Java 反射1.什么是反射反射:根据类对象,获取类中的成员2.获取类对象的方式例如: * 快捷键Ctrl + 1 * 在程序执行之前,需要将类对象存入到方法区 * 先将.class文件转为类对象存入到方法区 * * 获取类对象的方式: * 1.类名.class * ImageIO.read(类名.class.getResourceAsStream("图片的路径")) * 类对象在内存中每个类只能有一个 * 2.Class.forName("原创 2021-10-18 18:12:26 · 104 阅读 · 0 评论 -
Java 基础语法
java JDK的安装和配置:1、安装JDK:我的博客JDK安装文档网址1、免安装 需要识别的就是该目录下bin中的可执行文件 javac java2、需要安装 为了生成JDK中的可执行文件 配置环境变量: 2、环境变量配置:1、JAVA_HOME JDK的安装路径 jdk文件包bin的上一级路径 例如:D:\Program Files\Java\jdk1.8.0_2012、CLASSPATH 类路径 .:当前路径下查找对应的类文件3、原创 2021-10-15 16:42:12 · 125 阅读 · 0 评论 -
Java 面向对象
Java*面向对象*所有事物以类的形式存在,使用也是以类的形式使用Java是面向对象的语言1、面向过程编程: 1、打开冰箱门方法 2、把大象装进冰箱的方法 3、关闭冰箱门 在main方法中依次调用该3方法 面向过程,是一种自顶向下的编程主要体现功能(被动的)2、面向对象编程: 冰箱对象: 1、打开冰箱门 2、关闭冰箱门 大象对象: 1、走进冰箱方法 在main方法中: 1、先创建两个对象 面向对象,是将事物高度抽象化,面向对象必须先建立抽象模型,之后直原创 2021-10-15 16:35:46 · 185 阅读 · 0 评论 -
Java XML
Java XML1.什么是XML?XML 是标记语言:可扩展标记语言2.作用作用: 1.网络间传输数据的格式 json 2.用于存储数据 3.配置文件使用3.内容 1.声明: <?xml Version = "1.0" enconding = "编码" stanrdalne = "表示该文件是否为独立文件"?> <!-- 只能有一个根标签 --> <root> <!-- 员工信息dom4j https:原创 2021-10-17 19:24:41 · 214 阅读 · 0 评论 -
Java 文件类
java 文 件 类(File)File类:创建和删除文件,不能操作文件内容File(文件):文件夹/文件(.txt、.ext、压缩包、安装包)File file = new File(地址);file.length():文件大小(B、KB、MB、GB、TB、PB)exists判断文件是否存在getPath():获取文件的相对路劲getAbsolutePath():获取文件的绝对路劲lastModified():获取最后一次修改文件的毫秒值createNewFile():创建文件mkdi原创 2021-10-15 16:29:21 · 1321 阅读 · 0 评论 -
java 正则表达式、日期、异常
java 正则表达式正则表达式: 就是一种字符串的匹配规则[xyz]:等于其中之一[0-9]:等于0-9其中之一[a-z][A-Z]\d:等价于[0-9]\D:不等价于[0-9](非数字类)\w:等价于[0-9a-zA-Z_]\W:不等价于[0-9a-zA-Z_](非字符)\s:空白(回车、换行、制表符)\S:非空白() :分组{} :范围+:[1-无穷)*:[0-无穷){n}:有n个 \d{n}:有n个0-9的数字{m,n}:有m到n个 \d{6,10}:有6-1原创 2021-10-15 16:39:41 · 925 阅读 · 0 评论 -
Java 多线程
Java 多线程1.创建多线程的三种方式线程任务的获取方式: \* 1、继承Thread 重写run \* Thread t = new 继承类() \* t.start() \* 2、实现Runnable 重写run方法 \* Runnable r = new Runnable() \* Thread t = new Thread(r); \* t.start() \* 3、实现Callable 重写call方法 可以有返回值 \*原创 2021-10-14 10:42:16 · 165 阅读 · 0 评论 -
数据结构 队列详解和代码演示
数据结构 队列和链表详解和代码演示1.队列常用数据结构之一,队列是一个有序列表,可以用数组或是链表来实现遵循先进先出的原则,双端队列可以两头进和两头出,现在的栈,便是使用双端队列Deque来实现原创 2021-12-05 12:00:00 · 795 阅读 · 0 评论 -
Java 第二个模块 集合面试题
集合重要面试题1.java 容器都有哪些?2.Collection 和 Collections 有什么区别?3.List、Set、Map 之间的区别是什么?4.HashMap 和 Hashtable 有什么区别?5.如何决定使用 HashMap 还是 TreeMap?6.说一下 HashMap 的实现原理?7. 说一下 HashSet 的实现原理?8.ArrayList 和 LinkedList 的区别是什么?9.如何实现数组和 List 之间的转换?10.ArrayList 和 Vector 的区别是什么原创 2021-12-03 09:54:56 · 1553 阅读 · 0 评论 -
稀疏数组 详解和代码演示
稀疏数组详解1.基本介绍1.1需求介绍1.2效果展示1.2.1二维数组1.2.2转化为稀疏数组:2.数组转稀疏数组互相转换的详解思路2.1二维数组转稀疏数组2.2稀疏数组转化为原始数组3.代码实现3.1.相关代码3.2结果展示1.基本介绍1.1需求介绍编写的五子棋程序中,有存盘退出和续上盘功能该二维数组有很多值默认值为0,记录了许多没有意义的数据稀疏数组使存储的占用空间大大减小,它记录数组一共有几行几列,有多少个不同的值第一行的第一个元素是表示多少行,第一行的第二个元素表示多少列,第一行的第原创 2021-11-30 19:06:21 · 360 阅读 · 0 评论