自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小Gd 的博客

给自己的学习做一份记录

  • 博客(69)
  • 资源 (4)
  • 收藏
  • 关注

原创 leetcode刷题目录

leetcode专栏下置顶文章,为刷题做一个记录,按照leetcode官网题库栏目右侧的“标签分类”,每个分类做一个表格,记录做过的题,不记录解法,持续更新。。。字符串题目编号题目名称做题日期应用1576替换所有的问号2020-02-22可以生成一个字母组成的字符间不重复的字符串...

2021-02-22 18:47:04 291

原创 双指针算法(持续更新)

算法解释

2021-07-06 19:24:24 397 4

原创 贪心算法(持续更新)

理解贪心算法贪心算法采用贪心的策略,保证每次操作都是局部最优的,从而使最后得到的结果是全局最优的。“田忌赛马”是大家耳熟能详的典故,齐威王和田忌都有上,中,下三个等级的马,整体差别不大,但是齐威王每个等级的马都比田忌的马跑得快。如果齐威王和田忌每次都使用相同等级的马进行比赛,那么田忌必输无疑。孙膑给田忌想了个办法,如下图:全局结果是局部结果的简单求和,且局部结果互不相干,因此局部最优的策略也同样是全局最优的策略,田忌可以获胜。分配问题455. 分发饼干题目描述有一群孩子和一堆饼干,每个孩子

2021-06-29 19:33:20 582 17

原创 JSON简单了解及后台处理

什么是JSON?JSON(JavaScript Object Notation,JS对象标记)是一种轻量级数据交换格式,目前使用特别广泛。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。        在JavaScript语言中,一切都是对象,任何JavaScript支持的类型都可以通

2021-06-21 22:23:05 481

原创 SpringMVC—请求返回数据中文乱码

乱码问题现象1、创建提交数据的表单form.jsp<%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head> <title>Title</title></head><body> <form action="/e/t" method="post"> <input type

2021-06-17 21:57:19 405 2

原创 SpringMVC—数据处理

接受请求参数1、提交的域名称和处理方法的参数名一致提交数据:http://localhost:8080/hello?name=stitch处理方法@RequestMapping("/hello")public String hello(String name){ System.out.println(name); return "hello";}后台输出:stitch2、提交的域名称和处理方法的参数名不一致提交数据:http://localhost:8080/hello?userna

2021-06-16 22:01:45 86

原创 SpringMVC—结果跳转方式

ModelAndView设置ModelAndView,根据View的名称和视图解析器,跳转到指定的页面。页面:{视图解析器前缀} + 视图名称 + {视图解析器后缀}<!--视图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver"> <!--前缀-->

2021-06-15 21:48:12 117 1

原创 SpringMVC:Controller及RestFul风格

控制器Controller控制器负责提供访问应用程序的行为,通常通过接口定义或注解定义两种方式实现。控制器负责解析用户的请求并将其转换为一个模型。在SpringMVC中一个控制器类可以包含多个方法在SpringMVC中,对于Controller的配置方式有很多种。实现控制器的方式公共配置文件web.xml配置文件<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xm

2021-05-31 23:05:29 274 4

原创 SpringMVC—注解开发

新建web项目新建普通maven项目,添加web框架支持:创建module后,右键Add Framework Support,弹出对话框中选择Web Application,IDEA会自动导入相关的包并添加一些Web项目的配置导入相关jar包<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.

2021-05-18 22:41:49 101 2

原创 SpringMVC—DispatchServlet运行流程

DispatchServlet—通用的客户端请求处理图中实线部分为SpringMVC代为处理,虚线部分为自行处理。1、DispatcherServlet表示前置控制器,是整个SpringMVC的控制中心。用户发出请求,DispatcherServlet接收并拦截请求。我们假设请求的url为:http://localhost:8080/SpringMVC/hello将如上url拆分为三部分:http://localhost:8080服务器域名SpringMVC部署在服务器上的web站点hel

2021-05-16 20:46:07 510

原创 SpringMVC—Servlet

MVC简介模型(dao、service)、视图(Jsp)、控制器(Servlet),是一种软件设计规范。业务逻辑、数据、显示分离来控制代码。daoserviceservlet:转发、重定向jsp/html

2021-05-13 23:36:31 409

原创 Spring声明式事务

1、导入依赖2、实体类3、接口4、mybatis配置5、整合mybatis

