![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 68
凤梨..
积极向上!!!
展开
-
SSM搭建-第三章:Spring整合SpringMVC框架
第三章:Spring整合SpringMVC框架1. 搭建和测试SpringMVC的开发环境1. 在web.xml中配置DispatcherServlet前端控制器原创 2022-05-14 21:12:15 · 358 阅读 · 0 评论 -
SSM搭建-第二章:Spring框架代码的编写
第二章:Spring框架代码的编写1. 搭建和测试Spring的开发环境1. 在resources下创建spring.xml的配置文件,编写具体的配置信息。<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"原创 2022-05-14 17:45:16 · 218 阅读 · 0 评论 -
SSM搭建-第一章:搭建整合环境
第一章:搭建整合环境1.搭建整合环境1. 整合说明:SSM整合可以使用多种方式,咱们会选择XML + 注解的方式2. 整合的思路1. 先搭建整合的环境2. 先把Spring的配置搭建完成3. 再使用Spring整合SpringMVC框架4. 最后使用Spring整合MyBatis框架3. 创建数...原创 2022-05-14 17:41:55 · 319 阅读 · 0 评论 -
Spring(二)SpringMVC常用注解
目录一、RequestMapping注解1.RequestMapping的属性2.RequestMapping的请求参数绑定(1). 绑定机制(2). 支持的数据类型二、配置过滤器三、常用的注解1.RequestParam注解2. RequestBody注解四、RestFul风格1.概念2.功能3.基本使用一、RequestMapping注解RequestMapping注解的作用是建立请求URL和处理方法之间的对应关系RequestMap.原创 2022-04-23 16:47:15 · 1063 阅读 · 0 评论 -
Spring (一)——Spring框架的介绍
servlet :1.前端数据处理2.业务处理 3.数据库交互Spring框架的介绍1. Spring框架的概述Spring是一个开放源代码的设计层面框架,它解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java开发框架,由Rod Johnson在其著作Expert One-On-One J2EEDevelopment and Design中阐述...原创 2022-04-23 14:26:57 · 188 阅读 · 0 评论 -
SpringMVC配置和基本原理
第一章:Java web的发展历史一.Model I和Model II1.Model I开发模式Model1的开发模式是:JSP+JavaBean的模式,它的核心是Jsp页面,在这个页面中,Jsp页面负责整合页面和JavaBean(业务逻辑),而且渲染页面,它的基本流程如下:这样的设计模式到这一个jsp页面负责了视图的展示和业务流程的控制高度耦合的结果是Jsp代码十分复杂,后期维护困难!2.Model II开发模式在Model II的模式下。利用jsp页面、servlet和Jav原创 2022-04-21 20:56:36 · 186 阅读 · 0 评论 -
介绍Nginx与Nginx的安装
1.什么是NginxNginx(engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。nginx是一个高性能的反向代理和负载均衡中间件。2.nginx的优点1)在性能上,Nginx占用很少的系统资源,能支持更多的并发连接,达到更高的访问效率;2)在功能上,Ngi nx是优秀的代理服务器和负载均衡服务器;3)在安装配置上,Nginx安装简单、配置灵活;4)Nginx支持热部署,启动速度特别快,还可以在不间断服务的情况下对软件版.原创 2022-04-20 20:56:35 · 469 阅读 · 0 评论 -
mybatis事务和缓存
一、事务存在的意义1.事务是什么?多个操作同时进行,那么同时成功,那么同时失败。这就是事务。事务有四个特性:一致性、持久性、原子性、隔离性比如现在有两张表,老师和学生,删除这个老师(删除他的学生)两种表 delete from 老师 where id = ?delete from 学生 where t_id = ?如果两个sql同时运行,必须两个都成功。//配置事务的类型,是用本地事务策略<transactionManager type="JDBC"><原创 2022-04-14 23:11:09 · 1180 阅读 · 0 评论 -
mybatis关联映射
关联映射一、创建表结构1.学生表首先在数据库里建一个表。SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for student-- ----------------------------DROP TABLE IF EXISTS `student`;CREATE TABLE `student` ( `id` int(11) .原创 2022-04-13 20:19:07 · 515 阅读 · 0 评论 -
mybatis的增删改查
首先在Navicat咱们的数据库中新建一个student的表,添加上字段,id,usernam,phone,sex,age。写上一些数据。接着看一下怎么完成对它的查询。第一章:代理Dao方式的CRUD操作1. 代理Dao方式的增删改查1. 创建项目2. UserDao接口代码import com.qcby.entity.User;import java.util.List;public interface UserDao { /*...原创 2022-04-08 17:38:16 · 1125 阅读 · 0 评论 -
配置MyBatis
MyBatis ONE第一章:框架的概述JDBC存在的问题我们要想研究mybatis就必须知道jdbc所存在的问题,那我那么我们首先来复习一下jdbc操作数据库的大致流程1.加载数据库驱动 2.创建并获取数据库连接对象connection 3.通过连接对象获取会话对象statement 4.编写sql语句 5.如果有参数的话需要通过Statement设置参数 6.执行sql语句并获取结果 7.关闭资源完成这些对象的创建之后,下一步关ResultSet对象,关闭S.原创 2022-04-07 21:14:45 · 224 阅读 · 0 评论 -
Maven打包操作
对于企业级项目,无论是进行本地测试,还是测试环境测试以及最终的项目上线,都会涉及项目的打包操作。对于每个环境下的项目打包,对应的项目所需要的配置资源都会有所区别,实现打包的方式有很多种,可以通过ant,或者通过idea 自带的打包功能实现项目打包,但当项目很大并且需要的外界配置很多时,此时打包的配置就会异常复杂,对于maven 项目,我们可以用过 pom.xml 配置的方式来实现打包时的环境选择,相比较其他形式打包工具,通过maven 只需要通过简单的配置,就可以轻松完成不同环境下项目的整体打包。使用.原创 2022-04-07 19:44:10 · 4320 阅读 · 0 评论 -
MQ,KAFKA,消息队列
什么是MQMessage Query(MQ),消息队列中间件,很多初学者认为,MQ通过消息的发送和接受来实现程序的异步和解耦,mq主要用于异步操作,这个不是mq的真正目的,只不过是mq的应用,mq真正的目的是为了通讯。他屏蔽了复杂的通讯协议,像常用的dubbo,http协议都是同步的。这两种协议很难实现双端通讯,A调用B,B也可以主动调用A,而且不支持长连接。mq做的就是在这些协议上构建一个简单协议——生产者、消费者模型,mq带给我们的不是底层的通讯协议,而是更高层次的通讯模型。他定义了两个对象:发原创 2022-04-05 23:47:59 · 897 阅读 · 0 评论 -
kafka介绍
目录一、kafka介绍1.kafka简单介绍2.kafka使用场景3.kafka基本概念4.kafka的安装5.java实现消息的生产和消费优秀的程序架构设计需要遵循的守则:低耦合,高内聚。一、kafka介绍1.kafka简单介绍kafka是一款分布式、支持分区的、多副本,基于zookeeper协调的分布式消息系统。最大的特性就是可以实时处理大量数据来满足需求。2.kafka使用场景1,日志收集:可以用kafka收集各种服务的日志 ,通过已统一接口的形式原创 2022-04-05 23:46:08 · 17106 阅读 · 0 评论 -
什么是MQ?
什么是MQMessage Query(MQ),消息队列中间件,很多初学者认为,MQ通过消息的发送和接受来实现程序的异步和解耦,mq主要用于异步操作,这个不是mq的真正目的,只不过是mq的应用,mq真正的目的是为了通讯。他屏蔽了复杂的通讯协议,像常用的dubbo,http协议都是同步的。比如:A服务:java写的 B服务:c++写的这两种协议很难实现 双端通讯,A调用B,B也可以主动调用A,而且不支持长连接。mq做的就是在这些协议上构建一个简单协议——生产者、消费者模型,mq带给我们的...原创 2022-04-05 18:26:07 · 9953 阅读 · 0 评论 -
maven
1.maven简介1.1 简介maven最主要体现在两个词上:项目和管理。maven给我们整个开发团队找出了一种能够更加科学的去管理我们项目的思想。maven通过使用配置文件的方式使得项目在管理和交接的过程中成本变得非常低。maven提出了一种叫做maven仓库的概念,使得我们可以将第三方和我们需要引用的项目都放置在maven仓库当中。如果其他人或项目组也需要使用,就可以直接通过maven进行配置就行。这样就可以将人员成本、沟通成本等等都进行降低。如果还不理解我们举个例子:...原创 2022-04-04 21:02:21 · 611 阅读 · 0 评论 -
redis是干什么的
1.redis是干什么的Redis是一个高速缓存数据库,是一种key-value(键值对)形式的存储系统,非关系型数据库。2.redis的特点Redis的数据 是放在内存里的,所以读写会很快,Redis才能实现持久化(两种实现方式)客户端——>java后端3.redis的用处1.用作缓存,优点(1.可以减轻数据库压力 2.可以提高查询效率)2.点赞数,访问量3.鉴权,cookie和session登陆成功后,将对应的可以和value放到redis里,下次如果再进来原创 2022-03-22 19:39:53 · 35480 阅读 · 0 评论 -
算法题:实现一个栈,要求实现该栈的出栈,入栈。返回最小值的时间复杂度为O(1)
实现一个栈,要求实现该栈的出栈,入栈。返回最小值的时间复杂度为O(1)解题思路:两个栈,min是存储最小值的。有这样一组数据第一个方法:push方法,往mun里面入栈,5入栈,判断mun有没有数据同时往两个栈里放数据7入栈,min里数据比mun里数据小就不用插入数据下一个数据4,判断有数据 4比5小,放入min4放入min同理插入2之后push完方法。有 pop方法:出栈判断栈顶两个是否相等,相等出栈。不相等左边出栈...原创 2022-03-19 11:37:17 · 390 阅读 · 0 评论 -
栈和队列2
以上次队列为例泛型:泛指一切数据类型需要float,就创建一个float类型的数组,需要char就创建char类型数组。如果我们只定义了int类型的数据,所能存储下来的数据类型有限。所以想到了泛型。在类后面打上"<>",里面可以写任意东西。比如类型都为王public class Queue<王> { private 王[] arr; private int f =0; //放入 private int r =0; //原创 2022-03-19 11:00:03 · 399 阅读 · 0 评论 -
前端的框架iframe
定义和用法iframe 元素会创建包含另外一个文档的内联框架(即行内框架)。用一个前端的框架解决。系统中有各种各样的功能模块。把这些模块弄到一个里面。<iframe src="http://wxy.hbu.cn"></iframe>//框架标签框架标签在一个页面中嵌套另一个页面。src 属性,知道域名找一个载体,可以承载好多个模块。建一个user页面,把原先main里的删掉,就剩一个iframe。访问router,跳到user,在mai.原创 2022-03-18 16:13:44 · 1842 阅读 · 0 评论 -
Object:所有类的超类
Object:所有类的超类Object默认是所有类的父类面试点:object默认自带的几个方法equals: 比较的是两个句柄引用的值是否是同一个地址,相等指两个句柄引用的是同一个对象。getclass:反射获取类信息。hashCode:获取对象的散列码 散列:本身代表无规则,分布的相对均匀。就相当于把一堆数据分布,大体上分布的均匀。通常用数组实现散列。notify:唤醒线程。 让线程从等待状态进入就绪状态notifyAll:唤醒全部线程。toString:默认.原创 2022-03-22 21:40:09 · 58 阅读 · 0 评论 -
hashCode相关面试点
如果有两个不同的对象,他们的hashCode一定不相等。答:不对。如果两个对象的hashCode不相等,那他俩一定是不同的对象。答:对。重写equals注意事项:一定要重写hashCode方法。为什么重写equals要重写hashCode?因为hashmap中需要他俩协同工作,由equals判断两个对象值是否相等,然后根据hashcode存储。字符串不一样,对象地址不一样,散列码不一样。s和t 的hashCode是一样的。只要是new出来的和其他的地址都不一样原创 2022-03-18 15:59:48 · 141 阅读 · 0 评论 -
了解——堆排序
堆排序完全二叉树:要求数据必须从上到下,从左到右依次进行平铺满。特殊的二叉树。1.堆:大顶堆 小顶堆在完全二叉树基础之上,每个节点的值都大于或等于其左右孩子的值。在完全二叉树基础之上,每个节点的值都小于或等于其左右孩子的值。堆排序过程1构建大顶堆2维护大顶堆3想要3的子节点,详细讲述:定义两个标:parent Child首先入parent一个一个去找,父节点和孩子当中最大值进行对比,大的值存在父节点当中,小的..原创 2022-03-16 22:48:25 · 354 阅读 · 0 评论 -
了解——基数排序
基数排序从个位开始排序,然后依次十位,百位等。从个位从小到大排序......有一些数据需要十个桶存放这些数据第一轮排序先按照个位进行排序排完序取出:发现还是无序数组,然后进行十位排序下一步排百位依次放进去就排好序了。1.看图写逻辑 2.纠正细节桶怎么表示?——> 二维数组先把二维数组画出来。代码表示:int[][] bucket = new int[10][arr.length]; ...原创 2022-03-15 15:42:11 · 68 阅读 · 0 评论 -
java基础简答题1
1.接口和抽象类的区别1.接口是行为的抽象,是一种行为的规范,接口实现的目的主要是多继承;2.抽象类是对类功能的提取,是一种模板设计2.==和eqauls()的区别?==是运算符,用于比较两个变量是否相等,对于基本类型而言比较的是变量的值,对于对象类型而言比较的是对象的地址. equals() 是Object类的方法,用于比较两个对象内容是否相等.默认Object类的 equals() 实现如下:public class Object { ...... .原创 2022-03-14 22:06:09 · 797 阅读 · 0 评论 -
java基础易错题1
1.String s = new String("xyz");创建了几个StringObject?A:两个或者一个都有可能B:两个C:一个D:三个答:B解析:执行String b = new String("xyz"),字符串常量值,数据共享的话,String aString = "123";String bString = "123";System.out.println(aString)String s = “123”;这个语句有几个对象产生?若字.原创 2022-03-14 21:55:17 · 1443 阅读 · 1 评论 -
java静态代理
编写代理类:实现目标的接口或者直接继承目标类,完成逻辑的修改接口实现方式:关于接口的方式,我们在实现接口的时候,目标类和代理类都必须实现目标接口当中所实现的方法,从某种意义上代理类就可以帮我们实现目标类当中的方法,并且代理类还可以有自己的扩展方法。举例子:1最开始我们想买东西就必须代购,因为只有代购员才知道真实的工厂在哪里代码实现,一个包proxy,建一个目标接口买衣服ByClothespublic interface ByClothes { public vo原创 2022-03-08 20:49:20 · 68 阅读 · 0 评论 -
java异常体系
异常层次结构图一、java异常体系Thorwable类(表示可抛出)是所有异常和错误的超类,两个直接子类为Error和Exception,分别表示错误和异常。其中异常类Exception又分为运行时异常(RuntimeException)和非运行时异常, 这两种异常有很大的区别,也称之为不检查异常(Unchecked Exception)和检查异常(Checked Exception)1、Error与ExceptionError是程序无法处理的错误,它是由JVM产生和抛出的,比如Ou..原创 2022-03-08 18:34:36 · 1164 阅读 · 0 评论 -
java内部类
内部类是一个定义在另一个类中的类。那为什么要使用内部类呢?其主要原因有以下三点:内部类方法可以访问该类定义所在的作用域中的数据,包括私有数据 内部类可以对统一包中的其他数据隐藏起来,增强面向对象的封装性 当定义一个回调函数且不想编写大量代码时,使用匿名内部类比较便捷通过代码来理解一下:先创建人Person这样一个类,看一下如何在类中创建内部类public class Person { //对象属性 private String[] sex = {"男","女"};.原创 2022-03-07 22:20:12 · 657 阅读 · 0 评论 -
前后端代码写的位置
WebContent文件夹下:所有的前端写在这里。Java Resources: src: 所有的java代码写在这个里面。右击WebContent new HTML File然后点Window最后一行再点Server的Runtime点add,选择8.0选择文件夹JRE选择jre.8.0最后点finish,Apple右击html,点击Run As 里的 Run on Serverfinish然后输入东...原创 2022-03-07 16:41:36 · 5535 阅读 · 0 评论 -
新建一个动态项目
一、首先创建一个动态的web项目正在上传…重新上传取消原创 2022-03-07 14:49:29 · 354 阅读 · 0 评论 -
前端页面+ servlet基础
一、servlet本质:java代码 所有的数据存储在数据库。怎么链接数据库,有一套行为规范叫jdbc。确定了到底怎么链接的。有几套常用的数据库如果没有行为规范,要编写一套链接程序。每个都会给一套链接程序,不利于计算机的更新替代,比如先用sqlServer,然后想换Oeacle,那整个编程逻辑都要重新写一遍,改动量太大。Oeacle 全套产品,一个java应用程序,一个Oeacle,还有mysql.一个java应用程序一开始属于Sum公司 , 想到了jdbc:行为规范(相当于.原创 2022-03-07 14:22:37 · 602 阅读 · 0 评论 -
char存储
char存储一、5个数字就能表示 0-25516位确定x的位置,再16位确定y的值,后24位 最后排列一个像素点就消耗56bit。200个像素点 至少要发送11200比特信息。二、char存储就是存储Unicode编码char 类型原本用于表示单个字符。不过,现在情况已经有所变化。 如今,有些 Unicode字符可以用一个 char值描述,另外一些 Unicode 字符则需要两个 字节值。三、记事本显示原理这些形状的编码是先存在一个库里,事先有一个库,记录的是编码,显示.原创 2022-03-07 13:48:50 · 1155 阅读 · 0 评论 -
--构造器--
1、方法区java进入方法区,所有的信息会记录在方法区。2、栈区域假设有很多方法,栈结构:先入后出,后入先出。程序内部控制程序的执行顺序的是栈。线程:从进来到出去,调用的过程,线程的本质是栈。...原创 2022-01-12 16:19:14 · 139 阅读 · 0 评论 -
输入、输出,循环、大数值、数组
一、输入输出1)数组类型Scanner(System.in)可见这个" in" :输入;System.out.println(a); 可见 "out" :输出。import java.util.*;public class Test{ public static void main(String[] aaa){ Scanner xx = new Scanner(System.in); int[] arr = new int[10];原创 2022-01-06 21:54:34 · 287 阅读 · 0 评论 -
StringBuffer
StringBuffer的内部原理原创 2022-01-06 20:37:38 · 184 阅读 · 0 评论