自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 问答 (3)
  • 收藏
  • 关注

原创 JSP存储List

jsp之获取list遍历比较

2022-04-08 16:07:34 2383

原创 Tomcat启动时候得一些bug:tomcat启动端口被占用,ERROR StatusLogger No log4j2 configuration file found.

当启动tomcat服务器的时候出现了三个问题,真够多的,????还是要好好做笔记问题①:SEVERE: Could not contact [localhost:[8005]]. Tomcat may not be running.问题解决这个问题在一个文章找到了,放个链接:https://blog.csdn.net/Ferdinand_Du/article/details/893969751,找到你的jdk目录例如’'jdk1.8.0_172-amd64 /jre/lib/security/",在

2022-02-17 15:19:27 1373

原创 jstl标签库

<c:out value="" default="" escapeXml=""></c:out><c:out>有三个标签,        1.value表示要输出的值,比如直接value=“abc”,就会输出abc。        当需要输出request域对象中的值的时候可以:value=${},比如re

2022-01-09 15:49:18 278

原创 2020IDEA创建一个web项目

首先,可以先新建一个maven项目,这个项目不要使用骨架,创建完后,会缺少webapp目录。①按住CTRL+ALT+SHIFT+S后,打开下图在Modules中按图示操作:②通过添加webapp目录创建web项目当点击完ok后会出现是否创建的提示,按确定就可以了,这样webapp目录就创建出来了。③在接着就是确定web.xml的路径了。点击完ok,然后点Apply,就可以了。④按图示顺序编辑,添加完成后同样点Apply。这样就创建好了一个web项目了。...

2022-01-08 14:47:44 731

原创 msql8.x忘记密码

使用命令:mysqld --console --skip-grant-tables --shared-memory进行无密码登录。修改密码:use mysql; (使用mysql数据表)update user set authentication_string=’’ where user=‘root’;(将密码置为空)quit; (然后退出Mysql)...

2021-12-26 15:28:58 344

原创 Mybatis映射

    当mybatis的查询结果具有一对多和多对一还有一对一的映射关系,为一对多的关系时,例如球队和队员的关系,我们可以理解为一个球队拥有多个球员。此时这里的一为球队,多为球员。多对一、一对一就是这样类似,可以举一反三。  多对一映射  表示一个球员时,既要表示他本身的球员信息,又要表示球员的球队信息,那么我们该怎么做呢?  首先,先将实体类写出来图1  getter和setter省略了,下方补上关系图吧图2  多方的球员对应着一方的球队。比如同一个球队的人,库里、汤普森、威金斯,所在

2021-12-09 17:57:11 471

原创 【无标题】

使用Tomcat插件启动web服务没成功原因是我在使用的时候忘了在pom.xml文件中加上<packaging>war</packaging>默认packaging是jar包的,但在部署web服务时,必须写成war关于jar,war,pom查了下,有三个解释项目的打包类型:pom、jar、warpacking默认是jar类型,pom ---------> 父类型都为pom类型(父项目的pom中该标签值一般都是pom)jar -------

2021-11-19 16:04:47 187

转载 2021-09-26

JAXB–@XmlType注解标注xml生成顺序默认情况下,Jaxb编组出来的xml中的字段顺序是随机的,你可以使用@XmlType的propOrder属性来指定序列化的顺序。第一步:定义java类时,使用@XmlType(propOrder = { “id”, “name”, “age”,“book”})指定输出顺序。package step2; import java.util.Set; import javax.xml.bind.annotation.XmlElement;

2021-09-26 13:48:22 59

原创 2021-09-14

遇到idea打开了多个tab窗口,又不想用下拉选项一个个查看一、file➡️setting➡️editor➡️general➡️editor tabs二、将Show tabs in single row的勾去掉。三、然后点击apply➡️ok

2021-09-14 10:20:25 58

转载 2021-09-13

package com.lovo.utils;import java.io.BufferedReader;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java

2021-09-13 17:17:18 59

原创 2021-09-13

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-09-13 17:12:18 45

原创 2021-09-01

String.split()方法使用;作用:用来切割字符串。方法:split(String reg); split(String reg,int limit);返回值:字符串数组 --> String[]单参的方法单纯根据参数进行切割,得到如下结果:  如果参数是一个不存在于字符串中的值,返回的字符串数组还是原来的字符串。  如果是双参数,那么后面一个参数,根据大于0,等于0,小于0分别表示不同意义。  int limit,  如果参数大于0,后面的值为切割次数:limit-1

2021-09-01 11:19:01 54

原创 2021-07-19

