自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 把一个对象内的值赋值到另一个对象中

假如这个对象的属性非常多,而另一个对象可能就一个属性值不一样,那么使用大量的set方法虽然可行但是不好维护管理,当然也不优雅。这时候就可以通过使用。这样的结果根本原因是,使用 = 后 user2其实在堆中就是user1对象,就好比文件拷贝了一个桌面快捷方式。可以通过以下代码将一个User对象内的值赋值到另一个User对象中:这里假设。三个属性,并定义了相应的 setter 和 getter 方法。工具类来实现是最优的选择。

2023-05-19 16:00:32 2727

原创 ArrayList.add()方法结果把之前的值给覆盖了

ArrayList.add()方法结果把之前的值给覆盖了解决办法

2023-05-19 15:30:23 1529

原创 过滤器 Fileter

Servlet过滤器Fileter是一个小型的web组件,它们通过拦截请求和响应,以便查看、提取或以某种方式操作客户端和服务器之间交换的数据,实现“过滤”的功能。原理:调用目标资源之前,让一段代码执行。web服务器在调用doFilter方法时,会传递一个filterChain对象进来,filterChain对象是filter接口中最重要的一个对象,它也提供了一个doFilter方法,开发人员可以根据需求决定是否调用此方法,调用该方法,则web服务器就会调用web资源具体的servlet,即web资源就会

2022-05-14 19:05:16 702

原创 servlet 的实现方式

servlet 的实现有三种方式第一种:实现servlet皆空,实现所有的方法,其中init方法,service方法,destrog方法是其生命周期方法;第二种:继承GenericServlet第三种:继承HttpServlet,重写doGet和doPost方法servlet的生命周期:当用户第一次访问项目中的资源的时候,才会调用init方法初始化创建,后期用户每一次访问都会调用servlet方法进行服务,当服务器关闭才会调用destroy方法进行销毁。...

2022-05-14 19:00:58 1031

原创 el是什么

EL:expression language: 表达式语言,一般称它为EL表达式它的主要功能就是从不同的域中取出数据,执行某个运算,判断等业务逻辑。el表达式就是用来取值的,取域对象中的值它的取值方式:先从page中取值,如果取到了则立即将值返回,如果没有取到,那么就在reques中取值,如果request中也没有取到,则会取session中取值,如果session中也没有值,那么最后会在application中寻找,找到返回值,找不到则返回空字符串。他的规律是从小到大的范围取搜索它

2022-05-14 18:02:30 2550

原创 如何写一个cookie

Cookies是一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术。Cookies是当你浏览某网站时,由Web服务器置于你硬盘上的一个非常小的文本文件,它可以记录你的用户ID、密码、浏览过的网页、停留的时间等信息。当你再次来到该网站时,网站通过读取Cookies,得知你的相关信息,就可以做出相应的动作,如在页面显示欢迎你的标语,或者让你不用输入ID、密码就直接登录等等。创建cookie:在javax.servlet.http 包中有 Cookie类,它拥有接

2022-05-14 17:50:55 1158

原创 jsp的九大内置对象

请求对象:request输出对象:out响应对象:response应用程序对象:application会话对象:session页面上下文对象:pageContext页面对象:page配置对象:config异常对象:exception其中:reques,session,pageContext,servletContext(application)又是四个域对象域对象还可以当做一个容器来使用,比如request对象主要就是用来封装用户的请求,并且使用request对象可以

2022-05-08 16:06:22 87

原创 request对象的常用方法

 Request对象的作用是与客户端交互,收集客户端的Form、Cookies、超链接,或者收集服务器端的环境变量。request的常用方法有:getParameter(String name)获取客户端提交的数据,参数name就是客户端在form表单中书写name属性的值,如果不一致,则取不到对应的值getParameterName() 获取客户端提交的 数据中所有的key值(form表单中提交的所有的name属性的值)getParameterValues(String name) 获取f

2022-05-08 15:48:00 4215

原创 转发request和重定向response的区别