2021-05-09 22:28:34 135 6

原创 Spring整合Mybatis方式(三)—实现类继承SqlSessionDaoSupport

此种方式在Spring整合Mybatis(二) —mybatis-spring的基础上稍加改动一、实现类继承SqlSessionDaoSupport获取SqlSessionpackage indi.stitch.mapper;import indi.stitch.pojo.User;import org.mybatis.spring.support.SqlSessionDaoSupport;import java.util.List;public class UserMapperImpl2

2021-05-06 22:11:26 329 2

原创 Spring整合Mybatis(二) —mybatis-spring

spring-dao.xml配置文件1、编写数据源配置<!--DataSource:使用Spring的数据源替换mybatis的配置 c3p0 dbcp druid--> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql

2021-04-28 23:00:11 279 2

原创 Spring整合Mybatis(一)

pom.xml配置相关依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apac

2021-04-26 22:43:56 74

原创 SpringAOP的实现

准备步骤1、导包(使用AOP依赖的包)<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver --><dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.9.4</version&g

2021-04-12 22:53:41 92

原创 SpringAop原理-代理模式-动态代理

1、动态代理和静态代理角色一样2、动态代理的代理类是动态生成的,不是我们直接写好的3、动态代理分为两大类:基于接口的动态代理JDK 动态代理基于类的动态代理cglibjava字节码实现动态代理javasist需要了解两个类:Proxy 代理、InvocationHanlder 调用处理程序一个动态代理类代理的是一个接口,一般就是对应的一类业务一个动态代理类可以代理多个类,只要是实现了同一个接口即可...

2021-04-08 22:48:02 81

原创 代码整洁之道读书笔记

第一章 整洁代码5S原则体系:整理(组织):恰当的命名整顿(整齐):物皆有其位,而后物尽归其位,每段代码都该在你希望它所在的地方清楚(清洁):删除无用代码标准化:在开发组内使用一贯的代码风格和实践手段身美(自律):实践中贯彻规程,而且乐于改进勒布朗法则:稍后等于永不(拒绝拖延)简单代码规则:能通过所有测试;没有重复代码;体现系统中的全部设计理念;包括尽量少的实体,比如类、方法、函数等。童子军军规:让营地比你来时更干净!第二章 有意义的命名有意义的命名:1、名副其实:(1)选

2021-04-07 19:10:12 88

原创 SpringAop原理-代理模式-静态代理