关于docker容器部署springboot项目出现的问题  通过app镜像创建容器使用docker run --id name=springboot_project -p 9000:8080 app并启动后,本来这条命令是创建并启动容器的,但是通过docker ps -a 查看后发现,容器并没有启动成功。  接着使用命令docker logs (我的容器id) 查看问题所在,发现报错XXXXXX has been compiled by a more recent version of the Ja

2021-07-19 12:27:20 301

原创 2021-04-19

tk.mybatis使用内置方法selectByPrimary()时的坑:       当我在使用该方法时,根据传入的id主键,查询出一个关于User并打印时,不成功实例:       可以看到图中执行的sql出错。说是执行时找不到这个方法的主键,所以tk.mybatis变成了联合查询。这时去查了一些资料:主要的解决办法是:①可能是由于没有给User的主键属性

2021-04-19 10:54:16 49

原创 2021-01-23

微信JS扫码功能报错:unable to find valid certification path to requested target,意思是找不到请求目标的有效证书路径。大佬的文章很全面{“errMsg”:“config:invalid signature”}一开始出现的是这个错误,查阅了很多资料都没得到解决。这个表示无效的签名,在溯源发现导致签名无效的原因是控制台中的jsapi=null,为什么会这样呢?带着疑问又继续找控制台的错误,接着发现因为这个为null来自于access_toke

2021-01-23 00:50:09 85

原创 2021-01-11

MySQL中为什么要在count中添加or null?  当用于统计某一个字段出现的次数时,如果在限制条件中不加上or null ,我们就不能得到正确的值。  现在有一个数据库表叫express,我们要查询其中字段status为0的数量select count(status = 0) from express;  这时的结果按理来说应该是3,可实际却是4.  也就是说我们此时把数据status=1的数据也加进来了。  这时候若是在条件后面加入or null,则统计的结果为正确值。

2021-01-11 16:13:58 108 1

原创 2021-01-05

