自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 Javaweb(HTTP协议)

4、无状态特性:协议本身不记录客户端的历史状态(每次请求都是独立的),降低了服务器的存储压力,但也因此需要通过 Cookie、Session 等机制实现状态管理(如登录状态保持)2、实现请求 - 相应模式:基于 “客户端主动请求,服务器被动响应” 的模式,客户端发起请求后,服务器必须返回对应的响应(成功 / 失败 / 重定向等)1、规范通信格式:定义了客户端发送的 “请求” 和服务器返回的 “响应” 的固定格式(如请求行、响应行、首部字段、消息体等),确保双方能正确解析数据。ftp(文件传输协议)

2025-10-21 10:41:21 389

原创 Javaweb(跳转)

2、Servlet A处理后,通过for word告诉服务器:"请把请求转交给目标资源(如Servlet B、JSP)处理";在 JavaWeb 开发中,页面或资源的跳转是实现流程控制(如登录后跳转到首页、表单提交后跳转到结果页)的核心操作。地址点不变:客户端浏览器地址栏始终显示最初请求的 URL(如 Servlet A 的路径),感知不到服务器内部的跳转;重定向是客户端主导的跳转,由服务器通知客户端"请重新访问另一个URL",客户端会发起新的请求。1、客户端发送请求到服务器的 Servlet A;

2025-10-17 10:05:03 743

原创 Javaweb(BeanUtils)

