![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
文章平均质量分 72
weixin_46157889
这个作者很懒,什么都没留下…
展开
-
Tomcat目录结构
打开Tomcat,我们可以看到一个这样的目录结构bin目录bin目录主要是用来存放tomcat的命令,主要有两大类,一类是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命令)。很多环境变量的设置都在此处,例如可以设置JDK路径、tomcat路径startup 用来启动tomcatshutdown 用来关闭tomcat修改catalina可以设置tomcat的内存confconf目录主要是用来存放tomcat的一些配置文件。server.xml可以设置端口号、原创 2021-10-14 21:09:43 · 91 阅读 · 0 评论 -
事务&事务级别
事务&事务级别事务的定义事务级别读未提交(READ_UNCOMMITTED)读已提交(READ_COMMITTED)可重复读(REPEATABLE_READ)扩展事务的定义事务是访问并可能更新数据库中各种数据项的一个程序执行单元(unit),指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功。begin;insert into grade values(5,‘bb’)这里添加的数据还有没有提交,所以数据库中未有这条数据commit 执行完这句之后才会提交到数据库原创 2021-07-19 17:12:03 · 212 阅读 · 0 评论 -
线程安全和不安全&加锁
线程安全和不安全&加锁一、线程不安全的表现二、线程安全三、加锁的方法同步代码同步方法显示锁 Lock 子类 ReentrantLock一、线程不安全的表现多个线程同时争抢一个数据(资源),容易发生线程不安全,例如下面卖票的例子,总三个线程相当于三个售票窗口,三个线程同时操作一个变量package com.xiancheng;public class test5 { /* * 创建一个任务,创建三个线程,每个线程传入相同的任务 * */ public s原创 2021-07-19 08:37:34 · 236 阅读 · 0 评论 -
BigDecimal的使用
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码原创 2021-07-18 10:07:02 · 47 阅读 · 0 评论 -
带你认识JSON
带你认识JSON什么是JSON简单分析JSON和XML和java和js存储数据的区别JSON的语法规则java与JSONGsonFastJson什么是JSONJSON(JavaScript Object Notation),JS对象简谱 , 是一种轻量级的数据交换格式.1、JSON 的名称中虽然带有JavaScript,这是指其语法规则是参考JavaScript对象的,而不是指只能用于JavaScript 语言。2、因为JSON本身就是参考JavaScript 对象的规则定义的,其语法与JavaSc原创 2021-04-28 16:12:39 · 214 阅读 · 0 评论 -
多线程通信问题--生产者与消费者
多线程通信问题–生产者与消费者下面以厨师和服务员和上菜这件事为例(默认只有一个厨师一个服务生,一个装菜的盘子)先上代码感受一下多线程通信会出现的问题:package com.xiancheng;public class testxiaosheng { public static void main(String[] args) { Food f = new Food(); new Cook(f).start(); new Waiter(f).原创 2021-04-23 15:25:48 · 70 阅读 · 0 评论 -
实现多线程的三种方式
实现多线程的三种方式1、继承Thread2、实现Runnable接口3、带返回值的线程Callable1、继承Thread先上代码://实现多线程/** Thread实现多线程* 子线程任务调用的方法都是在子线程中执行* 每个线程都有自己的栈空间,共用一份堆内存** */public class test1 { public static void main(String[] args) { MyThread m = new MyThread();原创 2021-04-23 14:47:50 · 277 阅读 · 0 评论 -
ListIterator迭代器以及cursor,lastRet游标
ListIterator迭代器前言迭代器迭代的定义:常用方法具体实例讲解迭代器实现的过程(一)(二)(三)(四)(五)前言在程序开发中,经常需要遍历集合中的所有元素。针对这种需求,JDK专门提供了一个接口java.util.Iterator 。 Iterator 接口也是Java集合中的一员,但它与 Collection 、 Map 接口有所不同, Collection 接口与 Map 接口主要用于存储元素,而 Iterator 主要用于迭代访问(即遍历)。Collection 中的元素,因此 Iter原创 2021-03-10 21:15:38 · 1582 阅读 · 2 评论 -
java-面试题:多态的运用
通过代码实例来了解多态的运用示例1:简单的感受一下多态示例2:测试一下示例1:简单的感受一下多态public class demo{ public static void main(String[] args){ Student s = new Student(); chuandi(s); //输出ssss Teacher t = new Teacher(); chuandi(t); //输出ttt原创 2021-03-09 11:59:57 · 82 阅读 · 0 评论 -
ArrayList实现扩容的具体过程
ArrayList是如何实现动态扩容的文章目录ArrayList是如何实现动态扩容的前言一、我们先通过了解一下ArrayList的构造方法二、走进原码三、注意&总结前言我们都知道ArrayList是基于动态数组的实现,当需要的长度大于自身最大的容量的时候,能自己扩容。那么它是怎么扩容的呢?每次扩容多少呢?还有初始的长度是多少呢?一、我们先通过了解一下ArrayList的构造方法从图中我们可以看到ArrayList有三个构造方法。一个无参构造方法,一个传入一个int型的构造方法,另原创 2021-03-09 01:37:27 · 3255 阅读 · 0 评论 -
java基础-Scanner接收用户输入
java接收用户输入(Scanner)Scanner是JDK 1.5新增的一个类,可以使用该类创建一个对象,对象再调用下列方法,读取用户在输入行中输入的各种基本类型的数据。nextBoolean(),nextByte(),nextShort(),nextInt(),nextLong(),nextFloat(),nextDouble(),下面举个例子import java.util.Scanner;public class qiqi{ public static void main (Strin原创 2021-02-15 00:20:17 · 396 阅读 · 0 评论 -
java环境搭建
java环境搭建&浅谈环境变量下载jdk1.点击javaSE下载2.选择想要的版本,点击JDK下载3.安装搭建环境1.win7和win10的操作过程win7详细介绍可选部分:2. 测试什么是环境变量下载jdkjdk下载链接: 点击下载过程如下:1.点击javaSE下载2.选择想要的版本,点击JDK下载会显示多个版本的jdk,这里以Java SE 11为例,点击下载,然后选中符合自己操作系统的版本进行下载。3.安装下载后得到这样的应用程序(按流程安装就行)注意下载完jdk后安原创 2021-02-14 18:24:44 · 234 阅读 · 0 评论 -
数组基本格式
数组一维数组的基本格式格式1格式2格式3格式4二维数组格式一维数组的基本格式格式1数据类型[] 数组名称 = new 数据类型[数组长度]; 表明了长度,分配了空间int[] args = new int[10]; 表明创建了数组长度为10,名为args的整形数组,其中数组中的每个值默认为0格式2数据类型[] 数组名称 = {数组内容 1,数组内容 2,数组内容 3…数组内容 n}; 表明了长度和内容。int[] kk = {2,3,4,1,4,5}; 表明数组长度为6,并且给每个数组下原创 2021-02-15 11:57:58 · 4749 阅读 · 0 评论