java 反射中的属性创建一个类Person,设置phoneNumber属性为public.为了方便演示。我们接下来,通过获取这个属性和一个私有属性,给对象设置值。package com.zm.bean;public class Person { private String name; private int age; public String phoneNumber; private Person(String name){ this.n

2021-01-05 16:53:51 126 2

原创 2021-01-05

java 反射中的方法创建了一个类Person,其中设置Name的方法setName()和设置Age的方法setAge(),通过反射的方式来获取。 // 1.加载类 Class pClass = Class.forName("com.zm.bean.Person"); // 2.获取类的构造方法 Constructor c = pClass.getDeclaredConstructor(); // 3.设

2021-01-05 16:31:26 60

原创 2021-01-05

java反射中的构造方法获取构造方法,创建对象。package com.zm.bean;public class Person { private String name; private int age; private Person(String name){ this.name = name; } public Person(String name, int age) { this.name = name;

2021-01-05 15:29:19 62

原创 2021-01-05

java 的类的类型和获得Class什么是类的类型呢?  当我们创建了一个.java文件的时候,由于在编译的时候我们会将其编译为.class文件,这时,再将.class文件加载到内存中。  java是以对象的方式,对.class文件进行的存储,这时候,.class文件作为对象,以Class为对象类型的方式进行表示。  解释到这里可能还是很抽象。接下来还是用对象来解释一下。  当我们创建了一个Person对象的时候,我们可以通过构造方法来对其属性进行赋值。 Person p = new P

2021-01-05 14:54:08 53

原创 2020-12-26

Servlet的笔记1. 什么是Servlet?(1)Servlet(Server Applet),全称Java Servlet,其是用java编写的服务器端程序,用于交互式的浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。(2) Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下

2020-12-26 15:49:49 67

原创 2020-12-24

JavaWeb部署Tomcat  在2020版本之后的idea,部署tomcat的web项目操作更新了一波可以参考下面链接。  https://blog.csdn.net/qq_43441078/article/details/107912291

2020-12-24 22:53:46 45

原创 2020-12-24

JDBC的一些笔记整理(2)连接池(DataSource)的使用 连接池用于缓存连接! 当我们需要使用连接时, 可以不用再创建连接 ! 可以直接从连接池中获取连接. 当连接池中存在空闲连接时, 会将空闲连接给到程序使用. 当连接池中不存在空闲连接时, 且连接池未满时 , 则创建连接提供给程序使用 , 并在程序使用完毕后,缓存连接. 当连接池中不存在空闲连接时, 且连接池已满时 , 则排队等候空闲连接的出现. 注意: 使用连接池中的连接对象操作数据库时, 操作完毕依然

2020-12-24 17:48:29 73 1

原创 2020-12-23

JDBC的一些笔记整理  Java DataBase Connectivity ,即Java数据库连接,针对java对数据库进行操作时各大数据库厂商制定的一套标准接口,这套接口由各大数据库厂商进行了实现。  使用步骤:引入jar文件.加载数据库驱动 (JavaSE项目中可以省略 , JavaWeb项目必须编写此步骤)Class.forName(“com.mysql.jdbc.Driver”);通过驱动管理器, 获取JDBC连接对象.Connection conn = DriverManage

2020-12-23 23:20:11 50

原创 2020-12-19

MySQL数据库的分组统计(group by、having和count()的搭配使用)  下面有一张users表。  对数据库中的表的数据条数进行统计时,我们通常用count()聚合函数;select count(*) from users;  也可以通过对字段进行count()统计。select count(id) from users;  这时统计的结果和上一条数据值一样,但是如果字段中包含null值得数据时,统计得结果会缺失。  就比如我们拿sex字段进行统计时,sex中有条数据包

2020-12-19 16:31:31 86 1

原创 2020-12-19

MySQL数据库的查询(通配符和like关键字)  like关键字是作为模糊查询的一种方式,通常配合通配符一起使用。  通配符有%和 _ 这两种;  其中%表示匹配任意字符;_ 表示匹配单个字符;  具体演示实例:  可以看到,以张开头后接任意个字符的name字段的数据包括两条;以三结尾的name字段的数据只有一条;  下面来演示一下 _ 和 % 通配符搭配like关键字进行使用:  这个查询表示查找name开头有一个字符,中间为国,结尾任意字符的数据;...

2020-12-19 14:28:03 70 1

原创 2020-12-19

MySQL数据库的查询(is null和is not null)  一般字段数据中为varchar的数据类型,没有设置约束条件为非空时,且没有值时,可以显示为null;对字段值为空的条件进行判断查询需要用到is null 和 is not null。  我们对myusers表进行查询,可以看到如下结果:id为3的数据的sex字段为空,这时我们进行查找;  一般我们查找某个字段时,条件都会用age=20,这样的等于符号连接,而这个判断字符串值为空时则是用关键字表示。不能用:select * fr

2020-12-19 14:04:25 83 1

原创 2020-12-19

MySQL数据库的查询(order by)  当我们有需要对数据进行排序时,就可以使用order by语句。  上面的一张myusers表,当查询age字段时,order by放在表名的后面,接上字段名,desc表示降序排列。这就说明查询的是年龄字段以降序进行排列的所有表数据。(desc为降序,不添加为升序)。  上面展示的是对多列数据age,id进行降序排列;先排序的是age,后排序的为id,所以上面sql语句的意思是:对age进行降序排序后,再在年龄相同的情况下,对id也进行降序的排序。.

2020-12-19 13:15:26 37 1

原创 2020-12-19

MySQL数据库的查询(distinct和limit)distinct的关键字的用法:  当我们要查询的数据需要去重时,就需要使用到他了,下面举个例子就可以很容易知道他的作用了:    我们查询users这张表,查询出了表中的数据后,如果要想知道sex这个字段有什么取值,因为数据很多,这时如果查询全部,就会数据冗余。  接着我们通过distinct关键字:  当然,这里的数据查询好像挺废话的哈哈,如果例子是对班级去重,就比较合理,假如有某年级的学生表,上面有班级字段,如果把每个学生的信息都列出

2020-12-19 11:10:15 62 1

原创 2020-12-18

MySQL数据库的字段设置自增长创建表create table users( id int not null primary key auto_increment, name varchar(32) not null )engine=innodb default charset=utf8mb4;设置了字段id,name(id为自增长)。alter table users auto_increment=23(自己指定一个数字);当表创建后为其中插入一条数据时,如果以上述方式指定其自增长从

2020-12-18 21:41:32 60 4

原创 2020-12-07

JSON格式的数据解析简介:JSON: JavaScript Object Notation JS对象简谱 , 是一种轻量级的数据交换格式.语法格式:一个对象, 由一个大括号表示.括号中 描述对象的属性 . 通过键值对来描述对象的属性(可以理解为, 大括号中, 包含的是一个个的键值对.)格式:键与值之间使用冒号连接, 多个键值对之间使用逗号分隔.键值对的键 应使用引号引住 (通常Java解析时, 键不使用引号会报错. 而JS能正确解析.)键值对的值, 可以是JS中的任意类型的数据在J

2020-12-07 20:51:55 41

原创 2020-12-05

多线程的整理线程与进程进程: 是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间。线程: 是进程中的一个执行路径,共享一个内存空间,线程之间可以自由切换,并发执行。 一个进程最少有一个线程,线程实际上是在进程基础之上的进一步划分,一个进程启动之后,里面的若干执行路径又可以划分成若干个线程。线程和进程的概念就像是,一个多动能的音乐播放器,当进程执行时,该播放器运行,而线程相当于在播放器中可以同时进行的多种功能,比如下载歌曲,播放歌曲等等。线程在java中是抢占式调度的,

2020-12-05 00:06:20 45

原创 2020-12-01

java.io.File类的常用方法File类表示创建文件对象,他是一个抽象的文件,构造方法包含有:File​(String pathname),参数传递的是文件的路径。通过对象调用createNewFile()方法获取一个boolean类型的值。表示文件对象是否创建,true表示创建成功,false则表示文件已经存在。public class Demo { public static void main(String[] args) throws IOException {

2020-12-01 18:00:59 66 1

原创 2020-11-28

DateFormat类的两个常用方法format():参数传入一个日期类对象,将日期转换为字符串表示。parse():参数传入一个指定字符串格式日期,转换为日期类数据。DateFormat类是一个抽象类,它由SimpleDateFormat类继承并实现了这两个方法的使用。 //创建一个格式化日期类 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm ss"); //对当前时间进行字符串的

2020-11-28 15:25:57 53

原创 2020-11-28

BigDecimal的常用方法:System.out.println(0.1+0.2);在程序中输出该运算时,会产生运算的不精确。结果为:0.30000000000000004此时可以使用表示更为精确的常用类库BigDecimal创建的对象进行运算。 BigDecimal b = new BigDecimal("0.1"); BigDecimal c = new BigDecimal("0.2"); BigDecimal d = b.add(c);

2020-11-28 14:31:50 35

原创 2020-11-28

java.util.Arrays的一些方法toString(int[] arr):对参数数组进行打印。sort(int[] arr):对参数数组进行升序排序。binarySearch(int[] arr,int key):对指定数组进行二分查找,找到key值对应的下标。copyOf(int[] arr,int length):对数组进行动态扩容。//定义一个数组 int[] arr = {8,9,0,4,1,3,6,2}; //打印数组内容 Sy

2020-11-28 14:15:10 44

原创 2020-11-28

关于Math类的一些方法列举一些比较常用的:abs(int a) -该方法有多个重载方法:参数可为double,int,float,long用于返回参数中的数值的绝对值。min(int a,int a) -该方法有多个重载方法:参数可为int,float,double,long用于返回两个参数中的较小值。max(int a,int a) -该方法有多个重载方法:参数可为int,float,double,long用于返回两数中的较大值。round(double ) -该方法有多

2020-11-28 13:46:22 103

原创 2020-11-28

Objects类的一些方法使用objects作为一个工具类,在java.util.Objects中,存在的常用方法(静态)有:equals(Object a,Object b)该方法用于比较两个对象是否相同,当对象为null时依然可以使用,相比于equals()方法而言,如果外部传递过来调用该方法的对象为null,则出现空指针异常。下面是Objects类的equals()方法的源码:public static boolean equals(Object a, Object b) {

2020-11-28 12:23:38 41

原创 2020-11-18

关于处理异常中finally的面试题首先明确什么是异常?异常是在程序中导致程序中断运行的一种指令流。比如最常举例的被除数除以除数,若除数为零,则出错。一般当程序运行时,如果出现异常,则会中断执行。该过程包括:1.JVM将会创建一个异常类对象,该对象包含异常信息。2.main方法未对该异常进行处理时,自动将异常抛给main的执行者JVM。3.JVM对异常信息进行响应(将异常信息显示到控制台,中断处理。)int arr[] = new int[3];int b = arr[3];出现了

2020-11-18 17:25:18 38

原创 2020-11-16

栈与堆的一些理解当程序创建一个变量或对象的引用时,视为在栈内存中开辟一个新得空间,用来存储这些数据。java栈的区域很小,大约2m左右,特点是存取的速度特别快。栈存储的特点是先进后出。这相当于一个子弹夹,当往里装子弹后,先装进去的没有那个快被使用,而是最后装进去的最先使用。存储速度快的原因:栈内存, 通过 ‘栈指针’ 来创建空间与释放空间 !指针向下移动, 会创建新的内存, 向上移动, 会释放这些内存 !这里可以想象一下填装子弹的过程。(个人理解:刚开始标记的是子弹夹的入口,后来每装进一枚

2020-11-16 12:52:46 62

空空如也

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

TA关注的人

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