- 博客(106)
- 收藏
- 关注
原创 347. 前 K 个高频元素——大顶堆、小顶堆
给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。java中实现大顶堆和小顶堆的数据结构---------优先级队列PriorityQueue。输入: nums = [1,1,1,2,2,3], k = 2。...
2022-08-30 09:49:12
384
原创 lecode:239. 滑动窗口最大值-----单调队列解法
给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。输入:nums = [1,3,-1,-3,5,3,6,7], k = 3。滑动窗口的位置 最大值。输出:[3,3,5,5,6,7]返回 滑动窗口中的最大值。...
2022-08-29 21:36:14
262
原创 手写单例模式
例如Windows 中只能打开一个任务管理器,这样可以避免因打开多个任务管理器窗口而造成内存资源的浪费,或出现各个窗口显示内容的不一致等错误。
2022-08-24 20:20:45
187
原创 Springboot-04-JSR303校验 和 多环境配置及配置文件
目录1、JSR303校验2、多环境配置及配置文件2.1 多配置文件.properties2.2 yaml的多文档块@Validated如果没有需要导入依赖 在实验业务时,特别是在登录时,可能需要验证前端传送过来的帐号密码是否符合要求:例如假如帐号是手机号,我们需要验证手机号是否合法(长度是否是11位,等等),此外,如果前端传送的是对象,在后端接收时需要验证重要字段是否符合要求。2、多环境配置及配置文件2.1 多配置文件.properties配置文件优先级排序1、file:./config
2022-06-20 14:46:31
224
原创 Springboot-03-ymal
2、注入配置文件yaml可以直接给实体类赋值 @ConfigurationProperties(prefix = "person") //配置绑定如果报错,导入依赖即可 2.3通过指定文件赋值
2022-06-20 10:10:30
102
原创 Springboot-02-自动配置
简单来说就是用注解来对一些常规的配置做默认配置,简化xml配置内容,使你的项目能够快速运行。pom.xml其中它主要是依赖一个父项目,主要是管理项目的资源过滤及插件! @springbootapplication 标注这个类是一个springboot应用启动类下的所有资源被导入在启动类中可以看到@SpringBootApplication注解,它是SpringBoot的核心注解,也是一个组合注解。我们进入这个注解可以看到里面又包含了其它很多注解,其中三个注解尤为重要。@SpringBootConfigur
2022-06-20 09:00:00
117
原创 Linux安装MySql5.7
目录1、下载2、上传到服务器3、解压、重命名4、添加用户组和权限5、配置my.config6、初始化7、进入数据库,修改密码1、下载MySQL :: Download MySQL Community Server2、上传到服务器可是使用Xftp等3、解压、重命名4、添加用户组和权限并创建保存数据的文件夹data把所有文件夹的权限都给mysql用户5、配置my.config[mysqld]bind-addres..
2022-03-26 15:55:11
1168
原创 Linux下安装JDK
1、下载jdk2、上传到服务器端这里使用Xftp3、解压、重命名名字长,重新名个名字删除源文件,别站在空间4、配置JDK的环境变量/etc/profile文件的改变会涉及到系统的环境,也就是有关Linux环境变量的东西进入/etc/profile文件编辑i保存退出:wq这里直接在Xftp打开文件(粘贴)更新文件5、测试...
2022-03-26 14:51:07
1341
原创 JSON: JavaScript Object Notation(JavaScript 对象表示法)
JSON: JavaScript Object Notation(JavaScript 对象表示法)JSON 是存储和交换文本信息的语法,类似 XML。JSON 比 XML 更小、更快,更易解析。JSON《=======》JAVA对象
2022-03-24 19:29:31
1755
原创 SpringMVC04——数据处理、乱码问题
一、数据处理1、提交的域名称和处理方法的参数名一致可以直接进行接收,处理。2、提交的域名称和处理方法的参数名不一致//@RequestParam("username") : username提交的域的名称 . @RequestMapping("/hello") public String hello(@RequestParam("username") String name){ System.out.println(name); return "hello";
2022-03-24 16:01:48
204
原创 SpringMVC03——Controller 、 RequestMapping、结果跳转
一、Controller二、注解Controller三、RequestMapping四、 RestFul风格五、重定向和转发
2022-03-24 15:33:30
1033
原创 SpringMVC02——注解开发
1、配置DIspatchServlet<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://
2022-03-24 09:03:52
444
原创 SpringMVC01——原理解析
一、Spring MVC的特点: 1. 轻量级,简单易学 2. 高效 , 基于请求响应的MVC框架 3. 与Spring兼容性好,无缝结合 4. 约定优于配置 5. 功能强大:RESTful、数据验证、格式化、本地化、主题等 6. 简洁灵活 二、SpringMVC原理Spring的web框架围绕DispatcherServlet [ 调度Servlet ] 设计。我们假设请求的url为 : http://localhos...
2022-03-23 21:22:56
185
原创 Cookie、Session
1、会话 会话:用户打开一个浏览器,点击了很多超链接,访问多个web资源,关闭浏览器,这个过程可以称之为会话; 有状态会话:一个同学来过教室,下次再来教室,我们会知道这个同学,曾经来过,称之为有状态会话;你能怎么证明你是学校的学生? 你 学校1. 发票 学校给你发票 2. 学校登记 学校标记你来过了 一个网站,怎么证明你来过? 客户端 服务端 1. 服务端给客户端一个 信件,客户端下次访问服务端带上信件就可以了; cookie 2. 服务器登记你来过了,下次你来
2022-03-23 15:49:10
129
原创 Spring07——声明式事务
一、事务的四大特性(ACID)原子性(Atomicity):原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚。 一致性(Consistency):一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。假设用户A和用户B两者的钱加起来一共是5000,那么不管A和B之间如何转账,转几次账,事务结束后两个用户的钱相加起来应该还得是5000,这就是事务的一致性。 隔离性(Isolation):指多线程环境下,一个线程中的事务不能被
2022-03-23 15:36:59
157
原创 Spring06——整和Mybatis
1、引入依赖 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.7</version> </dependency>2、实体类public class Us
2022-03-22 22:10:58
188
原创 Mybaties12——缓存
缓存?存在内存中的临时数据。将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从磁盘上(关系型数据库 数据文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题。为什么使用缓存?减少和数据库的交互次数,减少系统开销,提高系统效率。 什么样的数据能使用缓存? 经常查询并且不经常改变的数据。Mybatis缓存 mybatis – MyBatis 3 | XML 映射器MyBatis系统中默认定义了两级缓存:一级缓存和二级缓存 默认情况下,只有
2022-03-22 19:16:35
179
原创 Mybatis11——UUID、动态SQL(choose(when...,otherwise)、where、set、trim、foreach、sql片段)
一、UUIDUUID 是指Universally Unique Identifier,翻译为中文是通用唯一识别码,UUID 的目的是让分布式系统中的所有元素都能有唯一的识别信息。如此一来,每个人都可以创建不与其它人冲突的 UUID,就不需考虑数据库创建时的名称重复问题。UUID 是由一组32位数的16进制数字所构成,是故 UUID 理论上的总数为1632=2128,约等于3.4 x 10123。也就是说若每纳秒产生1百万个 UUID,要花100亿年才会将所有 UUID 用完public c
2022-03-22 16:11:52
835
原创 Mybatis10——Lombok、数据库一对多、多对一(结果映射,查询映射)-->(连表查询和子查询)
一、Lomboklombok可以通过简单的注解的形式来帮助我们简化和消除一些必须有但显得很臃肿的Java代码,比如常见的Getter&Setter、toString()、构造函数等等。lombok不仅方便编写,同时也让我们的代码更简洁。1、导入依赖 <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <dependency>
2022-03-22 12:50:25
1399
原创 Mybatis09——注解开发、执行流程分析
1、接口 @Select("select * from user") List<User> getUserAll();2、配置 <mappers><!-- <mapper resource="mapper/UserMapper.xml"/>--> <mapper class="com.jia.mapper.UserMapper"/> </mappers>3
2022-03-22 09:29:02
219
原创 Mybatis08——分页
一、使用Limit实现分页 #语法 SELECT * FROM table LIMIT stratIndex,pageSize SELECT * FROM table LIMIT 5,10; // 检索记录行 6-15SELECT * FROM table LIMIT 5; // 相当于【0,5】1、接口 List<User> getUser(Map<String,Object> map);2、mapper <select id="g
2022-03-20 21:00:57
445
原创 Mybatis07——日志
Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种工具: Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种工具: SLF4J Apache Commons Logging Log4j 2 Log4j JDK logging ...
2022-03-20 20:26:52
177
原创 Mybatis06——生命周期和作用域、ResultMap结果集映射
一、生命周期和作用域错误的使用会导致非常严重的并发问题。 SqlSessionFactoryBuilder 的作用在于创建 SqlSessionFactory,创建成功后, Sql Session Factory Builder 就失去了作用,因此 SqlSessionFactoryBuilder 实例的最佳作用域是方法作用域。 SqlSessionFactory 可以被认为是一个数据库连接池,它的作用是创建 SqlSession 接口对象。MyBatis 的本质就是 Java
2022-03-20 19:44:09
258
原创 Mybatis05——mybatis_config.xml配置
一、核心配置文件mybatis_config.xmlconfiguration(配置) properties(属性) settings(设置) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂) plugins(插件) environments(环境配置) environment(环境变量) transactionMana
2022-03-20 19:03:26
2752
原创 Mybatis04——Map、模糊查询
int updateUser(User user);<update id="updateUser" parameterType="com.jia.pojo.User"> update mybatis.user set name=#{name},pwd=#{pwd} where id = #{id}</update>修改时如何只修改传入的参数?
2022-03-20 17:49:06
208
原创 Spring学习05——AOP、AOP的三种实现方式
一、什么是AOPAOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现 程序功能的统一维护的一种技术。利用AOP可以对业务逻辑的各个部分进行隔离,从而使 得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。二、Aop在Spring中的作用 提供声明式事务;允许用户自定义切面 横切关注点:跨越应用程序多个模块的方法或功能。即是,与我们业务逻辑无关的,但是我们需要 关注的部分,就是.
2022-03-20 16:18:16
244
原创 代理模式——静态代理和动态代理
一、静态代理1、租房//抽象角色:租房 public interface Rent { public void rent(); }2、房东//真实角色: 房东,房东要出租房子 public class Host implements Rent{ public void rent() { System.out.println("房屋出租"); } }3、代理角色//代理角色:中介 public class Proxy im
2022-03-20 14:48:36
255
原创 Spring学习04——使用注解开发小结
一、Bean的实现<!--指定注解扫描包--> <context:component-scan base-package="com.kuang.pojo"/>@Component("user") // 相当于配置文件中 <bean id="user" class="当前注解的类"/> public class User { public String name = "张三"; }二、属性注入使用注解注入属性1. 可以不用提供set方
2022-03-20 11:31:39
202
原创 Spring学习03——bean的作用域、bean的自动装填
一、bean的作用域Spring中,那些组成应用程序的主体及由Spring IoC容器所管理的对象,被称之为bean。简单地讲, bean就是由IoC容器初始化、装配及管理的对象。request、session作用域仅在基于web的应用中使用,只能用在基于web的Spring Application Context环境。Singleton:(默认)Singleton是单例类型,当一个bean的作用域为Singleton,那么Spring IoC容器中只会存在一个共享的bean实例,并
2022-03-20 10:44:24
387
原创 Spring学习02——依赖注入(DI)、Spring配置
控制 : 谁来控制对象的创建 , 传统应用程序的对象是由程序本身控制创建的 , 使用Spring后 , 对象是 由Spring来创建的 反转 : 程序本身不创建对象 , 而变成被动的接收对象Hello 对象是谁创建的 ? [显然是springc创建的]Hello 对象的属性是怎么设置的 ? 【hello 对象的属性是由Spring容器通过set方法设置的 】我们Hello的set删除一、依赖注入(DI)依赖注入(Dependency Injection,DI)。 依赖 : 指.
2022-03-20 09:47:22
326
原创 Spring学习01——hello,spring
Spring | Homehttps://repo.spring.io/libs-release-local/org/springframework/spring/https://github.com/spring-projects Spring中文版 - 在线API中文手册 - 码工具1、历史2002年,Rod Jahnson首次推出了Spring框架雏形interface21框架。 2004年3月24日,Spring框架以interface21框架为基础,经过重新设计
2022-03-18 10:18:24
520
原创 反射——创建对象、性能测试、操作泛型、操作注解
1、动态创建对象public class test2 { public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, NoSuchMethodException, InvocationTargetException, NoSuchFieldException { Class c1 = Class.for.
2022-03-16 17:11:54
667
原创 注解、反射
1、注解(Annotation)Annotation的作用 不是程序本身 , 可以对程序作出解释 可以被其他程序读取. Annotation的格式注解是以"@注释名"在代码中存在的 还可以添加一些参数值 , 例如:@SuppressWarnings(value="unchecked") 内置注解@Override重写@Deprecated表示已废弃方法属性@SuppressWarnings抑制编译时的警告信息元注解元注解的作用就是负责注解其他注解...
2022-03-16 16:01:47
709
原创 Mybatis03——增删改
mybatis – MyBatis 3 | XML 映射器(数据库的增删改需要提交事务)增int insertUser(User user);//编写接口编写对应的mapper对应的接口<insert id="insertUser" parameterType="com.jia.pojo.User"> insert into mybatis.user(id,name ,pwd) value (#{id},#{name},#{pwd})</insert>
2022-03-16 10:06:30
650
原创 AJAX入门——不加载整个页面,与服务器交换数据并更新部分网页内容
AJAX = Asynchronous JavaScript And XML = 异步的JavaScript和XML客户端和服务器同步和异步 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。实现方式1——javascript<input type="submit" onclick="fun()">-----------------------------------------------------------------------
2022-03-11 16:19:36
1624
原创 tomcat也需要mysql驱动 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
明明有mysql驱动,tomcat就是找不到,而且单元测试也通过(原来tomcat也需要mysql驱动)将jdbc的jar包复制到tomcat的lib目录下 明明导入了mysql驱动并且add进项目了,但是却显示找不到驱动。原因:这是因为tomcat找不到mysql的驱动解决方法:mysql的驱动jar包导入tomcat软件的lib目录下。...
2022-03-11 09:39:15
1732
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人