1:转发使用的是request.getRequestDispatcher()重定向使用的是response.sendRedirect();2:请求的次数不一样转发是一次请求浏览器只做了一次访问重定向,浏览器至少访问两次3:地址栏信息不一样转发的地址栏不变,任然保留着上一次的请求路径重定向的地址栏是一定变化的,和内容保持一致4:访问资源不同转发只能访问服务器内的资源重定向没有任何限制,可以是内部也可以是外不5:携带数据因为转发只有一个request请

2022-05-08 15:03:59 658

原创 get请求和post请求处理乱码的方式

为什么会出现乱码,是因为编码表不一致造成的,浏览器使用utf-8编码,在编码解码时有可能被使用的iso-8859-1解码,(tomcat7以前默认的编码)而我们所得到的乱码,就是解码时使用的编码器不一样造成的get请求解决乱码的方法:将乱码数据使用指定的编码表编回到乱码前的状态byte[] bytes = str.getBytes("iso-8859-1"); 使用指定的编码表进行解码String newStr = new String(bytes,"utf-8"); pos

2022-05-08 14:45:40 1755

原创 jsp的get请求和post请求有什么区别

get请求和post请求是http协议中最常用的请求方法区别:1.get请求参数通过url传递,post放在请求中不会在浏览器中显示2.get请求在url中传递的参数是有长度限制的,而post没有3.从安全角度,post比get安全,因为get参数直接暴露在url上,所以不能用来传递敏感信息4.get请求会被浏览器主动缓存,而post不会除非手动设置5.get请求和post请求处理乱码的方式不一样...

2022-05-08 14:36:11 805

原创 jdbc连接mySQL8.0

首先确认自己的mySQL数据库是多少版本,5.0版本和8.0版本在代码上会有很大的不同并且驱动包也不同8.0使用的是com.mysql.cj.jdbc.Driver,5.0使用的是com.mysql.jdbc.Driver。下面直接上8.0的代码 Class.forName("com.mysql.cj.jdbc.Driver"); conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/地址?use

2022-05-04 10:43:56 6651

原创 mysql子查询

某些情况下,当进行一个查询时,需要的条件或数据要用另外一个 select 语句的结果,这个时候,就要用到子查询。例如这里有个学生表exam 表student chinese math englisha 49 22 22b null 22 90c...

2022-05-01 10:03:25 713

原创 mySql 求最大值最小值

student 表student chinese math englisha 49 22 22b null 22 90c 68 null 88d 33...

2022-05-01 09:48:41 5649

原创 Mysql求所有人的平均值

student 表student chinese math englisha 49 22 22b null 22 90c 68 null 88d 33...

2022-04-27 14:47:19 1590

原创 mycql 求学生的平均分

student 表student chinese math englisha 49 22 22b null 22 90c 68 null 88d 33...

2022-04-27 14:39:49 207

原创 方法重载和重写的关系

重载和重写,都是java中多态的一种表现形式1: 方法的重载在同一个类中有一些方法的功能相同,仅仅是参数列表不一样,此时如果去定义不同的方法名很麻烦。于是规定,方法名可以一样,但是参数列表方法重载的判断标准:同类同名不同参,与其他无关。(不同参:不同的参数列表:个数不同,类型不同,顺序不同)如:构造方法,Arrays的很多方法都是重载的。必须不一样。所以就有了方法的重载。2:方法的重写使用:当父类中的方法不能满足子类的需要。方法的重写又称方法的覆盖,一般用于子类根.

2022-04-24 11:42:36 311

原创 Array 和 ArrayList 的区别

首先Array是数组,而ArrayList是集合一:数组的空间大小不同Array的长度在定义后是不可改变的,如果这时候我们需要在数组中添加其他的元素的时候,就必须要新建一个数组且数组长度比原数组长度多一,然后再把数组中的内容复制到新数组中,最后再根据下标添加需要的内容。ArrayList的长度是可变的,java程序中子带了添加方法,可以自动新增一个数组并且添加完后会自动抛弃旧数组。并且,每次添加新数组的时候都会自动检查数组中的空间是否足够二:储存内容不同Array可以包含基本类型和对象类型