静态代理在不改变原有业务逻辑的情况下,使用代理模式实现功能的扩展。以“租房”案例理解代理模式。实现中介代理房东租房,有四个主要角色:1、真实角色—房东2、代理角色—中介3、抽象角色—租房这件事情,即功能的实现4、服务对象—租房的人,即客户代码实现租房接口(抽象对象)package indi.stitch.demo1;/** * 租房接口 */public interface IRent { public void rent(); }房东出租房子(真

2021-04-01 22:52:14 138

原创 使用JavaConfig代替xml实现Spring配置

简单实体类package indi.stitch.pojo;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;@Componentpublic class User { private String name; public String getName() { return name; .

2021-03-31 22:37:23 130 1

原创 Spring使用@Autowired注解实现自动装配

Spring支持注解配置引入注解依赖<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.spri

2021-03-22 22:47:14 262

原创 Spring中Bean的作用域和自动装配

Bean的作用域Spring中bean的作用域共有singleton、prototype、request、session、application、websocket六种其中后四种都是用在Web应用程序中的,主要介绍前两种singleton(单例)和prototype(原型)Bean的作用域范围为singleton时,所有实例共享一个对象。Spring的默认配置为scope = “singleton”,以下两种配置的效果是一样的:默认配置<?xml version="1.0" enco

2021-03-01 22:33:55 79

原创 Spring使用p命名空间和c命名空间实现依赖注入

首先在配置文件中加入p命名空间和c命名空间的配置 xmlns:p="http://www.springframework.org/schema/p" xmlns:c="http://www.springframework.org/schema/c"在bean配置中使用p命名空间和c命名空间 <!--使用p命名空间直接实现属性的注入--> <bean id = "user" class="indi.stitch.pojo.User" p:name="小明" p:age="1

2021-02-25 23:03:37 267

原创 Spring使用Setter完成依赖注入

对依赖注入的理解依赖:实体间的所有依赖由容器创建注入:容器负责完成实体间依赖互相注入的任务使用Setter完成不同类型属性的注入实体类Studentpackage indi.stitch.pojo;import java.util.*;public class Student { private String name; private Address address; private String[] books; private List<Str

2021-02-24 23:01:43 159

原创 Spring的IOC思想简单实践—通过xml实现对象的创建

传统创建对象的方式传统的在Java中创建对象的方式为使用new关键字创建对象对象 对象名 = new 对象();例如:User user = new User();Spring创建对象的方式可以理解为将创建对象的过程托管给Spring,由Spring来创建对象,我们只需要被动接收对象,不需要主动创建对象。1、简单的POJO对象package indi.stitch.pojo;public class Hello { private String str; publi

2021-02-22 23:03:58 152

原创 对Spring中IOC思想的理解

IOC的简单实现获取用户数据传统实现方式为:1、IUserDao接口package indi.stitch.dao;public interface IUserDao { void getUser();}2、UserDaoImpl实现类package indi.stitch.dao;public class UserDaoImpl implements IUserDao{ public void getUser() { System.out.print

2021-02-21 21:45:04 65

原创 Spring概念理解及组成

Spring概念理解及组成1.1 Spring是什么Spring(春天),可以理解为给软件行业带来了春天!2002年,Spring的前身Interfarce21诞生。Spring框架即以interface21框架为基础,经过重新设计,并不断丰富其内涵,于2004年3月24日,发布了1.0正式版。Rod Johnson Spring Framework创始人,著名作者。 Rod在悉尼大学不仅获得了计算机学位,同时还获得了音乐学位。更令人吃惊的是在回到软件开发领域之前,他还获得了音乐学的博士学位。

2021-02-20 22:49:21 123

原创 一、一切都是对象

一、一切都是对象1、引用和对象的关系 引用和对象的关系,好比遥控器和电视的关系。遥控器可以在一定的范围内操控电视,引用也可以在一定的范围内操控对象。2、对象存储的位置 1)寄存器 最快的存储区,位于处理器内部。 2)堆栈 位于通用RAM(随机访问存储器)中,通过堆栈指针可以在处理器中获得直接支持。 堆栈指针若向下移动,则分配新的内存;若向上移动,则释放内存。 3)堆 使用new关键字创建出来的对象都存储在堆中。 4)常量存储 常量值通常直接存放在程序代码中或者ROM(只读

2020-10-02 21:01:48 130

原创 #判断一个数是否是奇数的优化

微信推送上看了一个Java面试题,文章的作者说可能是最简单的面试题了,题目就是判断一个数是否是奇数。作者一开始指出大多数人会这样做public boolean isOdd(int i) { if( i % 2 == 1 ) { System.out.println("是奇数"); } else { System.out.println("是偶数"); }}编译的时候发现错误...

2020-04-28 00:24:11 224

原创 Springboot项目在设计测试用例进行测试时报错:java.lang.AssertionError: Status expected:<200> but was:<404>

这个问题也难了我好几天,最后在仔细看了一遍视频之后才发现,是包名错误导致的!视频中项目导入eclipse之后包名是下面这样的:而我将自己的项目导入eclipse之后包名是这样的:比视频中多了一级名为initializrstart的目录,这个原因导致测试类找不到对应的路径,所以会报404错误。将包重命名为视频中的包名问题就解决了...

2019-03-13 14:08:22 5820

原创 算法学习——堆排序

 堆排序就是将要排序的对象构造为一个有序的大顶堆或小顶堆(根据需要来定,升序排序构造大顶堆,降序排序构造小顶堆),之后每次将堆顶选出后剩下的节点元素再次进行排序,直到剩下最后一个节点元素为止,此时排序结束。package pp.suanfa;/** * 堆排序 * @author xiaoGd * */public class HeapSort { public sta...

2018-10-14 21:58:04 913 2

原创 算法学习——希尔排序

希尔排序的思想就是将排序对象分为步长序列进行插入排序,步长序列的增量是递减的,那么什么是步长序列呢?简单的说就是将一个大的序列按照固定的增量分为若干个小的序列,当数字作为序列的下标时,1,3,5,7,9就是一个步长序列,仔细考虑考虑不难理解,若一个长度为10的序列,将其按照增量为5来分段,此时要进行插入排序的分别是下标为0和5,1和6,2和7,3和8,4和9的元素,话不多说,咱们直接来看代码:...

2018-10-12 20:43:34 391

原创 算法学习——快速排序

看过了冒泡排序和选择排序,昨天看了快速排序,对于其中的位置互换理解的有点混乱,直到今天才弄明白是怎么一回事。过程大概了解了,利用了分治的思想,如果要对一个数组进行排序,先取数组中的一个数作为基准数,遍历数组,将数组中大于该基准数的数放在右边,小于该基准数的数放在左边,这样就将较小的数和较大的数分成了两个部分,基准数是最后确定位置的,并不是像插入排序一样先确定基准数的位置,然后再将其它数进行排序。...

2018-10-06 09:48:33 144

原创 使用二进制和位移运算实现简单的算法

1.将一个二进制数向左位移n位就等于该数乘以2的n次方,当乘法运算中的某个数符合这个特点的时候,可以用位移运算代替乘法运算,从而提高效率。package pp.suanfa;/** * 乘法运算转位移运算 * * @author xiaoGd * */public class MulAndShift { public static int isPower(int m...

2018-10-02 09:58:35 1506

原创 算法学习——归并排序

归并排序看起来比较难,代码量也比之前几个排序多,研究归并排序也确实用了挺长时间。归并排序中的“归”是递归的意思,“并”是合并的意思,顾名思义,归并就是先递归分开,再合起来,那么归并排序的思想就是将一个数据序列递归划分为越来越小的半子表,再对半子表进行排序,最后再用递归的方法将排好序的半子表合并成为越来越大的有序序列,这也是分治思想在归并排序中的体现。归并排序算法的原理就是对于给定的一组记录...

2018-10-01 18:20:06 300

原创 对SpringMVC、Struts2、Hibernate以及Mybatis工作原理的初步理解

一、看了对SpringMVC原理的介绍,我画了一张图:按图中序号依次向下进行:1.用户发送请求到前端控制器DispatcherServlet2.DispatcherServlet收到请求调用处理器映射器HandlerMapping3.HandlerMapping找到具体的处理器,生成处理器对象以及处理器拦截器(如果有则生成),一并将其返回给DispatcherServlet(图...

2018-10-01 14:10:39 1847

原创 关于配置Maven的一些问题

今天遇到的问题:1.Java Compiler 没有1.8这个问题网上有好多人说在Eclipse Marketplace中搜索Java 8,然后选择第一个install,但是我失败了,我选了第二个安装结果没用,于是我决定更新Eclipse,更新之后就有1.8了。2.Maven项目报错:org.apache.maven.archiver.MavenArchiver.getManife...

2018-09-29 21:59:29 379 2

原创 算法学习——冒泡排序

顾名思义,冒泡排序就是将要排序的对象像冒泡泡一样一个挨着一个比较,最终形成一定的顺序。就像一群人中一共有五个人,要让他们按照身高进行排序,首先让第一个人和第二个人比较,个子高的人再和第三个人比较,这两个人中个子更高的再和第四个人比较,一轮下来就会选出最高的人,然后让剩下的四个人按照同样的方法进行比较,在四轮比较之后就会排出他们的顺序。假设要为一个数组进行排序,实现起来就是这样:int[...

2018-09-28 09:07:39 157

原创 关于Tomcat启动成功后index.jsp无法正常显示的问题(The origin server did not find a current representation )

 首先我遇到的是这样的错误:The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.百度翻译给的中文结果是这个意思:OrthServer没有找到目标资源的当前表示,或者不愿意透露目标资源。就是找不...

2018-09-27 18:54:18 11361 3

原创 为项目添加Eclipse中已存在的Server的jar包

右键项目,选择Build Path——&gt;Configure Build Path——&gt;Libraries——&gt;Add Library——&gt;Server Runtime,之后选择所要添加服务的jar包即可。为方便浏览截了几个图:第一步:第二步:第三步:第四步:这里就是你想要添加jar包的服务第五步:选择之后点Finish就大功告成了!...

2018-09-27 16:49:12 1425

JavaScript版 数据结构与算法

第1章 课程导学 对课程整体进行介绍,让您切实感受到前端工程师学习数据结构与算法的必要性。 1-1 课程导学 试看 1-2 学习姿势 1-3 说明与承诺 第2章 基础算法之“字符串类” 字符串作为JS最基本的数据类型,掌握好字符串类型的算法题目是学习算法最好的入门阶梯,也是业务开发中最受用的部分之一。 2-1 环境搭建 2-2 反转单词原理讲解 2-3 反转单词代码演示 2-4 计算子串原理讲解 试看 2-5 计算子串代码演示 第3章 基础算法之“数组类” 数组是JS世界里必不可少的类型,“小小”的数组,“大大”的世界,一维、二维空间、组合、分组、堆栈、队列等等都离不开它,学习这个章节打开潘朵拉的盒子吧。 3-1 数组题目介绍 3-2 电话号码组合-原理讲解 3-3 电话号码组合-代码演示 3-4 卡牌分组-原理讲解 3-5 卡牌分组-代码演示 3-6 种花问题-原理讲解 3-7 种花问题-代码演示 3-8 格雷编码-原理讲解 3-9 格雷编码-代码演示 第4章 基础算法之“正则类” 正则是让人又爱又恨的JS知识,“爱”它的神通广大,“恨”它的抽象难懂,我们尝试从基础用法到高级模式匹配让你走近它的梦幻世界 4-1 重复的子串-原理讲解 4-2 重复的子串-代码演示 4-3 正则表达式匹配-原理讲解 4-4 正则表达式匹配-代码演示 第5章 基础算法之“排序类” 排序是学生时代标志性的回忆,然而如何魔改“冒泡排序”、“选择排序”让很多看似与排序无关的题目迎刃而解是不是闻所未闻,还等什么呢? 5-1 冒泡排序 试看 5-2 选择排序 5-3 奇偶排序 5-4 第K个最大值(1) 5-5 第K个最大值(2) 5-6 最大区间(1) 5-7 最大区间(2) 5-8 缺失的第一个正数(1) 5-9 缺失的第一个正数(2) 5-10 快速排序-基础算法 5-11 快速排序-高级算法 第6章 基础算法之“递归类” 递归是大家最熟悉的陌生题,往往知道是它的用武之地,可是怎么递归,边界在哪?本章的学习告诉你如何抓住递归的本质,解除你的满脸愕然。 6-1 复原IP地址-原理讲解 6-2 复原IP地址-代码演示 6-3 关联字符串-原理讲解 6-4 关联字符串-代码演示 第7章 数据结构之“栈” 数组具有栈的功能,如何用?如何用栈去解决自定义数学运算(棒球比赛)是不是很好奇?这个章节答疑解惑。 7-1 棒球比赛-原理讲解 7-2 棒球比赛-代码实操 7-3 最大矩形-原理讲解 7-4 最大矩阵-代码实操(1) 7-5 最大矩阵-代码实操(2) 第8章 数据结构之“队列” 队列在数组中已经表现的淋漓尽致了,还记得pop和push吗?可是如果面试限制你使用Array,如何脱颖而出呢?答案就在这一章! 8-1 循环队列-原理讲解 8-2 循环队列-代码实操 8-3 任务队列-原理讲解 8-4 任务队列-代码实操 第9章 数据结构之“链表” 链表是一个有序的线性数据结构,对于它而言排序和循环是最基本的两项技能,这个章节从零是实现链表结构到排序、循环检测带你熟知链表结构。 9-1 排序链表-原理讲解 9-2 排序链表-代码实操 9-3 环形链表-原理讲解 9-4 环形链表-代码实操 第10章 数据结构之“矩阵” 矩阵虽不常见,若见既是霹雳。看似和数组无异,操作起来如同嚼蜡。别怕,同样是数组API、递归,这个章节却可以带你行走如飞。 10-1 螺旋矩阵-原理讲解 10-2 螺旋矩阵-代码实操 10-3 旋转图像-原理讲解 10-4 旋转图像-代码实操 第11章 数据结构之“二叉树” 二叉树是数据结构中难度最大的没有之一,如何实现一个二叉树结构并对它遍历难于上青天,学完这个章节会让你牢牢掌握二叉树的基础知识。 11-1 对称二叉树-原理讲解 11-2 对称二叉树-代码实操 只到11,只到11

2019-05-02

html5婚纱摄影公司响应式模板

html5婚纱摄影公司响应式模板,代码可用直接修改操作即可,响应式布局,内容完整,绝不后悔

2019-04-26

MySQL经典数据库表

从1981年延用至今的MySQL数据库表,其中的逻辑性很强,很经典!

2018-08-06

Hibernate总结——课程管理

简单的Hibernate实现Java通过多对多关联映射,进行学生课程管理。

2018-06-20

空空如也

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

TA关注的人

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