
Java
文章平均质量分 69
难平是人心
这个作者很懒,什么都没留下…
展开
-
MyBatis
搭建MyBatis添加依赖包<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.6</version></dependency><dependency> <groupId>mysql</groupId> <artifactI原创 2021-01-26 22:46:56 · 222 阅读 · 0 评论 -
Spring
Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。spring 特点spring的核心模块spring中的IOCIOC( Inverse of Control)控制反转。是降低对象之间的耦合关系的设计思想。DI(Depen原创 2020-11-21 15:49:34 · 298 阅读 · 0 评论 -
JavaWeb-Cookie
什么是会话跟踪技术会话跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。保持对用户会话期间的数据管理。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份。Session通过在服务器端记录信息确定用户身份。什么是CookieCookie是客户端(一般指浏览器)请求服务器后,服务器发给客户端的一个辨认标识,保存在客户端,当客户端再次向服务器发送请求时,会携带着这个辨认标识,服务器就可以通过这个标识来识别客户端的身份或状态等。Cookie的作用:跟踪会原创 2020-10-24 19:57:24 · 264 阅读 · 0 评论 -
Java-JDBC
Java DataBase Connectivity Java数据库连接JDBC 是一套标准,是Java与个大数据库厂商共同制定的一套接口,这套接口由个大数据库厂商进行了实现。1. 导入Jar包2. 连接数据库流程public class Demo1 { public static void createTable() throws ClassNotFoundException, SQLException { //1.加载数据库驱动(可以省略,但是在JavaEE的Web项目中原创 2020-10-22 22:41:32 · 119 阅读 · 0 评论 -
JavaWeb-Servlet
Servlet(Servlet Applet),全程Java Servlet。是java编写的服务器端程序,主要功能是在交互式地浏览和修改数据,生成动态web内容。工作模式:客户端发送至服务器。服务器启动并调用Servlet,Servlet根据用户客户端生成响应内容并传给服务器。服务器响应返回客户端。配置映射关系<servlet><servlet-name>自定义名称</servlet-name><servlet-class>处理请求的类的原创 2020-10-22 16:55:05 · 320 阅读 · 0 评论 -
Java-反射
反射中的构造方法通过private修饰的无参构造方法创建对象public class Demo1 { public static void main(String[] args) throws ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException { //1.加载类 Class&原创 2020-09-24 00:08:43 · 126 阅读 · 0 评论 -
Java-XML和JSON
XML解析解析本地XML文件示例public class Demo1 { public static void main(String[] args) throws IOException, DocumentException { //1.获取输入流 FileInputStream is = new FileInputStream("绝对路径"); //2. 创建XML读取对象 SAXReader sr = new SAXReader();原创 2020-09-21 14:54:15 · 183 阅读 · 0 评论 -
Java-多线程
进程是指内存中运行的引用程序,没个进程都有一个独立的内存空间。线程是进程中的一个执行路径,共享一个内存空间,线程之间可以自己切换,并发执行,一个进程最少有一个线程。线程实际上是在进程基础上的进一步的划分,一个进程启动以后,里面的若干执行路径又可以划分为若干个线程。线程调度分时调度所有县城轮流使用CPU的使用权,平均分配每个线程占用CPU的时间。抢占式调度优先让优先级高的线程使用CPU,如果线程的优先级相同,那么会随机选择一个(线程随机性)java的使用为抢占式调度。多线程并原创 2020-09-18 19:09:02 · 141 阅读 · 0 评论 -
Java-IO
I:input O: outputFile文件遍历、添加或删除import java.io.File;import java.io.IOException;public class Demo1 { public static void main(String[] args) throws IOException { File e = new File("C:\\Users\\Administrator\\Desktop\\Test"); File[] f原创 2020-09-17 10:31:01 · 140 阅读 · 0 评论 -
Java-集合
常见的数据结构数据存储的常用结构有:栈、队列、数组、链表和二叉树栈: 又称堆栈(stack),是限定只能在表底插入和删除的线性表。把允许插入和删除的一段成为栈顶,另一端为栈底。先进后出这里两个名词需要注意:压栈:存元素。弹栈:取元素队列: queue简称队,队列是一种特殊的线性表,是运算受到限制的一种线性表,只允许在表的一端进行插入,而在另一端进行删除元素的线性表。先进先出数组类集Java对于数据结构成熟的实现集合和数组的区别数组的长度是固定的,集合的长度是可变的。数组中存储原创 2020-09-16 03:37:48 · 157 阅读 · 0 评论 -
Java-String
任何字符串都是String类的对象,字符串是不变的,它们的值在创建后无法更改在字符串的内部,是用一串字符char[]来存储的。因为数组一经确定长度无法更改,所以字符串一经创建就无法更改。如果两个字符串内容相同,则他俩使用同一个内存地址,所以可以共享它们public class Demo2 { public static void main(String[] args) { String s1 = "123"; String s2 = "123"; St原创 2020-09-07 21:22:44 · 1889 阅读 · 2 评论 -
Java-System
System类包含几个有用的类字段和方法。 它无法实例化。 System类提供的设施包括标准输入,标准输出和错误输出流; 访问外部定义的属性和环境变量; 加载文件和库的方法; 以及用于快速复制阵列的一部分的实用方法。1. 字段static PrintStream err “标准”错误输出流。static InputStream in “标准”输入流。static PrintStream out “标准”输出流。2. System类常用方法1. static long currentTimeMil原创 2020-09-07 11:04:42 · 177 阅读 · 0 评论 -
Java-日期
Java SE 11& JDK 11 API1.DateDate类表示特定的时刻,精度为毫秒。在JDK 1.1之前, Date类还有两个附加功能。 它允许将日期解释为年,月,日,小时,分钟和秒值。 它还允许格式化和解析日期字符串。 不幸的是,这些功能的API不适合国际化。 从JDK 1.1开始, Calendar类应该用于在日期和时间字段之间进行转换,而DateFormat类应该用于格式化和解析日期字符串。 不推荐使用Date中的相应方法。构造方法1.Date()分配 Date对象并对其原创 2020-09-06 20:53:57 · 253 阅读 · 0 评论 -
Java-BigDecimal
由于使用float和double计算时会出现精度误差,此时需要用到BigDecimal类进行运算Java SE 11& JDK 11 API常用工具类1.abs()返还此Bigdecimal类型的绝对值。2.add(BigDecimal augend)返还此BigDecimal的值与另一个BigDecimal值的和。3.subtract(BigDecimal subtrahend)返还此BigDecimal的值与另一个BigDecimal值的差。4.multiply(BigDe原创 2020-09-06 19:45:54 · 227 阅读 · 0 评论 -
Java-Arrays
Java SE 11& JDK 11 API常用工具类1. binarySearch(byte[] a, byte key)返还目标元素在数组中的索引位置2.copyOf(boolean[] original, int newLength)返还一个指定长度的数组,其中包含原数组3.copyOfRange将原数组指定范围的元素复制到新数组中4.fill(boolean[] a, boolean val)将指定值赋予给指定数组中的所有元素5.sort(byte[] a)将指原创 2020-09-06 19:05:24 · 158 阅读 · 0 评论 -
Java-Math
类Math包含用于执行基本数字运算的方法,例如基本指数,对数,平方根和三角函数。Java SE 11& JDK 11 APIMath中的常用工具类1. abs(double a) (float、int、long同理)返回 double值的绝对值。2.floor(double a)返还小于或等于参数的double类型整值 。3.ceil(double a)返还大于或等于参数的double类型整值 。4.log(double a)返回自然对数(基数 e )。5.log10(原创 2020-09-06 18:35:49 · 206 阅读 · 0 评论 -
Java-Objects
常用工具类1.static int checkIndex(int index, int length)检查下标是否在0(包含)到 length(不包含)之间,是则返还index,否则报IndexOutOfBoundsException异常.import java.util.Objects;public class Demo1 { public static void main(String[] args) { System.out.println(Objects.ch.原创 2020-09-06 18:04:47 · 169 阅读 · 0 评论 -
Java-多态
1.什么是多态多态是对象的多种表现形式一个对象的实际类型是确定的但是可以指向的引用类型就不确定了 父类的引用指向子类多态存在的条件:有继承关系子类重写父类的方法父类引用指向子类对象注意事项:多态是方法的多态,属性没有多态父类和子类有关联 子类可以向父类转换,父类向子类转换需要强制转换(可能出现的异常ClassCastException)存在条件:继承关系,方法需要重写,父类引用指向子类对象! 例如 Fater f = new Son();Static 静态方法属于类,不属于原创 2020-09-05 22:41:57 · 134 阅读 · 0 评论 -
Java-URL类
##URL类网址类详解网址的组成部分:通信协议://域名:端口号/虚拟路径?参数列表#错点通讯协议:传输速率控制传输编码控制出错控制域名:ip地址计算机在互联网上的的唯一标识。(公网ip)xxx.xxx.xxx.xxx192.168.1.1(局域网ip)DNS:当在浏览器输出域名-DNS服务商-回复IP-访问数据资源端口号:范围在0-65535之间https:安全的超文本传输协议 可以忽略端口号 自动寻找443http:超文本传输协议 在访问时也可以忽略端口号 自动寻找原创 2020-08-21 16:29:20 · 304 阅读 · 0 评论 -
Java-进制转换计算方法
1. 二进制转十进制{case 取值 1:执行语句;break;case 取值 2:执行语句break;case 取值 3:执行语句break;……default:执行语句;break;}switch返回的值必须是以下几种类型之一:int,byte,char,short,String;所有case子句中的值都不能相同,且都是常量;default语句是可选的break语句可以用于在case语句结束之后使程序原创 2020-08-23 23:25:02 · 335 阅读 · 0 评论 -
Java-二分法查找(Binary Search)
Java-二分法查找(Binary Search)二分法查找是一个在有序数组中找到特定数字的方法(1)首先找到数组中间的元素,和目标元素进行比较。(2)如果目标元素大于中间元素,那么向大的一边查找如果目标元素小于中间元素,那么向小的一边查找。(3)如果查找数组中的元素为空,那么停止(返回-1表示找不到该元素)。二分法查找的时间复杂度O(logn)public int binarySearch(int arr[],int target) { int low=0; int high=arr.le原创 2020-08-21 16:29:30 · 418 阅读 · 0 评论 -
Java-for循环语句
Java-for循环语句for(循环初始值;表达式;循环变量变化){循环体} public static void main(String[] args) { for(int i=0;i<5;i++) { System.out.println("i="+i); } }运行结果当表达式为空时,默认为true,进入死循环 public static void main(String[] args) { for(System.out.println("1");;Sys原创 2020-08-24 14:05:49 · 268 阅读 · 0 评论 -
Java-异常处理
1.什么是异常异常是在程序中导致程序中断运行的一种指令流。例如:x和y接收的是一个整数,如果用户输入一个字符,程序就会出现异常。public class Demo { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); int x=scanner.nextInt(); int y=scanner.nextInt(); i原创 2020-09-04 20:18:52 · 353 阅读 · 0 评论 -
Java-数据类型
数据类型 整数类型(byte,short,int,long)数据类型 分为8种基本数据类型 数值型分为(非整型)浮点类型(float,double)字符型(char) 类(class)引用数据类型 接口(interface)数组类型原创 2020-08-23 14:36:04 · 133 阅读 · 0 评论 -
Java-方法可变参数
一个方法中定义完了参数,则在调用的时候必须传入与其一一对应的参数,但是在JDK 1.5之后提供了新的功能,可以根据需要自动传入任意个数的参数。语法:方法名(数据类型…变量名){方法内部,可变参数以数组的形式作为载体}例如: sum(int...nums){ int n=0; for(int i=0;i<nums.length;i++){ n+=nums[i]; } return n; }注意事项:可变参数需放到参数列表的末尾。...原创 2020-09-02 20:02:22 · 109 阅读 · 0 评论 -
Java-内部类
1.成员内部类成员内部类是最普通的内部类,它定义于另一个类的内部,形式如下public class Outer { private int x; public int getX() { return x; } public void setX(int x) { this.x = x; } class inner{ public void say() { System.out.println("内部类已加载"); } } }成员内部类可以无条件访问外部类的成原创 2020-09-02 19:57:58 · 154 阅读 · 0 评论 -
Java-final关键字
1.final用于修饰属性、变量final修饰的局部变量,只能赋值一次final修饰的成员变量,必须在声明时赋值全局常量(Public static final)2.常量的命名规范由一个或多个单词组成,用下划线“_”隔开,不要担心麻烦。单词全部用大写字母拼写。例如:MAX_NUMBER3.final用于修饰类final修饰的类,此类不可以被子类继承4.final用于修饰方法final修饰的类,此方法不可被子类重写...原创 2020-09-01 19:05:58 · 220 阅读 · 0 评论 -
Java-重载与重写的区别
重写(Override)规则:当子继承父类的方法时,此方法不适用于子的程序执行,需要进行重写。参数列表必须完全与被重写方法相同返回类型必须与被重写方法的返回类型相同子类重写的方法访问权限不能小于被重写的方法。父类的成员方法只能被它的子类重写声明为static和private的方法不能被重写,但是能够被再次声明重写(Override)和重载(Overload)的区别参数列表重写:参数列表必须与被重写的方法相同。重载:参数列表必须不同发生的位置重写:发生在子类中重载:发生在一个类原创 2020-09-01 08:41:28 · 255 阅读 · 0 评论 -
java-代码块
1. 普通代码块编写在顺序执行的代码流程中的代码块2.构造代码块构造代码块,随着对象的每次创建,执行一次。且执行在构造方法前。区别于构造方法的是:无论用户调用哪一个构造方法来创建对象,构造代码块都必然执行。public class Demo3 { public static void main(String[] args) { { /** * 编写在顺序执行的代码流程中的代码块 */ } { System.out.println("普通代码块");原创 2020-08-31 21:25:12 · 136 阅读 · 0 评论 -
Java-方法的重载
方法的重载可以让我们根据不同的需求,传递不同的参数来调用不同的方法实现具体的功能。方法的重载与方法返还数据的类型无关。方法的重载遵循:方法名相同参数列表长度不同参数类型不同参数类型顺序不同public class Demo2 { public static void main(String[] args) { Math math=new Math(); math.sum(10,20); math.sum(10.2,20.3); math.sum(7,20.5); m原创 2020-08-31 19:45:32 · 119 阅读 · 0 评论 -
Java-String和char数据类型转化
在java中,char属于基本数据类型,而String属于引用类型。1.将String 类型转化为char类型String.charAt(索引位置) 返还类型为char,返还在字符串中第n个位置的字符。String.toCharArray() 返还类型为char [ ],返还字符串中所有的字符并存入char类型的数组中。2.将char 类型转化为String类型String.valueOf(“c”) 方法内传入一个字符参数,返还一个String类型。Character.toString(a原创 2020-08-30 17:14:06 · 403 阅读 · 0 评论 -
Java-五子棋
双方分别使用黑白两色的棋子,下在棋盘直线与横线的交叉点上,先形成五子连线者获胜此任务由java基础语言,二维数组来完成思路:1. 用二维数组绘制初始地图2. 实现双方玩家轮流下棋的方法while(true)构成无限循环 if条件判断是否获胜使用break来跳出循环接收用户输出的坐标并改变棋盘上对应坐标图案3. 胜利条件检测胜利条件检测在用户下棋之后,根据用户所下棋子对位置对其周围进行检测,避免对整个棋盘进行遍历行向检测:检测目标棋子的左至右各4个位置,是否存在连续的相同棋子竖向检测:检原创 2020-08-28 19:27:41 · 321 阅读 · 0 评论 -
Java-使用.nextLine()没有输入就自动跳行的问题
Java-使用.nextLine()没有输入就自动跳行的问题在“请输入公里数”出现后,用户输入一个double类型的数字,例如30.0\n时,.nextDouble()只会接收到30.0,而后面的\n会被.nextLine()先接收,从而导致还没有输入就自动跳过的假象错误示范:将.nextLine()换为.next()可以解决此问题...原创 2020-08-26 23:35:10 · 634 阅读 · 0 评论 -
Java-.next()和.nextLine()区别
Java-next()和nextLine()区别两者接收到的数据均为String类型,并且从有效内容开始接收(例如以空格开头,空格无法接收)next函数用于接收输入的一段文字,这段文字在Space或Enter前结尾nextLine()用于接收输入的一段文字,这段文字以Enter结尾对.next()进行测试public class Demo1 { public static void main(String[] args) { System.out.println("请输入一段文字");原创 2020-08-23 20:42:02 · 185 阅读 · 0 评论 -
Java-for循环打印三角形、菱形、空心菱形
public static void main(String[] args) { System.out.println("==========图案一=========="); /* 图案一: * * *** * ***** * ******* * 行数:4 --->0 1 2 3 * 行上的星数:7 --->1 3 5 7 * 行上的星数=行*2+1 * */ for(int i=0;i<4;i++) {原创 2020-08-24 16:37:37 · 518 阅读 · 1 评论 -
java-冒泡排序
从左到右比较相邻的两个元素。如果第一个比第二个大,则交换他们的位置。对于每一对相邻的元素,从开始第一对到结尾的最后一对。经过位置的调换,最后的元素应该是最大的。对于所有的元素重复以上的步骤,除最后一个元素以外。持续对越来越少的元素重复以上步骤,直到没有任何一对数字需要对比。public class demo2 { public static void main(String[] args) { int[] arr= {10,5,7,23,12,52,12}; int temp=0;.原创 2020-08-25 17:50:24 · 105 阅读 · 0 评论