自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

七七的博客

山有木兮木有枝,心悦君兮君不知。

  • 博客(20)
  • 收藏
  • 关注

原创 FilterConfig对象概述

作用:用来获得Filter 的相关的配置的对象。方法:

2020-08-26 22:43:01 223

原创 监听HttpSession中Java类状态改变的监听器

第三类监听器概述保存在Session域中的Java类可以有多种状态:绑定到session中;从session中解除绑定;随session对象持久化到一个存储设备中(钝化);随session对象从一个存储设备中恢复(活化);Servlet中定义了两个特殊的监听的接口来帮助Java类了解自己在Session域中的状态:HttpSessionBindingListener接口HttpSessionActivationListener接口实现这两个接口的类不需要在web.xml中进

2020-08-26 22:30:37 401

原创 Java Listener监听三个域对象的属性变更的监听器

监听三个域对象的属性变更的监听器ServletContextAttributeListeners监听 SeryletContext 对象中的属性变更(属性添加,移除,替换)的监听器。HttpSessionAttributeListeners监听 HttpSession 对象中的属性变更(属性添加,移除,替换)的监听器。ServletRequestAttributeListeners监听 ServletRequest 对象中的属性变更。...

2020-08-26 21:54:32 500

原创 监听器ServletRequestListener的使用

ServletRequestListener监听器ServletRequestListener监听器作用用户监听ServletReguest对象的创建和销毁ServletRequest对象的创建和销毁。创建:从客户端向服务器发送一次请求, 服务器就会创建request对象。销毁:服务器对这次请求作出了响应之后,request对象就销毁了。方法:创建和销毁监听器代码:配置:web.xml<listener><listener-class>list

2020-08-26 18:57:04 1117

原创 监听器HttpSessionListener的使用

HttpSessionListener监听器作用。用来监听 HttpSession对象的创建和销毁。HttpSession创建和销毁创建:服务器端第一次调用getsession()方法时候。。销毁:非正常关闭服务器(正常关闭服务器session 会被序列化)Session过期(默认过期时间30分钟)。手动调用session.invalidate()方法。方法:对象创建和销毁监听器代码:监听器配置:web.xml<listener> <listene

2020-08-26 18:49:46 828

原创 Java TCP通信:服务端接受多个客户端

实现一个服务端可以同时接收多个客户端的消息需要在服务端引入多线程。每接收一个客户端的Socket通道,就为它分配一个独立的线程来处理它的消息。如此便可实现一个服务端可以同时接收多个客户端的消息。服务端import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.net.ServerSocket;import java.net.Socket;p

2020-08-12 13:35:47 2180

原创 Java TCP可靠传输通信入门案例、Socket网络编程

TCP可靠传输通信入门案例TCP/IP协议Transfer Control Protocol ==>传输控制协议TCP/IP协议的特点面向连接的协议只能由客户端主动发送数据给服务器端,服务器端接收到数据之后,可以给客户端响应数据。通过三次握手建立连接,连接成功形成数据传输通道。通过四次挥手断开连接基于IO流进行数据传输传输数据大小没有限制因为面向连接的协议,速度慢,但是是可靠的协议。TCP协议的使用场景文件上传和下载邮件发送和接收远程登录TCP协议相关的类S

2020-08-08 22:52:49 215

原创 Java UDP通信协议相关、DatagramSocket、DatagramPacket

UDP协议的特点面向无连接的协议发送端只管发送,不确认对方是否能收到。基于数据包进行数据传输。发送数据的包的大小限制64KB以内因为面向无连接,速度快,但是不可靠。会丢失数据。UDP协议的使用场景在线视频、网络语音电话UDP协议相关的两个类DatagramPacket数据包对象作用:用来封装要发送或要接收的数据,比如:集装箱。DatagramSocket发送对象作用:用来发送或接收数据包,比如:码头。DatagramPacket类构造器发送端用:n

2020-08-08 21:40:07 593

原创 Java InetAddress类的使用

InetAddress类概述一个个该类的对象就代表一个IP地址对象。InetAddress类成员方法:static InetAddress getLocalHost()获得本地主机IP地址对象。static InetAddress getByName(String host)根据IP地址字符串或主机名获得对应的IP地址对象。String getHostName()获得主机名。String getHostAddress()获得IP地址字符串。 public static v

2020-08-07 23:47:06 185 1

原创 Java 网络编程:基本软件架构、网络通信的三要素、协议

基本软件架构通信一定是基于软件结构实现的C/S结构:全称为Client/Server结构, 是指客户端和服务器结构。常见程序有QQ、迅雷,IDEA等软件。B/S结构:全称为Browser/Server结构, 是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。(开发中的重点,基于网页设计界面,界面效果可以更丰富:Java web开发)两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的协议下,实现两台计算机的通信的技术。网络通信的三要素协议协议:计算机网

