![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
后端
t0hka
这个作者很懒,什么都没留下…
展开
-
根据其他线程返回值继续执行当前线程
import java.util.concurrent.FutureTask;public class Test { public static void main(String[] args) throws Exception { String a = "a"; Thread thread = Thread.currentThread(); System.out.println("主线程"+thread); FutureT.原创 2020-06-28 12:45:03 · 158 阅读 · 0 评论 -
从集合中取出某些属性组成新的集合的几种方法
从集合中取出某些属性组成新的集合的几种方法比如我们有一个装有学生类的集合,我们想获得所有学生的姓名组成的一个新的集合1,准备工作为了进行测试,首先,我们需要定义一个实体类package com.me;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;@Data@AllArgsConstructor@NoArgsConstructorpublic class Stude原创 2020-05-31 22:16:06 · 6358 阅读 · 0 评论 -
Git安装教程
Git安装手册下载安装Git(Git安装包)一、下载安装Git1、下载Git 官方地址为:https://git-scm.com/download/win2、下载完之后,双击安装3、选择安装目录4、选择组件5、开始菜单目录名设置6、选择使用命令行环境7、以下三步默认,直接点击下一步...原创 2020-05-01 20:11:29 · 133 阅读 · 0 评论 -
一张表无法搞定时可以选择的三种方案
一张表无法搞定时可以选择的三种方案1,读写分离2,分库分表3,NoSQL/NewSQL原创 2020-04-20 20:04:38 · 117 阅读 · 0 评论 -
JDBC高级和DbUtils
JDBC高级和DbUtils1. BaseDao方法补充1.1 为什么要提供该方法 完成一个查询返回值类型是Object[],并且是存储于List集合中的一种方式,实际返回值类型是 List<Object[]> 处理的是查询数据结果无法映射到类对象中,ORM,所有的数据按照查询结果字段顺序要求从数据库读取数据保存到Object数组,为了能满足多行数据查询要求,Object数组存...原创 2020-03-25 17:46:59 · 904 阅读 · 11 评论 -
JDBC高级
JDBC高级1. Statement操作SQL语句1.1 Statement查询SQL数据操作// 查询指定的一个数据行,转换成对应的User对象@Testpublic void testSelectOne() { ResultSet resultSet = null; Statement statement = null; Connection connecti...原创 2020-03-24 23:05:34 · 77 阅读 · 0 评论 -
JDBC初识
JDBC1. JDBC介绍 Java Database Connectivity Java规定的数据库连接接口,SUN公司提供的,为了简化程序员操作数据库的过程。 SUN公司要求数据库提供商,按照JDBC API接口规范,完成对应Java程序的数据连接操作,规范Jar包,并且提供对应的操作方法。 JDBC接口中核心的内容 java.sql.* javax.sql.*2. ...原创 2020-03-23 18:25:25 · 108 阅读 · 10 评论 -
BIO+多线程实现TCP简单示例
BIO+多线程实现TCP简单示例服务端package test001;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;public class Server { public static void main(String[] args) throws IOExce...原创 2020-03-22 23:27:39 · 212 阅读 · 0 评论 -
总结7
原创 2020-03-21 21:06:01 · 86 阅读 · 3 评论 -
MySQL入门教程完整版
文章目录MySQL1. 为什么要使用数据库2. 什么是数据库3. 数据库管理系统4. MySQL4.1 MySQL历史简介4.2 MySQL获取和安装【详见】 Windows下安装MySQL5.75. SQL5.1 SQL语句概述5.2 MySQL基本操作6. MySQL开发工具使用7. 查询语句【重点】DQL7.1 基本格式7.1.1 基本查询,字段表名7.1.2 查询结果字段进行数据计算7.1...原创 2020-03-20 21:11:44 · 899 阅读 · 0 评论 -
MySQL初识
MySQL初识1. 为什么要使用数据库 Java程序在运行的过程中对于数据进行存储操作,变量,对象,数组,集合,双边队列...数据是保存到内存中,数据存储是瞬时的,程序退出,电脑异常。都会导致数据丢失并且不可逆。 文件存储数据,XML,JSON,其他文件。可操作性比较差,API繁琐,不同的文件有不同的解析方式,而且在内存占用和效率问题上很难达到两全程度。 存在的一些问题: 1. 文件保...原创 2020-03-19 19:44:38 · 109 阅读 · 8 评论 -
TCP服务器和客户端学生管理系统功能分析
TCP服务器和客户端学生管理系统1. 服务器功能分析1.1 数据处理模块1. 验证用户登陆2. 完成最基本的增删改查功能3. 考虑锁操作1.2 数据存储模块1. JSON文件格式存储和读取2. 定时更新操作1.3 数据传输模块1. 发送JSON格式数据到客户端2. 接收客户端发送请求和数据2. 客户端功能分析2.1 登陆模块1. 登陆请求模块验证用户名和密码2....原创 2020-03-17 20:39:38 · 290 阅读 · 10 评论 -
NIO实现网络聊天室
NIO实现网络聊天室1. NIO完成网络编程1.1 Selector选择器老大Selector 选择器,网络编程使用NIO的大哥!!! 服务器可以执行一个线程,运行Selector程序,进行监听操作。 新连接, 已经连接, 读取数据,写入数据Selector常用方法: public static Selector Open(); 得到一个选择器对象 public int s...原创 2020-03-16 23:59:35 · 83 阅读 · 1 评论 -
第六周学习内容
原创 2020-03-14 23:42:51 · 111 阅读 · 4 评论 -
单例模式和NIO
单例模式和NIO1. 单例模式1.1 要求 当前类有且只有一个对象,一旦当前类存在一个对象之后,无法在重新创建当前类的对象。就算是你要创建,代码返回的对象依然是上一次创建的对象。 懒汉模式,饿汉模式 1.2 单例模式推导【懒汉】package com.qfedu.a_single;import java.util.concurrent.locks.Lock;import jav...原创 2020-03-13 22:10:31 · 100 阅读 · 0 评论 -
Stream和方法引用
Stream和方法引用1. Stream流1.1. Stream流引入 Stream流完全不是I/O流,按照流水线处理方式来考虑代码中的思想。 JDK1.8 之后,我们拥有了Lambda表达式,让代码的中心偏向解决实际问题,直到重点,可以提高效率。 Stream流中使用了大量Lambda表达式,利用Lambda操作方式,提供开发效率1.2 传统遍历方式和Stream类处理方式对比p...原创 2020-03-12 21:33:45 · 142 阅读 · 0 评论 -
函数式接口
函数式接口1. 函数式接口1.1 概述 如果说一个接口内有且只有一个方法,而且该方法是一个缺省属性为public abstract方法,该接口可以称之为是一个函数式接口。 自定义函数式接口,还有系统中提供的函数式接口 Comparator<T> Runnable 可以直接理解JDK1.8的新特征,Lambda表达式来使用。 Lambda表达式对比匿名内部类使用 ...原创 2020-03-11 20:16:19 · 98 阅读 · 7 评论 -
注解
注解1. 注解概述1.1 注解解释注释: 解释代码,给程序员看注解: Java语言中的类、方法、变量、参数和包等都可以被标注。和Javadoc不同,Java标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java虚拟机可以保留标注内容,在运行时可以获取到标注内容。 当然它也支持自定义Java标注 JDK1.5之后的特征 用于说明程序 一般在框架中使...原创 2020-03-10 20:27:18 · 115 阅读 · 9 评论 -
TCP多人聊天室实现 JSON文件解析
TCP多人聊天室实现 JSON文件解析1. TCP多人聊天室实现1.1 分析客户端 功能: 1. 数据发送 2. 数据接收 技术: 1. socket 2. 输入流和输出流 3. 多线程,客户端功能模块有两个线程 聊天: 1. 群聊 2. 私聊 私聊前缀 @服务器用户ID号:msg 服务器 功能: 1. 数据转发 2. 用户注册 技术:...原创 2020-03-09 22:24:00 · 188 阅读 · 0 评论 -
知识梳理Week 5
原创 2020-03-08 21:31:33 · 97 阅读 · 5 评论 -
XML相关知识
XMLXML概述Extensible Markup Language可拓展标记语言用途: 1. 数据存储,小型数据库,存在一定的CRUD操作可行性 2. 网络端数据的传输 3. JavaWEB框架项目配置文件 Spring Druid ....w3c万维网联盟指定的规范基本语法1. XML文件后缀名是.xml2. XML第一行是对于当前文件的定义声明3. XML文...原创 2020-03-06 22:27:10 · 97 阅读 · 12 评论 -
反射初识
反射1. 反射概述1.1 Java文件和.class文件的关系Java文件 Java文件中包含代码的所有内容,类,接口,成员变量,成员方法.....class字节码问题 .java文件 通过 javac编译工具生成对应的.class字节码文件 使用JDK中提供的反编译工具,可以看到.class文件中包含 Class 完整的包名.类名 Field 成员变量,成员变量的名字和...原创 2020-03-05 20:11:55 · 77 阅读 · 2 评论 -
网络编程相关
网络编程1. 网络编程概述1.1 C/S和B/SC/S 客户端 服务器软件结构 服务提供商给予用户服务需要准备的内容 1. 各大平台的客户端 Android iOS PC Windows Linux macOS QQ 微信 淘宝 JD 剑与远征 2. 服务器提供服务 软件更新: LOL服务器版本更新,同时本地软件也要进行更新操作。这个操作非常耗时。 热更新...原创 2020-03-04 20:49:55 · 80 阅读 · 2 评论 -
多线程,线程通信,线程池和Lambda表达式
多线程,线程通信,线程池和Lambda表达式1. 多线程1.1 线程状态 WAITING(无限等待)当某一个线程被执行wait()方法,需要等待另外的一个线程进行唤醒操作。一下三个方法都是Object类内的方法: public void wait(); 在哪一个线程中执行,就会让当前线程进入一个无限等待状态。 1. 所在线程进入无限等待状态 2. 开启【锁对象】 ...原创 2020-03-03 19:58:28 · 95 阅读 · 7 评论 -
多线程,同步相关
多线程,同步1. 多线程1.1 多线程的优缺点优点 1. 提升资源利用率 2. 提高用户体验缺点: 1. 降低了其他线程的执行概率 2. 用户会感受到软件的卡顿问题 3. 增加的系统,资源压力 4. 多线程情况下的共享资源问题,线程冲突,线程安全问题1.2 创建自定义线程类的两种方式class Thread类 Java中的一个线程类 Thread类是Runnable...原创 2020-03-02 17:21:20 · 97 阅读 · 10 评论 -
IO流中关闭和刷新的区别
IO流中关闭和刷新的区别因为内置缓冲区的原因,如果不关闭输出流,无法写出字符到文件中,但是关闭的流对象,是无法继续写出数据的,如果我们既想写出数据,又想继续使用流,就需要使用flush方法了flush : 刷新缓冲区,流对象可以继续使用close : 先刷新缓冲区,然后通知系统释放资源,流对象不可以再被使用了示例package com.test0229;import ja...原创 2020-03-01 18:48:49 · 1081 阅读 · 5 评论 -
Java常用API
Java常用API1. StringBuffer1.1 StringBuffer概述 为了解决String字符串操作导致的内存冗余,提高效率,Java中提供了StringBuffer和StringBuilder来操作字符串,并且提供了很多方法,便于程序员开发。 StringBuffer和StringBuilder中都有char类型可变长数组作为字符串的保存空间。使用到的方法类型和Array...原创 2020-02-28 21:10:29 · 106 阅读 · 10 评论 -
字符输出流,缓冲流和序列化
字符输出流,缓冲流和序列化1. IO流1.1 文件操作字符输出流FileWriter文件操作输出字符流Constructor 构造方法 FileWriter(File file); 根据File类对象创建对应文件的文件操作输出字符流 FileWriter(String pathName); 根据String类型文件路径创建对应文件的文件操作输出字符流 FileWriter(...原创 2020-02-27 19:37:17 · 359 阅读 · 11 评论 -
String类和IO流
String类和IO流1. String类1.1 比较方式要求1.2 获取方法int length();![字符串比较要求](img/字符串比较要求.png) 获取字符串长度 "" char charAt(int index); 获取String字符串中指定下标位置的char类型字符,如果index超出有效范围 StringIndexOutOfBoundsExceptionin...原创 2020-02-26 18:15:29 · 198 阅读 · 14 评论 -
Map和File类
Map和File类1. Map双边队列1.1 什么是Map键(Key)值(Value)对 姓名 = 娘娘 性别 = 维多利亚 年龄 = 18表格: 姓名:骚磊 年龄:16 性别:男 程序开发大部分数据都是键值对形式的 MySQL JSON XML 类对象成员变量和存储的数据 从前端发送的数据也可以转成Map格式 ==> 一键生成 ==> 类对象 ==&g...原创 2020-02-25 17:25:57 · 247 阅读 · 4 评论 -
关于Object类的一些常见方法
Object类超类,基类,所有类的直接或间接父类,位于继承树的最顶层任何类,如没有书写extends显示继承某个类,都默认直接继承Object类,否则为间接继承Object类中所定义的方法,是所有对象都具备的方法Object类型可以存储任何对象作为参数,可接受任何存储对象作为返回值,可返回任何对象getClass()方法public final Cl...原创 2020-01-22 10:46:22 · 269 阅读 · 0 评论