2022-04-24 11:06:12 7433

原创 使用正则表达式对文件名做限制

需求: 判断java文件名是否正确,判断邮箱格式要求: java文件名首字母要求大写,必须有一个".",必须使用java结尾 邮箱格式必须使用".com"或者".cn"结尾,必须且只能有一个@判断java文件名 String java = "^[A-Z].*[\\.]java$";// 判断邮箱格式 String com = "^.*@.*[\\.]com"; String cn = "^.*@.*[\\.]cn$";...

2022-04-18 18:41:13 994

原创 如何在get/set方法中使用枚举

通常在我们会使用set方法对写入属性进行控制、判断,那么如何在set方法中使用枚举呢?因为枚举是常量,所以我们可以使用switch方法//使用枚举对动物性别进行控制public void setSex(String sex) { switch(sex){ case "雄": this.sex = "雄"; break; case "雌": this.sex = "雌"; break; default: this.sex = "火星动

2022-04-18 18:36:22 570

原创 java中泛型是什么?

什么是泛型?它是一个在录入信息时就控制输入数据类型的技术方法把数据放入集合,数据会变成Object类型 。我们把数据取出后如果要用对象方法,就必须向下转型,但是转型是可能会因为数据不统一,发生异常。比如,一堆需要转型的字符串中突然插入一个int整数类。所以,泛型的技术方法,就是在录入前就规范同一数据类型,避免异常发生例如现在有个需求,录入学员对象,要求有姓名、性别。使用泛型方法录入map集合要求key是英文姓名,value是对应的学员信息package Snow;import ja

2022-04-15 17:08:11 315

原创 java中捕获异常是什么?