2020-08-07 23:31:20 288

原创 Java 复制文件夹的代码实现

import java.io.*;/** * 复制文件夹 */public class demo1 { public static void main(String[] args) { //源文件 File srcfile = new File("src\\IOtest"); //复制路径 File dirfile = new File("src\\others"); copyDir(srcfile,dir

2020-08-06 22:44:17 270

原创 Java FileOutputStream字节输出流的使用

Fileoutputstream文件字节输出流作用:以内存为基准,把内存中的数据,按照字节的形式写出到磁盘文件中去。简单来说,把内存数据按照字节写出到磁盘文件中去。构造器:public Fileoutputstream(File file):创建一个字节输出流管道通向目标文件对象。public Fileoutputstream(String file): String为文件路径创建一个字节输出流管道通向目标文件路径。public FileoutputStream(File file,

2020-08-05 21:25:55 840

原创 Java IO流体系、FileInputStream字节输入流的使用、解决字节输入流读取中文内容输出乱码的问题

IO流的体系: 字节流 字符流字节输入流 字节输出流 字符输入流 字符输出流InputStream OutputStream Reader Writer (抽象类)FileInputstream FileOutputStream FileReader Filewriter (实现类)一、FileInputstream文件字节输入流的使用作用:以内存为基准,把磁盘文件中的数据按照字节的形式读入到内存中的流。就是按照字节读取文件数据到内存。构造器:publi

2020-08-05 21:01:51 1180

原创 Java 递归的形式、递归三要素、n的阶乘、递归搜索文件实现

递归:方法在方法中又调用了自己。直接递归:自己的方法调用自己。间接递归:自己的方法调用别的方法,别的方法又调用自己。小结:递归是自己调用自己。递归如果控制的不恰当,会形成递归的死循环,从而导致栈内存溢出错误。递归应该防止进入递归的死循环。递归三要素已知:f(x) = f(x-1) + 1已知:f(1) = 1求:f(10) = ?计算流程:f(10) = f(9) + 1f(9) = f(8) + 1f(8) = f(7) + 1f(7) = f(6) + 1f(6)

2020-08-04 13:57:14 200

原创 Java 收集Stream流、流转数组、流转集合

收集stream流把stream流的数据转回成集合。stream的作用是把集合转换成一根传送带,借用stream流的强大功能进行的操作。但是实际开发中数据最终的形式还是应该是集合,最终stream流操作完毕以后还是要转换成集合。这就是收集Stream流。stream流是手段。集合才是目的。流只能使用一次。 public static void main(String[] args) { List<String> ls = new ArrayList<&

2020-08-03 18:32:04 2330

原创 Java Stream流的终结与非终结方法

终结方法:一旦stream调用了终结方法,流的操作就全部终结了,不能继续使用,只能创建新的Stream操作。终结方法有:foreach,count;不再支持链式编程。ls.stream().forEach(System.out::println);long count = ls.stream().count();非终结方法:每次调用完成以后返回一个新的流对象,可以继续使用,支持链式编程。...

2020-08-03 18:16:20 1247

原创 Java Stream流count统计数量、limit取前几个元素、skip跳过前几个、concat合并流

Stream流的常用API public static void main(String[] args) { List<String> ls = new ArrayList<>(); ls.add("小白"); ls.add("小黑子"); ls.add("蓝天白"); ls.add("小红"); //过滤出长度为3的字符串 ls.stream().filter

2020-08-03 18:10:38 19500

原创 Java Lambda表达式的省略写法

Lambda表达式的省略写法:(1) 如果Lambda表达式的方法体代码只有一行代码。可以省略大括号不写,同时要省略分号。 Thread t2 = new Thread(() -> { System.out.println(Thread.currentThread().getName()+"执行"); }); Thread t3 = new Thread(() -> System.out.prin

2020-08-02 21:42:45 1192

原创 Java Lambda简化Comparator接口匿名内部类写法

Lambda简化Comparator接口匿名内部类写法 //Lambda简化Comparator接口匿名内部类写法 public static void main(String[] args) { List<Student> ls = new ArrayList<>(); Student s1 = new Student("小明",25); Student s2 = new Student("小黑",23);

2020-08-02 21:32:02 799

原创 Java 使用Lambda简化Runnbale接口的匿名内部类形式

Lambda表达式简化Runnable接口的匿名内部类写法@FunctionalInterface函数式接口注解:一旦某个接口加上了这个注解,这个接口只能有且仅有一个抽象方法。这个接口就可以被Lambda表达式简化。 //不使用lambda Thread t1 = new Thread(new Runnable() { @Override public void run() { System

2020-08-02 21:09:40 324 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除