
JAVASE
JAVASE学习笔记
EkuinoxPrime
这个作者很懒,什么都没留下…
展开
-
Mybatis SQL映射文件详解
Mybatis SQL映射文件详解1、insert、update、delete元素2、select元素1、select的参数传递2、参数的取值方式3、处理集合返回结果—resultType4、自定义结果集---resultMap5、联合查询6、获取集合元素7、分步查询8、延迟查询3、动态sql1、if & trim2、foreach3、choose4、set4、缓存1、一级缓存的使用2、二级缓存1、缓存的使用2、缓存的属性3、整合第三方缓存 在Mybatis的介绍和基本使用学习了mybatis原创 2020-10-23 23:17:05 · 480 阅读 · 0 评论 -
Java SPI机制详解
Java SPI机制详解1、什么是SPI?2、SPI的用途Driver实现Mysql DriverManager实现Java SPI机制详解1、什么是SPI?2、SPI的用途Driver实现Mysql DriverManager实现1、什么是SPI?SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制。SPI是一种动态替换发现的机制, 比如有个接口,想运行时动态的给它添加实现,你只需要添加一个实现。我们经常遇到的就是java.sql.Driver原创 2020-10-10 15:24:53 · 516 阅读 · 0 评论 -
在项目中引入spring及ioc功能的基本使用
1、spring_helloworld使用手动加载jar包的方式实现,分为三个步骤,虽然现在已很少使用这种方式,但也为最基本的方式导包:导入这五个包即可commons-logging-1.2.jarspring-beans-5.2.3.RELEASE.jarspring-context-5.2.3.RELEASE.jarspring-core-5.2.3.RELEASE.jarspring-expression-5.2.3.RELEASE.jar写bean对象Person.原创 2020-08-26 21:42:04 · 375 阅读 · 0 评论 -
java 数据库连接池之Druid与HikariCP使用
Druid导入jar包在项目中导入druid-1.1.9.jar即可使用Druid,jar包在github上下载即可配置druid.properties#驱动名称#driverClassName=com.mysql.jdbc.Driver#urlurl=jdbc:mysql://localhost:3306/demo#用户名username=root#密码password=123456#配置初始化大小、最小、最大initialSize=5minIdle=10maxActive原创 2020-07-11 00:32:27 · 641 阅读 · 0 评论 -
java 数据库连接池之dbcp与c3p0使用
DBCP导入jar包使用dbcp需要导入以下jar包,版本可以不同,在Apache Commons官网下载即可commons-dbcp2-2.7.0.jarcommons-pool2-2.3.jarcommons-logging-1.2.jardbcp的使用设置DataSourcepackage com.mypackage.pool.dbcp;import org.apache.commons.dbcp2.BasicDataSource;import javax.sql.DataSo原创 2020-07-10 02:25:27 · 190 阅读 · 0 评论 -
Java 使用apacheDBUtil简化JDBC的数据表与数据封装对象的相互转化
Oracle的Apache软件基金会提供了commons.dbutils-1.7.jar等不同版本的jar包,封装了数据库的的存取操作,方便了我们对数据库数据和类对象的相互转换,在项目中导入该jar包即可简化数据库的增删改查操作获取连接的封装类package com.mypackage.util;import java.sql.*;public class MySQLDBUtil { public static final String URL = "jdbc:mysql://loca原创 2020-07-10 01:32:06 · 166 阅读 · 0 评论 -
Java 反射API的简介及使用
Java提供了反射技术,使我们可以通过类的全名创建对象,利用反射机制,我们可以在运行时再确定对象类型,从而对不同对象进行分别处理,多少无意,看代码Class对象的获取通常jvm在程序运行时会为每个类自动加载一个Class对象,通常我们创建对象和对对象里的函数进行使用或操作时都是JVM通过这个Class对象来完成我们对一个类或对象的相应操作,而一般有三种方式获取该Class对象public class CreateClassObject { public static void main(Str原创 2020-07-09 01:14:14 · 456 阅读 · 0 评论 -
java JDBC使用简易教程
java中提供了一套标准接口,数据库厂商来进行实现,包含实现子类的jar文件一般情况下存放在数据库的安装目录下,使用时需在工程中导入相应jar包以Oracle为例,数据库连接的代码如下import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;//如果需要建立连接,java中提供了一套标准,数据库厂商来进行实现,包含实现子类的jar文件一原创 2020-07-09 00:20:29 · 190 阅读 · 1 评论 -
Java 注解与自定义注解
注解的定义Annontation是Java5开始引入的新特征,中文名称叨注解。它提供了一种安全的类似注释的机制,用来将任何的信息戒元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且供指定的工具戒框架使用。Annontation像一种修饰符一样,应用于包、类型、构造方法、方法、成员变量、参数及本地变量的声明语句中。Java注解是附加在代码中的一些元信息,用于一些工具在编译、运原创 2020-06-21 03:26:32 · 139 阅读 · 0 评论 -
Java jdk新特性:Stream API
什么是StreamStream是jdk提供的一个接口,在java.util.stream包下,该接口继承自BaseStream<T, Stream>BaseStream有出来Stream子接口还有DoubleStream,IntStream,LongStream子接口作为 Java8 API 的新成员,Stream API “允许以声明式的方式处理数据集合”。简单来说就是jdk提供的一种新的对集合进行操作的方式。可以简化for循环和简单编写更简便的编写并行程序Stream特性Strea原创 2020-06-21 01:55:13 · 152 阅读 · 0 评论 -
Java Lambda表达式的使用及内部实现
Lambda表达式介绍Lambda表达式是Java8中添加的新功能。使用Lambda表达式可以替代只有一个抽象函数接口实现,告别匿名内部类,代码看起来更简洁。Lambda表达式同时还提升了对集合、框架的迭代、遍历、过滤数据的操作。函数式接口只有一个抽象方法的接口称为函数式接口,在使用该类接口时可以用lambda表达式对该类接口的实现进行简化案例//注解,可自定义@FunctionalInterfacepublic interface InterfaceTest{ public void原创 2020-06-14 21:55:50 · 398 阅读 · 0 评论 -
Java之 TCP与UDP网络编程
InetAddressInetAddress为处理网络所用到的类,位于java.net.InerAddress包下,直接子类有Inet4Address和Inet6Address,分别用于处理ipv4网络和ipv6网络使用案例:import java.net.InetAddress;import java.net.UnknownHostException;public class InetAddressDemo { public static void main(String[] args原创 2020-06-09 23:41:18 · 193 阅读 · 0 评论 -
Java 多线程之旅3-线程池
线程池使用线程池的好处可以重复利用已有线程处理任务,避免销毁和重新创建的开销充分利用系统资源,提高响应速度线程池分类下面通过代码来看看各个java提供的线程池的用法先创建一个实现Runnable接口的类public class Task implements Runnable { @Override public void run() {// try {// Thread.sleep(1000);// } catch原创 2020-06-04 23:25:32 · 221 阅读 · 0 评论 -
Java 多线程之旅2-线程同步
上篇初步介绍了多线程的使用:Java 多线程之旅1-初探本篇将介绍多线程的线程同步等问题线程同步我们先看一下下面的案例无锁案例://无锁案例--------------------------------public class TicketThread extends Thread{ private static int ticket = 5;//声明为static每个对象共享同一变量 @Override public void run() { fo原创 2020-06-03 21:23:18 · 243 阅读 · 1 评论 -
Java 多线程之旅1-多线程线程使用
线程基础程序、进程与线程程序程序是一组指令的集合进程进程是程序的以此静态态执行的过程,占用特点的地址空间每个进程都是独立的,是资源分配的最小单位占用一定的cpu资源和内存空间。进程的创建需要系统分配额外的cpu资源和内存空间,销毁时系统将回收为其分配的内存空间进程间的通信需要建立额外的通信机制(如:管道、消息队列、系统信号),而且不同进程间的切换还会触发CPU中断程序保存进程的CPU执行状态来切换到其他进程的执行,而后再切换回来时将从内存中恢复上一次的执行的CPU状态进而继续执行线原创 2020-06-01 00:18:35 · 190 阅读 · 0 评论 -
Java IO之BIO使用随手记
File类File类在java.io.File中,提供对文件的相关操作File file = new File("src/abc.txt");//创建File对象,传入路径,默认路径为当前文件夹下的文件try{ file.createNewFile();//创建文件}catch(IOException e){ e.printStackTrace();}file.canExecute();//判断是否可执行file.canRead();//是否可读file.canWrite();//是否原创 2020-05-29 00:00:55 · 206 阅读 · 0 评论 -
Java学习笔记之泛型
泛型当一个集合需要规定存储元素类类型时可以使用泛型优点:(1). 数据安全(2).获取数据时效率比较高需要在创建对象时传入指定类型List<String> List = new ArrayList<String>();//传入String类型list.add("abc");list.add(true.toString());泛型的高阶使用方法定义泛型类(1). 在定义类的时候,类名后面可以添加<E,K,V>等进行占位,类中方法的返回类型或参数原创 2020-05-22 23:28:24 · 183 阅读 · 0 评论 -
Java容器之Collection、List、Map等集合
容器的概念如果并不知道程序运行时会需要多少对象,或者需要更复杂的方式存储对象,可以使用Java集合框架Java集合框架包含的内容容器APICollection接口Collection接口常用方法1.Collection子类可以存储不同类型的数据2.默认长度是10,容量不够时将自动扩容1.5倍public class CollectionDemo{ public static void main(String[] args){ Collection collection = new原创 2020-05-21 23:44:23 · 270 阅读 · 0 评论 -
Java之常用类简介及使用方法
可变字符串 StringBuffer stra = new StringBuffer(); StringBuffer strb = new StringBuffer("abc"); strb.append(1).append("def").append(true);//转换为字符串后进行拼接StringBuffer:线程安全,效率低StringBuilder:线程不安全,效率高时间处理相关类Date date = new Date();System.out.println(date);原创 2020-05-19 00:13:04 · 269 阅读 · 1 评论 -
Java之异常处理
异常处理在可能运行时出现错误或bug的代码块应该用try代码块括起来try{ Scanner in = new Scanner(System.in); int num1 = in.nextInt(); int num2 = in.nextInt(); System.out.println(String.format("%d/%d=%d",num1,num2,num1/num2));}catch(ArithmeticException e){ //除以零等数学错误将会被这个catch捕获,并原创 2020-05-17 20:41:35 · 213 阅读 · 0 评论 -
Java内部类及使用方法
Java内部类及使用方法把一个类定义在另外一个类的内部称为内部类内部类和外部类的中的成员变量相互访问匿名内部类静态内部类方法内部类把一个类定义在另外一个类的内部称为内部类可以把内部类看为外部类的一个引用类型的成员变量而引用类型的成员变量在使用时必须先用new分配空间所以内部类只是在外部类下的一个声明和定义,而未分配空间无论在外部类的内部使用内部类还是外部类之外使用内部类都必须先new内部类可以方便的访问外部类的私有属性class Outer{ private String info = "原创 2020-05-16 21:51:25 · 376 阅读 · 0 评论 -
java接口interface
接口可以包含多个方法,且不可接口中实现只能声明实现接口的类用implement关键字来实现接口类implement了一个接口必须实现接口中的所有方法实现多个接口用逗号分隔即使不用public修饰接口中的方法默认也是public接口中的变量默认用public static final修饰,所以接口中定义的变量就是静态常亮可以定义一个新接口去extends一个或多个已有的接口,而类则只允许一个接口继承接口后也不可以进行实现抽象类也可以implement一个接口去实现接口中的方..原创 2020-05-13 01:40:43 · 288 阅读 · 0 评论 -
Java面向对象知识小抄
局部变量 在方法体内声明的变量以及方法体传入的形参都是局部变量,离开方法体后作用范围便失效,在方法体外部无法进行访问,且对局部变量做出的任何修改不会影响到调用方法体时传入的实参上成员变量、函数 1. 在类内声明的变量或函数为成员变量、函数 成员变量和函数可以用public、protected、private关键字进行修饰 不进行修饰则默认权限为default,外部对类内成员变量或函数的访问权限由public、protected、default、priva...原创 2020-05-12 11:21:07 · 209 阅读 · 0 评论 -
Java数据类型
Java是一种强类型的语言 强类型语言:变量定义时必须显示声明数据类型 java 弱类型语言:变量会自己选择数据类型,无需指定 pythonJava数据类型 基本数据类型(4类8种) 整数类型:byte short int long byte:使用1个字节(8位/8bit=1byte)存储,因此范围是 -2^...原创 2020-05-03 01:27:43 · 163 阅读 · 0 评论 -
JDK12的安装搭建及第一个java程序
一、JDK下载 1、JDK官网下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html 2、选择:“Accept License Agreement” 3、下载的文件:jdk-12.0.1_windows-x64_bin.exe二、JDK安装 1、点...原创 2020-05-03 00:45:24 · 239 阅读 · 0 评论