在Javaweb开发中,Apache Commons BeanUtils是一个常用工具类库,主要用于简化JavaBean的属性操作(如属性的赋值、获取、拷贝等),尤其在处理表单提交数据时,能大幅减少手动调用setter方法的冗余代码。BeanUtils 是 JavaWeb 中简化表单数据到 JavaBean 映射的高效工具,核心用法包括。如果是手动导入,需下载上述两个 jar 包,放入项目的。)中的键值对映射到 JavaBean 的属性(通过属性名匹配)提供属性的获取 / 设置方法(),支持嵌套属性(如。

2025-10-06 09:40:44 144

原创 Javaweb(servlet深入)

传统Servlet处理请求为同步阻塞模式,JDK+引入同步Servlet(@WebServlet(asyncSupported = true)),允许Servlet将请求交给线程处理,释放容器线程,提升高并发能力。service():处理请求耳洞核心方法,容器每次收到请求都会调用(多线程环境),根据请求方式(GET/POST等)分发到doGet()/doPost()等方法。过滤器:拦截 Servlet 请求 / 响应,用于统一处理(如编码设置、权限校验),通过。

2025-09-30 15:43:17 561

原创 Javaweb(servlet和doGET)

/利用servletContext读取外部的配置文件:如果是servlet要访问的资源是相对于web的路径,普通Java类的资源 可以放在src。servlet是运行在web服务器(如Tomcat)上的Java程序,用于处理客户端(浏览器)发送的HTTP请求,并生成响应返回给客户端。//业务逻辑要聚焦完成业务逻辑,给客户的状态返回的信息,尽量放在显示层,在业务最简单的方式表示状态。1、处理请求:接受客户端的HTTP请求(如GET、POST等),解析请求参数、头信息等。

2025-09-26 09:16:23 497

原创 Javaweb(servlet入门)

它运行在 Web 服务器(如 Tomcat)中,遵循 Java Servlet 规范,主要通过一系列生命周期方法和业务处理方法实现功能。作用:初始化 Servlet 实例,在 Servlet 第一次被请求时调用(默认),且仅调用一次。//这个打印流往浏览器。作用:返回 Servlet 的描述信息(如作者、版本),默认返回空字符串,可重写自定义。特点:请求参数会暴露在 URL 中,有长度限制,适合获取资源(如查询数据)。请求参数在请求体中,无长度限制,适合提交敏感数据(如用户登录、数据插入)。

2025-09-19 09:36:02 446

原创 Javaweb(基础入门)

3、也可以在Catalina(服务器引擎,注意是conf\Catalina\Local host中创建)中新建一个任意的xml文件并在里边进入<Context docase="D:\hello"/>,那么这个xml文件的名字就是我们的虚拟目录,如果文件为aaa#bbb就是两级虚拟目录。例:访问路径:http:"//localhost:8080/aa/bb/index.html";例:http://localhost:8080/h/index.html。1、在myweb创建一个目录WEB-INF。

2025-09-10 10:56:42 233

原创 Java(JDBC)

其主要功能是让 Java 开发者可以运用统一的方式来执行 SQL 语句、处理数据库事务以及获取数据库结果。2、执行sql语句:创建Statement、PrepareStatement或CallableStatement对象来执行sql插叙或更新。3、处理结果集:使用 ResultSet 对象处理查询返回的结果集。4、事务管理:控制数据库事务的提交、回滚等操作。JDBC:提供一个标准的执行SQL语句的API。

2025-06-05 17:21:08 380

原创 Java(枚举类、JDBC)

JDBC即Java数据库连接,它是一种JavaAPI,能够让Java程序和各种关系型数据库进行交互,像MySQL、Oracle等。//定义Grader就相当于定义了一个特殊的类,可以有实例,但是不能直接new,枚举中的每一个元素就是它的实例。//jbc:mysql://local host(地址):3306(端口)、mmm(数据库名称);在 Java 里,枚举类属于特殊的类,它的对象数量是固定的,也就是实例有限且固定。//特殊的属性valuse:返回所有的枚举值,API中看不到的。

2025-05-29 18:01:56 457

原创 Java (构造函数、图形界面、网络编程)

以下为您介绍构造函数、图形界面、网络编程的作用及其方法:一、构造函数在 Java 中,构造函数(Constructor)** 是一种特殊的方法,用于在创建对象时对其进行初始化。它具有以下特点:方法名必须与类名要相同(包括大小写)没有返回值类型声明(连void也不能有)在对象创建时自动调用,无需手动调用作用:1、初始化对象状态:为对象的成员设置初始值,确保对象在创建时处于合法状态2、参数化对象创建:通过不同的参数列表(构造函数重载),允许使用不同的方式创建对象。

2025-05-27 09:15:21 951

原创 Java (文件的分割和合并、序列化和反序列化、反射、多序列)

作用:Java 序列化是指将对象转换为字节流的过程,反序列化则是将字节流恢复为对象的过程。作用:文件分割和合并在处理大文件时非常有用。例如,在网络传输大文件时,可以将其分割成小块,分别传输后再合并。序列化指的是把对象转换为字节流的过程,而反序列化则是将字节流重新恢复成对象的操作。transient关键字(这个属性就不会在被序列化,序列化主要是对属性的序列化)文件的后缀名对文件的本身是没有影响的。//为了管理分割后的文件 创建一个文件类。合并是将部分组合为整体,常用于恢复被分割的数据。

2025-05-15 21:50:49 343

原创 Java(合并流、合并多个文件、分割器)

是 Java 中用于合并多个输入流的类,它允许将多个输入流按顺序连接起来,形成一个逻辑上连续的流。这样,程序可以像处理单个输入流一样处理多个输入流的数据,依次读取每个输入流中的数据,直到所有输入流的数据都被读取完毕。作用:在实际开发中,有时需要将多个文件的内容合并成一个文件,比如将多个日志文件合并成一个大的日志文件,方便后续的分析和处理。合并多个文件可以提高数据的整体性和可管理性。分割文件内容有助于对文件中的数据进行更细致的处理和分析。作用:在 Java 中,分割器并不是一个特定的类,而是一种概念。

2025-05-08 17:07:46 399

原创 Java(转换流、管道流、打印流、标准)

作用:转换流用于在字节流和字符流之间进行转换。InputStreamReader可将字节输入流转换为字符输入流,OutputStreamWriter可将字节输出流转换为字符输出流。作用:标准是Java中预定义的输入输出流,包括标准输入流System.in、标准输出流System.out和标准错误六System.err。作用:打印流提供了方便的方法用于输出各种数据类型,而无需进行显式的类型转换,PrintStream和PrintWriter可自动进行数据类型转换并输出到指定的输出流。比如绑定一个管道输出流。

2025-05-02 15:54:11 282

原创 Java(字节的输入流和输出流、字符流、字符输入流、内存输入和输出流)

字符流如果没有正常的关闭流u,不写出到文件,字节流不关闭一样也可以写出到文件。字符流有缓冲区,只有当关闭流或者强制刷新或者缓冲区装满了才会写出到目标文件中。内存流用于在内存里进行数据的读写操作,而非文件或者网络。作用:把字节数据写入到目标位置(如文件、网络连接等)字符流主要用于处理二进制数据、像图片、音频、视频等。作用:从数据源(如文件、网络连接等)读取字节数据。字节输入流(InputStream)在内存预开设一个存储空间(字节数组)作用:把字符数据写入到目标位置。作用:把数据写入到字节数组。

2025-05-01 17:29:24 332

原创 Java(set集合、二叉树、比较器、集合的迭代、Map、查询、添加、IO流、递归、字节输出字节流等)

用于定义对象之间的比较规则,比如在 TreeSet、TreeMap 等需要排序的集合中,或者在排序算法中对自定义对象进行排序。Set 是一种不允许包含重复元素的集合,用于存储无序且唯一的元素集合,常用于去重等场景。HoshSet(采用散列存储),所有是无序的,重复的只会出现一次(因为相同东西算出来的位置是一样的)函数或方法在其定义中直接或间接调用自身,常用于解决可以分解为相似子问题的问题,如树的遍历、阶乘计算等。如果数组对自定义的对象排序可以用Arrays的sort方法,要自定义比较器,以参数的形式传入。

2025-04-24 21:46:18 342

原创 Java(Math、数据的格式化、克隆、观察者设计模式、泛型、泛型接口、集合及其类集等)

以下为您介绍Math、数据的格式化、克隆、观察者设计模式、泛型、泛型接口、集合及其类集: 1、Math类 Java中的Math类提供了一系列用于进行数学运算的静态方法和常量,例如三角函数、对数函数、指数函数、绝对值等以下如图: math中的floor是取整数,直接去掉小数,不会四舍五入 例如:System.out.println(Math.floor(Math.random()*6)); 计算机中随机数就是个假的随机 Jav

2025-04-17 17:37:45 907

原创 Java(同步函数、锁、String Buffer和string类和Runnable类及其Date介绍)

死锁:死锁指的是两个或多个线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若没有外力作用,这些线程都将无法继续执行下去。每一个Java虚拟机都对应了一个Runnable类的实例,通过Runnable的实例可以取得空闲内存和最大的内存和执行垃圾回收。例如:System.out.println(sb.reverse());关闭程序:不要强制关机,而是通过设置标志等方法让线程中的代码自然执行完毕,例如:通过标志跳出循环。同步代码块:同步关键在于锁相同,锁可以时任意对象实例。

2025-04-10 17:43:37 753

原创 Java(多线程编程)

在 Java 里,多线程是一种能够让程序同时执行多个任务的机制。多线程使得程序可以把工作拆分成多个子任务,并且这些子任务能够并行处理,这不但能提高程序的性能,还能优化资源的使用。:线程是进程里的一个执行单元,每个进程至少包含一个线程,即主线程。一个进程可以有多个线程,这些线程会共享进程的内存空间和系统资源。:进程是运行中的程序,拥有自身独立的内存空间和系统资源。比如,当你开启一个 Java 程序,操作系统就会创建一个新的进程。为了完成一个进程中的多个对象的控制,一个进程分为了多个线程。

2025-04-02 13:20:15 247

原创 Java(异常细节、throw和thorws、包)

3、如果父类抛出多个异常,那么曜写(覆盖)方法必须抛出那些异常的一个子类,不能抛出新的异常。接收可能出现得异常,为了通用性一般不要写精确得异常,写最大得Exception。throw抛出一个具体的异常,throws跟在函数之后,标志由异常抛出。子类异常必须小于或等于父类的个数,如果大于或个数相同但异常不同会报错。以后调用用别人的函数,除了关注函数的参数返回值,还要关注有没有异常。2、一个方法被覆盖时,覆盖它的方法必须抛出相同的异常或者异常的子类。throws用在函数内,后面跟异常对象。

2025-03-27 20:25:44 236

原创 Java(接口、类、解耦和object、异常)

在继承接口时,就必须全部实现接口中的方法,这样很多用不到的也要实现很麻烦,所以就有适配类的出现,既有一个抽象类并用抽象类里的方法体来实现接口中的所有方法,然后从这个抽象类中继承,就可以有选择的实现相同类方法。类最好不要去继承一个已经完全实现好了的类,因为一旦发生向上转型,所调用的方法一定是被子类覆盖过的方法,所以会继承抽象类或者是接口。1、将一个定义在另一个类的里面,对里面那个类就称为内部类(内置类、嵌套类)静态内部类创建:new Outter.Inner(),静态内部类只能访问静态变量。

2025-03-20 17:38:24 309

原创 Java(设计模式和静态及其类关键字)

作用:是为类的实例分配内存空间,并且调用类的构造方法来初始化这个实例。在Java中,类是对象的模板,而对象是类的具体实例,借助new关键字,能够依据类的定义创建出具体的对象,从而使用这些对象类与存储数据和调用方法。Java中只能有一个父类(单继承),但是可以多层继承Java中的类默认都是object的于类。抽象函数是类的模板:=知道有这样一个函数,但是不知道怎么实现。子类重写了父类的方法后,子类创建的实例就会以就近原则访问重写后的方法。2、普通不能有抽象方法。方法的重写,注意重写(父子)和重载(同一类中)

2025-03-13 17:45:24 370

原创 JAVA(表达式)

1、static可以修饰变量:变量可以直接使用类名,变量名访问,静态变量是跟随类的加载而加载,存在静态存储区,所有的方法不能访问静态的数量。2、可以修饰函数:可以用类直接调用,在实际开发中不要轻易定义为静态变量,静态变量是跟随类的加载而加载,消亡而消亡,生命周期长,内存的浪费。静态代码块:比普通代码块更早执行,只会调用一次,也只能访问静态变量,根据静态代码块的特点,一般使用方便在资源的加载。注意:字符串的修改函数,注意其是在原字字符串上修改还是复制后修改形成新的字符,并以返回值的形式返回。

2025-03-06 19:41:47 302

原创 Java(数组与面向对象及面向过程)

构造函数:与类同名,无返回值,new后边不是类名,是构造函数的名字,如果没有自定义构造函数,系统自行生成一个无参数的构造函数。如果自定义了有参数的构造函数,系统将不再自动创建无参数的构造函数。这种最常用的字符串的创建形式进行了优化,如果内容相同,只开辟一次存储空间存一次。形象比喻:面向过程就是打工者的思维,而面向对象是老板的思维,面向对象更适合做大项目。面向过程首先考虑的是怎么做,而面向对象首先考虑的是让谁做,然后再考虑怎么做。在实际开发中,只要定义有参数的构造函数,就必须写上无参数的构造函数。

2025-03-05 16:17:55 237

原创 JAVA(变量与数据类型及其运算符和表达式)

定义变量:程序在执行过程中有些数据需要临时存放,所在在内存中临时开辟空间来存,并且会跟程序的执行而发生变化。变量的命名规则是第一个单词的首字母不大写,其他单词的首字母都要大写 studentSacore。JAVA中的小数默认数double类型,如果要给float变量赋值必须在数据之后加一个“F”,:非 |:或 [例如:if((a>3)&&(b>7))]for循环结束在于了,while结束在条件,如果最后结束需要判断,转义字符:java程序中,有一些符号被系统征用,例如"",如果。

2025-02-27 19:58:11 327

原创 JAVA(认识和介绍Java)

文件名要和public类同名,所有一个文件只能有一个public类,一个文件中可以看看没有public类,可以有多个普通类(JAVA),每个编码后都会形成一个单独的字节码文件。1.javase(JAVA基础)软件版本的选择:不要选最新的,选最稳定版本(次新版 次次新版 考虑硬件的性能)3.javame(手机开发)JAVA虚拟机(JAVA virtual machine)开发第一个JAVA程序:Hello world.java。JAVA是一门开发语言(跨平台的面对象语言)JAVA:执行JAVA的字节码文件。

2025-02-20 16:58:44 576

空空如也

空空如也

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

TA关注的人

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