自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MyBatis 入门

MyBatis 概述MyBatis是优秀的持久层框架MyBatis使用XML将SQL与程序解耦,便于维护MyBatis学习简单,执行高效,是JDBC的延伸MyBatis 开发流程文档目录结构:1. 引入MyBatis依赖 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId>

2021-09-19 23:58:52 248

原创 Lambda表达式

概述百度百科的定义:Lambda 表达式(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包(注意和数学传统意义上的不同)。JDK8开始支持Lambda表达式,用来让程序编写更优雅利用Lambda可以更简洁的实现匿名内部类与函数声明与调用基于Lambda提供stream流式处理极大简化对集合的操作1.Lam

2021-09-16 15:49:51 147

原创 工厂模式

工厂模式简介工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。实例对于多端应用 有桌面版首页和手机版首页访问 /index.html (这不是页面,是一个servlet) ,自动根据request请求头中的参数判断是电脑/手机,然后进行请求转发servlet@WebServlet("/inde

2021-09-14 19:31:34 110

原创 JSON入门

概述JavaScript 天生就支持json , 前后端非常适合通过json来传递数据一个json的例子:在进行前后端数据传输的过程中,要把 json 数据转换成字符串,在拿到数据后再把 字符串转回 json 前端再对拿到json数据进行处理展示。对json数据进行访问的例子:<script type="text/javascript"> var json = [ { "eno": 2001, "ename": "Lucy", "job": "软件工程师", "h

2021-09-13 12:37:45 103

原创 Servlet 进阶

HTTP请求根据请求头的信息,可以判断不同的机器类型(比如电脑,手机,平板),进行不同的显示protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=utf-8"); response.getWriter().append("Serv

2021-09-13 00:01:05 88

原创 Servlet 入门

Servlet 百度百科定义:Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,

2021-09-08 23:40:54 73

原创 Java 反射

百度百科关于反射的定义:Java的反射(reflection)机制是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用任意一个对象的属性和方法。这种动态获取程序信息以及动态调用对象的功能称为Java语言的反射机制。反射被视为动态语言的关键。一个例子引入反射:package com.imooc.reflect;import java.util.Scanner;/** * 初识反射的作用 */public class

2021-09-08 18:53:17 85

原创 JDBC进阶操作(Druid连接池 与 DBUtils工具类的使用)

书接上文,使用JDBC需要导入相应的 jar 包,使用drudi连接池和DBUtils工具类也是。直接将jar包,复制粘贴到 lib 目录下,再从Project Structure 中导入即可。阿里巴巴 Druid 连接池Druid对数据库连接进行有效管理与重用,最大化程序执行效率连接池负责创建管理连接,程序只负责取用与归还ps:原来每执行一次SQL都要建立和关闭一次链接,非常浪费时间。使用数据库连接池是典型的空间换时间的思想。使用:在 src 目录下 创建 druid-config.p

2021-09-05 13:17:06 647

原创 JDBC 基本操作

基本操作(增删改查)JDBC 开发步骤加载并注册JDBC驱动创建数据库连接创建Statement对象遍历查询结果关闭连接,释放资源使用实例:Connection conn = null; try { //1加载 注册 JDBC 驱动 Class.forName("com.mysql.cj.jdbc.Driver"); // 2.创建数据库连接 conn = DriverM

2021-09-05 12:50:41 57

原创 操作系统内核结构

内核需要完成的功能内核作为计算机硬件资源和软件资源的管理者,需要完成以下基本功能:还有安全组件和针对不同硬件编写的驱动程序。宏内核结构把上面提到的各种功能所有代码经过编译,链接在一起,形成一个大的可执行程序。这个大的可执行程序向应用提供一些接口(系统API)。这个大程序在处理器的特权模式下运行。为了理解宏内核的⼯作原理,我们来看⼀个例⼦,宏内核提供内存分配功能的服务过程,具体如下:1.应⽤程序调⽤内存分配的API(应⽤程序接⼝)函数。2.处理器切换到特权模式,开始运⾏内核代码。3.内

2021-09-05 10:48:01 447

原创 C++ 虚函数与继承

百度百科关于虚函数的定义:简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解释就是实现以共同的方法,但因个体差异,而采用不同的策略。维基百科对于虚函数的定义:在面向对象程序设计领域,C++、Object Pascal 等语言中有虚函数(英语:virtual function)或虚方法(英语:virtual method)的概念。这种函数或方法可以被子类继承和覆盖,

2021-09-02 15:01:27 2059 1

原创 实现一个最简单的内核

今天看了极客时间操作系统实战的专栏,在实现简单内核(没有任何功能,只是打印出一句话)时也遇到了一些问题,这里记录一下。这里不自己写引导汇编加载扇区的汇编代码,而是直接使用Ubuntu自带的GRUB 加载我们的OS。1 编写代码entry.asm 处理好C语言的工作环境main.c Hello OS的主函数,里面的printf函数需要我们自己去实现vgastr.h vgastr.c 实现printf函数(显存开始的地址是0xb8000)void _strwrite(char* string)

2021-09-01 22:41:51 287

原创 Java多态(下)接口和内部类

接口可以用来描述不同的类型具有相似的行为特征。接口前可以不写访问权限,要写必须是public,接口里的抽象方法不用写abstract,访问修饰符默认public(子类的方法的访问权限必须大于等于父类的访问方法),实现接口需要实现所有的抽象方法(或者声明为抽象类),接口中可以包含常量(系统自动加上 public static final)接口类型的变量只能调用接口中声明过的方法。接口的常量也可以被继承。——————————————————————有类在继承接口后不需要实现接口的所有方法,此时可

2021-08-13 14:58:58 63

原创 Servlet 基本概念

不再配置xml,改用注解:@WebServlet(name = “contextServlet”,value = “/context”)value后的值记得加 ‘/’public class ContextServlet extends HttpServlet {}世界开发过程中实际上是继承HttpServlet类。需要重写的方法一般只有doGet 和 doPostprotected void doGet(HttpServletRequest req, HttpServletRespon

2021-08-11 18:08:49 77

原创 Java多态(上)

向上转型父类类型 变量名字 = new 子类类型(参数);Animal cat = new Cat();向上转型,子类对象实例转为父类类型,cat只能调用从父类集成的方法和重写的方法,不能调用自己独有的方法。(也可以说父类的引用指向了子类的实例)向下转型需要满足一定规则且必须强制类型转换。一般是为了重新获取因为向上转型而丢失的子类特性向下转型时不允许转为非原始类型,(需要哪里来回哪去)Cat t1 = (Cat) cat; //cat本来就指向Cat对象实例,再转回来强制类型转换前可

2021-08-11 15:18:50 88

原创 Java单例模式

概述:空间换时间。类只能有一个实例,不能使用new关键字,通过调用类的方法获得类的实例。在创建对象的时候系统就创建了类的实例,要点:1.某个没只能由一个实例。2.必须自行创建。3.自行像整个系统提供。实现:1、只提供私有的构造方法 2、含有一个该类的静态私有对象。3、提供一个静态的共有方法用于创建获取静态对象。实现1:饿汉式...

2021-08-11 12:41:59 61

原创 最短路算法

最短路单源最短路N表示图中点的数量 M表示边的数量1.所有边的权重都是正数a.朴素Dijkstra算法时间复杂度 O(N^2) 适合稠密图(M与N^2一个级别 M<=N^2)求从1号点到其他所有点的距离1.初始化距离dist[1]=0,dist[i]=inf2.迭代用s存当前已经确定最短距离的点for(i:0~n 循环n次){ t = 不在s中的距离最近的点 !st[j]&&(t==-1||dist[t]>dist[j]) s中加入t(点t被确定)

2021-07-18 17:11:08 93

原创 树与图存储和遍历

树与图的邻接表存储树与图的存储//邻接表存储树,图int h[N],e[M],ne[M],idx;//初始化void init(){ memset(h,-1,sizeof h);//把每个链表置空就是初始化}//往h[a] 的后面加入结点b(数据) 或者说存在边 a-->bvoid add(int a,int b){ e[idx]=b;//b是树的结点标号,idx树中插入到了第几个结点 ne[idx]=h[a]; h[a]=idx; id

2021-07-18 17:10:18 87

原创 A - Crazy Computer

题意:一个文本编辑器,输入两个单词的时间间隔大于c就会清屏。给n个输入单词的时间,计算出最后显示的单词数量input n:单词数,c:最大的时间间隔 t1,t2,…,tn:n个单词各自输入的时间output 单词数量思路:res记录单词数量,初值为1从后向前遍历n个时间点,if( t[i] - t[i-1] <=c ) res++;else break; //清屏了,前面的就不用统计了#include<iostream>#include<cstring&

2021-04-08 22:49:11 79

原创 D - Galaxy

题目描述Good news for us: to release the financial pressure, the government started selling galaxies and we can buy them from now on! The first one who bought a galaxy was Tianming Yun and he gave it to Xin Cheng as a present.To be fashionable, DRD also boug

2021-02-22 17:49:17 357

原创 E - Jessica‘s Reading Problem(尺取法)

scanf比cin的效率高出一倍还要多上面A的两次除了数据读取不一样其余完全相同!!!Jessica’s a very lovely girl wooed by lots of boys. Recently she has a problem. The final exam is coming, yet she has spent little time on it. If she wants to pass it, she has to master all ideas included in ..

2021-01-20 13:55:57 122

原创 D - Subsequence(尺取法)

题目:A sequence of N positive integers (10 < N < 100 000), each of them less than or equal 10000, and a positive integer S (S < 100 000 000) are given. Write a program to find the minimal length of the subsequence of consecutive elements of the seq

2021-01-19 20:35:04 134

原创 H - EXCEL排序

多关键字排序,字符串排序,利用sort (不是稳定排序)题目:Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。Input测试输入包含若干测试用例。每个测试用例的第1行包含两个整数 N (<=100000) 和 C,其中 N 是纪录的条数,C 是指定排序的列号。以下有 N行,每行包含一条学生纪录。每条学生纪录由学号(6位数字,同组测试中没有重复的学号)、姓名(不超过8位且不包含空格的字符串)、成绩(闭区间[0, 100]内的整数)组成,每个项目间用1个空格隔开。当读到 N

2021-01-19 20:01:17 127

原创 F - 稳定排序

题目:大家都知道,快速排序是不稳定的排序方法。如果对于数组中出现的任意a[i],a[j] (i<j),其中a[i]==a[j],在进行排序以后a[i]一定出现在a[j]之前,则认为该排序是稳定的。某高校招生办得到一份成绩列表,上面记录了考生名字和考生成绩。并且对其使用了某排序算法按成绩进行递减排序。现在请你判断一下该排序算法是否正确,如果正确的话,则判断该排序算法是否为稳定的。Input本题目包含多组输入,请处理到文件结束。对于每组数据,第一行有一个正整数N(0<N<300),

2021-01-19 19:54:47 138

原创 数据结构之线性表(C++实现)

顺序表函数声明 List.h(顺序表的定义,各项功能和变量)#pragma once#ifndef LIST_H#define LIST_H#endif#define Elem intclass List{public: List(int size);//创建线性表 ~List();//销毁线性表 void ClearList();//清空线性宝 bool ListEmpty();//判断线性表是否为空 int ListLengh();//获取线性表的长度 bool GetE

2020-09-10 20:53:47 1069

空空如也

空空如也

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

TA关注的人

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