自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据库连接池

1、 概念:其实就是一个容器(集合),存放数据库连接的容器。 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时, 从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。 2、 好处: 节约资源 用户访问高效 3、 实现: 3.1、 标准接口:DataSource javax.sql包下的 方法: 获取连接:getConnection() 归还连接:Connection.close()。如果连接对象Connection是从连接池中获取的, 那么调用Connectio

2020-07-13 20:19:49 125 1

原创 算法

1、什么是算法 算法是用于解决特定问题的一系列的执行步骤 使用不同算法,解决同一个问题,效率可能相差非常大 2、如何评判一个算法的好坏? 如果单从执行效率上进行评估,可能会想到这么一种方案 比较不同算法对同一组输入的执行处理时间 这种方案也叫做:事后统计法 上述方案有比较明显的缺点 执行时间严重依赖硬件以及运行时各种不确定的环境因素 必须编写相应的测算代码 测试数据的选择比较难保证公正性 一般从以下维度来评估算法的优劣 正确性、可读性、健壮性(对不合理输入的反应能力和处理能力) 时间复杂度(time com

2020-07-10 16:05:12 113

原创 双向循环队列

package com.czz.circle; //双向循环队列 public class DeQueue<E> { private int size; private E[] elements; private int front; public DeQueue(){ elements=(E[]) new Object[10]; } // 元素的数量 public int size() { return size; }

2020-07-10 13:01:17 111

原创 队列

package com.czz; public class Queue<E> { private int size; private E[] elements; private int front; public Queue() { elements=(E[]) new Object[10]; } // 元素的数量 public int size() { return size; } // 是否为空 public boolean isEmpty()

2020-07-10 12:59:42 83 1

原创

package com.czz.stack; import com.czz.list.ArrayList; public class Stack<E> { private ArrayList<E> list=new ArrayList<>(); public int size() { return list.size(); } public boolean isEmplty() { return list.isEmpty(); } publ

2020-07-09 23:25:06 80

原创 双向循环链表

package com.czz.双向循环链表; public class LinkedList3<E> { private int size; private Node<E> first; private Node<E> last; class Node<E>{ E element; Node<E> prev; Node<E> next; public No

2020-07-09 23:23:31 60

原创 双向链表

package com.czz.双向链表; public class LinkedList2<E> { private int size; private Node<E> first; private Node<E> last; class Node<E>{ E element; Node<E> prev; Node<E> next; public Node

2020-07-09 23:22:20 68

原创 单向循环链表

package com.czz.单向循环链表; public class LinkedList<E> { private int size; private Node<E> first; private static class Node<E>{ E element; Node<E> next; public Node(E element, Node<E> next) { super(); this.eleme

2020-07-09 23:20:58 60

原创 链表

LinkedList.class package com.czz; /* * 链表:省内存 * 添加、删除为O(1),是指在删除、添加那一刻挪动指针的时间 */ public class LinkedList<E> { //元素个数 private int size; //指向第一个元素 private Node<E> first; private static class Node<E>{ //存储的元素 E element; //下一

2020-07-09 23:19:28 74

原创 数组

ArrayList.class package com.czz; /** * 动态数组的设计 *动态数组可能会造成内存空间的大量浪费 * @param <E> */ public class ArrayList<E> { //元素的数量 private int size; private E[] elements; //默认数组个数 private static final int DEFALUL

2020-07-09 23:15:12 75

原创 Ajax和Json

AJAX 1、 概念 ASynchronous JavaScript And XML 异步的JavaScript 和 XML 异步和同步:客户端和服务器端相互通信的基础上 客户端必须等待服务器端的响应。在等待的期间客户端不能做其他操作。 客户端不需要等待服务器端的响应。在服务器处理请求的过程中,客户端可以进行其他的操作。 Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。 通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。 这意味着可以在不重新加载整个网页的情况下

2020-07-09 22:15:35 90

原创 注解与反射_anno

1、概念 JDK1.5之后的新特性 说明程序的 使用注解(Annotation),也叫元数据:@注解名称 与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。 2、作用分类: ①编写文档:通过代码里标识的注解生成文档【生成文档doc文档】 ②代码分析:通过代码里标识的注解对代码进行分析【使用反射】 ③编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】 3、JDK中预定义的一些注解 @Override

2020-07-08 22:51:22 138

原创 反射与注解_reflaction

1、反射:框架设计的灵魂 框架:半成品软件。可以在框架的基础上进行软件开发,简化编码 反射:将类的各个组成部分封装为其他对象,这就是反射机制 好处: 1. 可以在程序运行过程中,操作这些对象。 2. 可以解耦,提高程序的可扩展性。 图示: 2、获取Class对象的方式 Class.forName(“全类名”):将字节码文件加载进内存,返回Class对象 多用于配置文件,将类名定义在配置文件中。读取文件,加载类 类名.class:通过类名的属性class获取 多用于参数的传递 对象.getClass():

2020-07-08 22:29:33 127

原创 多线程

1、概念 通常在一个进程中可以包含若干线程,当然一个进程中至少有一个线程,不然没有存在的意义。线程是CPU调度和执行的单位。 程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态概念。 进程是执行程序的一次执行过程,是一个动态概念。 注意:很多多线程是模拟出来的,真正的多线程是指有多个CPU,即多核。 线程是独立的执行路径; 在程序运行时,及时没有自己创建线程,后台也会有多个线程,如主线程main,gc线程; 在一个线程中,如果开辟了多个线程,线程的运行有调度器安排调度,调度器是与操作系统

2020-07-08 20:42:53 84

原创 java基础_IO流

IO流: 输入、输出,是将数据持久化保存到硬盘中,和数据库的作用一样 流的分类: 字节流、字符流、转换流、缓冲流、序列化流与反序列化流、打印流 如果要将每种流的构造方法、方法都一股脑的学习起来是不理智,学完过后就忘,大多数人都会这样。这在后面的复习中很困难。 所以要精简。 流 流对象在操作文件时,是自己不做依赖于操作系统完成的。 1、字节流 字节输出流:OutPutStream 超类 写任意文件 ...

2020-07-06 20:42:29 109

原创 Java基础_File

类File 文件和目录路径名的抽象表示形式。 java.lang.Object 继承者 java.io.File 所有已实现的接口: Serializable, Comparable<File> File对象的实例化 **构造方法:**这些对象实例化后只存在于内存层面 File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。 File(String pathname) 通过将给定路径名字

2020-07-04 13:23:01 86

原创 Jsp

1、概述 JSP全称是Java Server Pages,是SUN公司定义的一种用于开发动态web资源的技术。JSP实际上就是Servlet。 jsp = html + java; 区别 html:静态内容 servlet:控制器。重点编写java代码逻辑。 jsp:适合编写输出动态内容,代码显示模板。重点在于显示数据。 2、基本语法 2.1 、JSP注释 <%-- 被注释的内容 --%> 特点:安全,省流量 2.2、 jsp的3个指令 JSP指令(directive)是为JSP引擎而设计

2020-06-29 22:38:39 79

原创 会话管理

1、概述 会话:如同打电话; 解决的问题:保持各个客户端自己的数据。 2、Cookie 2.1 定义 由于Cookie数据是由客户端来保存和携带的,所以称之为客户端技术。 客户端技术 程序将每个用户的数据以cookie的形式写给用户各自的浏览器, 当用户使用浏览器再去访问服务器的web资源时,就会带着各自的数据去。 2.2 属性 name:名称不能唯一确定一个Cookie。路径可能不同。 value:不能存中文。 path:默认值是写Cookie的那个程序的访问路径 比如:http://loc

2020-06-29 20:12:16 122

原创 HttpServletRequest&HttpServletResponse

Web服务器收到客户端的http请求,会针对每一次请求, 分别创建一个用于代表请求的request对象、和代表响应的response对象。 1、HttpServletResponse 1.1 响应行 格式:HTTP/1.1 200 OK setStatus(int sc) 设置响应状态码 1.2 响应头 setHeader(String name, String value) 设置响应头信息 如:告诉浏览器使用什么码表 response.setHeader("content-type", "

2020-06-27 22:51:12 87

原创 Http协议_2

响应消息:服务器端发送给客户端的数据 1. 响应行 1. 组成:协议/版本 响应状态码 状态码描述 2. 响应状态码:服务器告诉客户端浏览器本次请求和响应的一个状态。 状态码都是3位数字 分类: 1. 1xx:服务器就收客户端消息,但没有接受完成,等待一段时间后,发送1xx多状态码 2. 2xx:成功。如:200 3. 3xx:重定向。 如: 302(重定向) 304(访问缓存) 4. 4xx:客户端错误。 如: 404(请求路

2020-06-27 11:44:00 74

原创 Http协议_1

1、概念 Hyper Text Transfer Protocol 超文本传输协议的简写。 定义了客户端和服务器端通信时,发送数据的格式。 2、特点 1. 基于TCP/IP的高级协议 2. 默认端口号:80 3. 基于请求/响应模型的:一次请求对应一次响应 4. 无状态的:每次请求之间相互独立,不能交互数据 3、历史版本 1.0:每一次请求响应都会建立新的连接 1.1:复用连接 4.请求消息数据格式 4.1 请求行 请求方式 请求url 请求协议/版本 GET /xxx.html HTTP/1.

2020-06-27 11:16:09 185

原创 Servlet

1、定义 Servlet 是运行在 Web 服务器中的小型 Java 程序(即:服务器端的小应用程序)。 Servlet 通常通过 HTTP(超文本传输协议)接收和响应来自 Web 客户端的请求。 2、生命周期 实例化-->初始化-->服务->销毁 出生:(实例化-->初始化)第一次访问Servlet就出生(默认情况下) 活着:(服务)应用活着,Servlet就活着 死亡:(销毁)应用卸载了Servlet就销毁。 @WebServlet(name = "TestServl

2020-06-26 22:01:12 77

原创 JDBC

简介 全称Java Database Connectivity sun 公司提供的一套操作数据库的标准规范 与数据库驱动的关系:接口与实现 JDBC规范 DriverManager:用于注册驱动 DriverManager.registerDriver(new com.mysql.jdbc.Driver());不建议使用 原因有2个: > 导致驱动被注册2次。 > 强烈依赖数据库的驱动jar 解决办法: Class.forName("com.mysql.

2020-06-15 23:21:49 96

原创 数据库_3

DML语言 数据操作语言 插入、修改、删除 修改 sql92语法:修改单表的记录 update 表名 set 字段=值,字段=值 【where 筛选条件】; sql99语法:修改多表的记录 update 表1 别名 left|right|inner join 表2 别名 on 连接条件 set 字段=值,字段=值 【where 筛选条件】; 删除 方式1:delete语句 单表的删除: delete from 表名 【where 筛选条件】 多表的删除: delete 别名1,别名2

2020-06-14 22:22:52 69

原创 数据库_2

分组函数 sum 求和 avg 平均值 max 最大值 min 最小值 count 计算个数 特点: 1、以上五个分组函数都忽略null值,除了count(*) 2、sum和avg一般用于处理数值型 max、min、count可以处理任何数据类型 3、都可以搭配distinct使用,用于统计去重后的结果 4、count的参数可以支持: 字段、*、常量值,一般放1 建议使用 count(*) 和分组函数一同查询的字段要求是group by 后的字段 分组查询 语

2020-06-14 21:54:51 1788 1

原创 数据库_1

数据库 持久化数据到本地 实现结构化查询,方便管理 相关概念: DB:数据库,保存一组有组织的数据的容器 DBMS:管路DB中的数据 SQL:结构化查询语言,用于与DBMS通信的语言 mysql常见的命令 1、查看当前所有的数据库 show databases; 2、打开指定的库 use 库名; 3、查看当前库的所有表 show tables; 4、查看其它库的所有表 show tables from 库名; 5、查看表结构 desc 表名; mysql语法规范 不区分大小写 注释: 单行:# --

2020-06-14 21:00:03 101

原创 Html_Css_Js

html 描述网页的一种标记语言 超链接 <a>标签 常用属性 href 用于设定链接指向页面的url 表格标签 form 标签 代表一个表单,用于向服务器传输数据 link 标签 定义文档与外部资源的关系 最常见的用途是链接样式表 只能存在于head部分 常用属性 type:被链接文档的MIME类型 ```bash MIME:全称Multipurpose Internet Mail Extendsions 设定某种扩展名的文

2020-06-14 14:23:33 103

原创 java_基础614

Object类 是java语言中的根类,即所有类的父类 该类的方法有很多,用什么就查看JDK帮助文档进行查看 常用: equals方法:

2020-06-14 13:04:44 125

原创 Java_基础613

常用的Dos的命令: cls 清屏 E:切换到E盘 cd xxx切换到指定的目录 cd … 返回上一级目录 跨平台特性: Java程序在任意操作系统运行 实现跨平台依赖于java虚拟机 Java程序 源文件(.java)–>编译(.class)–>运行 标识符 数字 字母大小 符号_和$ 规则:数字不能开头 关键字不能使用 取余、除于 如 5/2 2 5%2 1 引用数据类型: Scanner sc=new Scanner(System.in); int i=new sc.ne

2020-06-13 20:54:18 235

原创 网络编程

打电话 --连接-- 接了 ---通话 TCP 发短信 --发送了就完事 --接收 UDP

2020-05-25 22:04:29 612

原创 Maven-1

学习Maven的目的 节省导包、打包的时间,提高效率,节省资源。 Maven的下载 百度搜索Maven 点击download下载 仓库的分类 本地仓库、远程仓库、中央仓库 Maven常见命令 mvn clean :删除target 目录,目的是为了删除编译环境,由于每个人电脑的配置不同 mvn compile :重新生成target目录 mvn test :测试test下的资源 mvn packa...

2020-04-18 21:24:04 113

原创 java常见错误

MyBatis常见错误 1、未指明封装返回 Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException: Error querying database. Cause: org.apache.ibatis.executor.ExecutorException: A query was run an...

2020-04-18 19:36:27 239

空空如也

空空如也

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

TA关注的人

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