java的异常处理机制分别是捕获异常和抛出异常他们的关键字是捕获异常:try catch finally抛出异常:throw throws捕获异常的写法package Snow;public class Demo { public static void main(String[] args) { int num1 = 11; int num2 = 0; try{ System.out.println(num1/num2); }catch(Exception

2022-04-15 16:34:15 466

原创 java中什么是接口

接口是一种特殊类(抽象类)是一个规范,是一种能力,里面的所有方法都默认为抽象方法1:如果接口是一种特殊类,那么它存不存在继承关系?接口存在继承关系,但是接口只能继承接口,继承只能用于同类型之间,例如:类和类,接口和接口。但是,类只能继承一个类,接口确可以继承多个接口。2:类和接口之间的关系?类和接口是一个实现的关系,使用的关键字是:implements类实现了某个接口(就和类继承了一个抽象类的用法是一样的)3:接口中能不能存在成员变量?接口中不能存在成员变量,但是可以存在常量

2022-04-14 17:13:37 2766

原创 java中的抽象方法与抽象类(心得)

数组都会有一个数据类型,比如int[],String[]。对象数组,则是把你定义的对象 作为数据类型比如学生 Student[] student = new Student[]

2022-04-14 16:46:38 536

原创 equals怎么直接对比对象

在定义一个对象的时候,会在内存中开辟一个空间来存放这个对象的信息,在我们System.out.println(此对象)就会发现所展示的是对象所在的地址,那么哪怕两个对象的所有属性方法都一样,用equals也直接比对不了,因为他们所在的地址不同。就好比一对双胞胎,长得完全一样,名字也一样。但他们是两个人。可是在实际开发中,我们会遇到这种需要进行两个对象的比对问题,如果单独把每个对象的属性挑出来进行比对会造成大量的重复代码。所以我们可以进行equals代码的重写,使得equals方法适应开发环境。方法的

2022-04-11 21:08:04 391

原创 java中如何最简单的生成四位数验证码,并与键盘录入的数字比对

package Demo;import java.util.Scanner;public class Demo { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int random = (int)(Math.random()*10000); System.out.println("请输入注册验证码:"+random); int myRandom = sc.nextInt().

2022-04-06 16:39:19 1949 1

原创 java怎么给数组中整数排序

可以使用冒泡排序的方法,比较相邻的两个数的大小,然后交换两个数的位置,在java中有相对应的升序排序方法,所以在这边所展示的是用冒泡排序进行倒序排列。package jingdong;import java.util.Arrays;import java.util.Scanner;public class Demo { public static void main(String[] args) {// 定义一个随机的数组 int[] arr = {21,22,35,72,13,7};

2022-04-04 16:34:17 2258

原创 根据用户输入的1~~9数字,生成金字塔

package Snow;import java.util.Scanner;public class Snow { public static void main(String[] args) { /**需求:根据用户输入的数字,生成对应的金字塔*/ //思绪:用双重for循环来做,用户输入的数字就是金字塔的高度, //获取用户输入的信息 Scanner sc = new Scanner(System.in); System.out.println("你想要几行数字:"); .

2022-04-01 15:26:11 708

原创 java多重循环九九乘法表

package Dream;import java.util.Scanner;public class Dream { public static void main(String[] args) {// 九九乘法表// 思路:乘法表有九行九列,先for循环行,然后双重for循环内容 for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { System.out.print(i+"*"+j+"=".

2022-04-01 14:07:48 752

原创 用键盘录入整数,并求出最小值

package Demo;import java.util.Scanner;public class Demo { public static void main(String[] args) { /** * 需求:求出四家手机店的最低价格 * * */ Scanner sc = new Scanner(System.in); //定义数组储存价格,循环录入 int[] arr = new int[4]; //定义变量min 保存当前的最低价格 int m.

2022-03-31 20:06:47 262

原创 JAVA中键盘录入学生成绩并求出最大值

package Demo;import java.util.Arrays;import java.util.Scanner;public class Demo { public static void main(String[] args) { /** * 从键盘输入本次JAVA考试的5位学生成绩, * 求考试成绩的最高峰 * * * */ //获得键盘输入的信息 Scanner sc = new Scanner(System.in); //定义数.

2022-03-31 19:30:29 3614

原创 用for循环求1~10所有偶数的和并显示奇数偶数

偶数是能够被2所整除的整数。所以可以通过: n%2 == 0 ;来判断这个整数是不是偶数。package Demo;import java.util.Scanner;public class Demo { public static void main(String[] args) { //求1~~10所有偶数的和 int sum = 0; for (int i = 0; i <= 10; i++) { if( i%2 != 0){ System.o..

2022-03-31 09:57:24 5464

原创 for循环的数学应用

1.输入一个整数,返回所有两个整数相加等于这个数的方法例如:输入110+11=111+10=112+9=11……10+1=1111+0=11;package Xue;import java.util.Scanner;public class Xue { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输出一个数字

2022-03-31 09:43:44 252

原创 循环求出1~100偶数的和

1.循环的应用场景:如果一段重复的代码或者有规律的代码需要不断的执行,则考虑使用循环。2.怎么求偶数:整数中,能被2整除的数是偶数,不能被2整除的数是奇数。 如:( n % 2 = = 0), 由此,我们就可以用循环的方法求出1~100内所有偶数相加3.循环求出1~100偶数的和1.while 方法 2.do~~while 方法 3. for 方法package Demo;import java.util.Scanner;public class Demo...

2022-03-31 09:14:05 11667

原创 1~10之间的整数相加,如果大于20就不再相加

package Demo;import java.util.Scanner;public class Demo { public static void main(String[] args) { //需求:1~~10之间的整数相加,得到累加值大于20则跳出循环并打印当前值 //1 使用循环进行累加,从1~~10//2 判断当前值是否大于20 //3 如果大于20 跳出循环,打印当前值 int sum = 0;...

2022-03-31 08:42:32 1293

原创 循环录入学生成绩,并求出平均值

package ZuoYe;import java.util.Scanner;public class Zuoye3_30_1 { public static void main(String[] args) { /*循环录入某学生的五门课的成绩,如果成绩为负,则 * 停止录入并提示错误 * * */ //录入学生的信息 Scanner sc = new Scanner(System....

2022-03-30 17:35:39 3135

空空如也

空空如也

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

TA关注的人

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