自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Git基础

Git简介:git是一个分布式的版本控制系统。例如我们一个小团队合作开发一个项目,我们可以先建立一个远程仓库,需求分析,搭建大体框架,将项目框架上传至远程仓库,队员可以git clone项目,各自完成自己负责的部分,完善项目等,写好之后还可以比对之前的版本,本地项目写好之后上传至远程仓库,出现错误还可以版本回退等等,总之,git很强大,非常好用。Git与SVN对比SVN是集中式的版本控制系统,缺点:服务器单点故障,容错性差Git是分布式版本控制系统,分为两种:本地仓库和远程仓库本地仓库:是在开

2021-01-14 22:25:58 110

原创 Mybatis,配置文件头,原始JDBC问题,代理开发

mybatis配置文件的头部信息configure配置文件头<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">mapper映射文件头<?xml version="1.0" encoding="UTF-8"?&g

2021-01-11 19:37:53 193

原创 Servlet之过滤器

Servlet分为三种:标准的Servlet----MVC中控制器 、过滤Servlet(过滤器)、监听Servlet(监听器)。过滤器: Servlet API中提供了一个Filter接口,开发web应用时,如果编写的Java类实现了这个接口,则把这个java类称之为过滤器Filter。通过过滤器,开发人员可以实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截。简单说,就是可以实现web容器对某资源的访问前截获进行相关的处理,还可以在某资源向web容器返回响应前进行截获进行处理。过滤器功能:

2021-01-04 23:39:10 314 1

原创 Servlet

Servlet概念Servlet定义:Servlet是基于Java技术的Web组件,由容器管理并产生动态的内容。Servlet引擎作为WEB服务器的扩展提供支持Servlet的功能。Servlet与客户端通过Servlet容器实现的请求/响应模型进行交互。servlets实现1、编写一个Java类,实现servlet接口。2、把开发好的Java类部署到web服务器中。  按照一种约定俗成的称呼习惯,通常我们也把实现了servlet接口的java程序,称之为ServletServlet的开发流程

2020-12-30 23:25:18 99 2

原创 JSP的四大作用域

为了根据不同的情况去进行数据的存储、传递等等,jsp中给出了四大作用域以满足不同的使用情况作用域描述pageContext当前页生效request一次请求中生效session一次会话中生效application整个web中生效application 作用域:如果把变量放到application里,就说明它的作用域是application,它的有效范围是整个应用。 整个应用是指从应用启动,到应用结束。我们没有说“从服务器启动,到服务器关闭”,是因为一个服

2020-12-29 20:51:57 136

原创 application对象

什么是application对象(1) 当Web服务器启动时,Web服务器会自动创建一个application对象。application对象一旦创建,它将一直存在,直到Web服务器关闭。一个Web服务器通常有多个Web服务目录 (网站),当Web服务器启动时,它自动为每个Web服务目录都创建一个application对象,这些application对象各自独立,而且和Web服务目录一一对应。访问同一个网站的客户都共享一个application对象,因此,application对象可以实现多客户间的数

2020-12-28 20:25:57 1561

原创 session对象

session介绍:session是在服务器进行数据存储的对象,访问速度满、效率低但是安全Session对象代表一次会话,当客户端打开浏览器到关闭浏览器这期间的操作称为一次会话Session的创建时间:当request调用getSession()时调用,同时将Session存入服务器的内存Session的传递过程:当创建Session后,服务器会给该Session分配一个ID,同时会将该ID存入Cookie中,Cookie的名字为JSESSIONID,然后将此Cookie发送至客户端,当客户端继续发

2020-12-26 13:39:26 128

原创 request和response

request和response:request是代表HTTP请求信息的对象,response是代表HTTP响应信息的对象。当浏览器发请求访问服务器中的某一个Servlet时,服务器将会调用Servlet中的service方法来处理请求。在调用service方法之前会创建出request和response对象。其中request对象中封装了浏览器发送给服务器的请求信息(请求行、请求头、请求实体等),response对象中将会封装服务器要发送给浏览器的响应信息(状态行、响应头、响应实体),在servic

2020-12-24 20:55:25 103 1

原创 css的样式

css的样式有三种:1、行类样式:就是直接将样式写在标签上。<p style="color:red;">我是江小白</p>2、内联样式:写在当前的HTML的style标签中。注意: 按照规范style标签写在head标签里<style>p{color: red;}div {color: yellow;}</style><body><div>即使敌众我寡,末将也能在万军丛中取敌将之首级,如从探囊取物</

2020-12-14 20:53:58 218

原创 网络协议

服务端和客户端的链接及操作创建服务端的端口,用客户端链接服务端,发送消息。服务端:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.io.OutputStreamWriter;import java.net.ServerSocke

2020-12-10 20:53:25 64

原创 Java定时器

定时器常见的定时器有两种:1、Timer : 在java.util包中提供的定时器2、quartz: 第三方提供的定时器就像生活中的闹钟,设定一个时间,按照时间周期执行Timer定时器:import java.util.Date;import java.util.Timer;import java.util.TimerTask;public class TimerDemo { public static void main(String[] args) { method3();

2020-12-09 20:16:28 187

原创 Java链接数据库增删改查

Java链接数据库需要加个jar包。**注意:**jar报的版本需要跟数据库的版本一致,否则可能会出现异常,不能正常访问数据库。Java链接数据库的基本操作:增删改查。把一些重复的内容定义成常量,方便直接调用。private static final String DRIVER = "com.mysql.cj.jdbc.Driver";//jar包的位置 private static final String URL = "jdbc:mysql://localhost:3306/student

2020-12-03 20:50:19 245

原创 mysql基本语句(3)

外键用于多张表之间的关联关系(主从关系)# 给员工表中的部门编号设置外键约束alter table 表名 add constraint 约束名 foreign key(当前表中约束的字段) references 主表表名(要约束的字段名);alter table emp add constraint fk_emp_dno foreign key(dno) references depart(dno);注意:1.主表中作为外键使用的字段要求一定是非空且唯一的2.如果此时要删除主表中的数据,前提是

2020-12-02 20:27:41 81

原创 MySQL的基本语句(2)

数据库的表字段的操作:#添加字段alter table 表名 add field 数据类型 [约束];alter table depart add departphone varchar(11);#修改字段数据类型alter table 表名 modify field 数据类型 [约束];alter table depart modify departphone char(11);#修改字段名alter table 表名 change 老字段名 新字段名 数据类型;alter table

2020-12-01 20:33:23 90

原创 Java的几种模式

单例模式在有些系统中,为了节省内存资源、保证数据内容的一致性,对某些类要求只能创建一个实例,这就是所谓的单例模式。指一个类只有一个实例,且该类能自行创建这个实例的一种模式。单例只有一个实例对象,对象必须由单例类自行创建,该类对外提供一个访问该单例的全局访问点。懒汉的单例模式:public class A{ private static volatile LazySingleton instance=null; //保证 instance 在所有线程中同步 private L

2020-11-30 23:03:39 1429

原创 MySQL的基本语句cmd书写

MYSQL在cmd里创建库,创建表格,写入东西第一步登录mysql,命令:mysql -u root -p进去之后可以创建数据库了:# 查看所有的数据库show databases;# 选择一个数据库use 数据库名;# 查看当前所在的数据库select database();# 创建数据库create database 数据库名;# 删除数据库drop database 数据库名;创建之后可以看到库然后进入一个库:use +库名。进入之后就可以创建表名了。# 查看表sh

2020-11-30 20:54:17 290

原创 线程

说线程前先说下进程,进程就是运行一个软件,比如酷狗音乐。线程就是音乐里面的一个个功能,比如我我能一边听音乐,一边下载音乐,他们两个互不干扰。一个进程里面可以有多个线程。关键词:Thread0、Runnable创建线程的方法:1.继承Thread类,通过start方法创建并开启线程(常用)2.实现Runnable接口,结合Thread类创建并开启线程(常用)3.实现Callable接口,通过Executor执行4.通过线程池public class DXCDome { public sta

2020-11-25 20:38:17 76

原创 反射

反射的概念:通过指定路径,读取class文件,获取该文件中的属性、方法等返回Class对象的方式一:getClass()每一个引用数据类型都有一个getClass()方法,返回的就是该类的Class对象每一个对象都具备一个.class属性在开发的时候,当导入第三方的jar包时,开发人员是可以直接在java文件中进行使用,并可以看到其中都有哪些方法及属性,因为,当把jar包通过build path,将jar包关联到项目的时候,其实就相当于是在做解析class文件的过程,只是这个过程由开发工具给做了而已

2020-11-24 20:21:19 91

原创 泛型

泛型说白话就是广泛的类型,是jdk1.5出现的一个安全机制作用:1.不限制类型 ,不限制和不给定泛型,默认是Object类型是一样的效果,可以简单的理解为将Object类型显示的给指明出来,但是呢,不明确的说是Object类型,而是换了一种形式,使用泛型代替(一个字母);2.限制类型,限制集合中所能存储的数据类型,不用强制类型转换,将错误提前到了编译时期用法:"<>"。在类中使用,在类上定义的泛型,在该类中可以当成是一个新的数据类型.在方法上使用,该类型只能该方法中生效,放在修饰符的后

2020-11-23 22:32:18 181

原创 字节流和字符流

字节流:java中的字节流处理的最基本单位为单个字节,它通常用来处理二进制数据。Java中最基本的两个字节流类是InputStream和OutputStream,它们分别代表了组基本的输入字节流和输出字节流。InputStream类与OutputStream类均为抽象类,我们在实际使用中通常使用Java类库中提供的它们的一系列子类。字符流:字符流是由多个字节流组成字符流与字节流的区别:字符流虽然以字节流为基础创建的,但是字节流可以支持声音,视频,图片,文本等所有文件类型,而字符流只支持文本文件。

2020-11-23 22:30:43 132

原创 static关键字

什么是static?他是静态的修饰符,修饰的变量叫静态变量,修饰的方法叫静态方法作用:资源共享非静态:只能通过对象调用,因为非静态的属性或方法只有在创建对象的时候才会被加载进内存静态:既可以通过对象调用,也可以通过类名调用,建议使用类名调用(非静态的属性或方法属于对象的,静态的属性或方法属于类的)...

2020-11-19 20:48:22 54

原创 List和set

List接口list允许重复、有序(输入输出顺序) 数组的数据结构(底层维护的是一个数组) 查询快、增删慢List中常用的子类有两个:ArrayList:底层维护的是一个数组数据结构,查询快,增删慢LinkedList:底层维护的是一个链表数据结构,增删快、查询慢如果查询多就用ArrayList,如果增删多就用LinkedList,如果不知道就选ArrayList,因为往往查询比增删需求多下面用ArrayList写的一些东西import java.util.ArrayList;import

2020-11-18 20:48:15 149

原创 异常体系

异常体系包括两个,异常和错误。异常有两种解决方法,一个是捕获,一个是抛出。抛出又有两个关键字,throw 抛出 抛的是异常对象。throws 声明 声明的是异常类的类型,当有多个异常需要声明时,使用逗号隔开。import org.apache.log4j.Logger;public class ExceptionDome { private static final Logger LOGGER = Logger.getLogger(ExceptionDome.class); publi

2020-11-17 20:40:56 77

原创 “==”和equals的用法和区别

“==”和equals都是比较两边的东西。“==”是比较基本数据类型,像int a=5;int b=5;a和b比较,两个数相同。引用数据类型是比较两个创建对象的地址是否相同// 基本数据类型的比较 int a = 5; int b = 5; System.out.println(a==b);//true //输出是true //引用数据类型的比较//创建一个类class Add{}public class Test { public static void main(String[]

2020-11-16 19:57:09 116

原创 多态

多态:必须要有继承或实现的关系,父类数据类型 变量名 = new 数据类型(); //有继承关系 相比较数据类型 变量名 = new 数据类型();//单个的类public class DuoTaiShow { public static void main(String[] args) { //创建对象 Cat cat = new Cat(); Tiger tiger = new Tiger(); //调用方法,用老虎的子类 animalMethod(tiger); } /

2020-11-13 20:51:20 63

原创 冒泡排序

每一轮的比较都会得到一个最值,下一轮比较时,上一轮的最值是不参与比较的,因此,每比较一轮都会少一个,所以,总轮数为count=总数据个数-1,又发现,每一轮所需要比较的次数依次-1//一组数据int[] arr = {11,7,23,15,88,56,99};//比较的轮次//控制总轮数,一共7个数,只需要6轮//每次要比较两个数for(int i=0;i<arr.length-1;i++){//每一轮都减少一次,因为有个最大值了,不用比较了 for(int x=0;x<a

2020-11-12 20:05:36 57

原创 方法的“重载”和“重写”的区别

方法的重载是在同一个类中,方法名相同,方法的参数列表不同(参数个数、参数位置、参数的类型),与返回值类型无关方法的重载public static void main(String[] args) { //方法的重载 int x=5; int y=7; int z=9; show(x,y); } //两个数的比较 public static void show(int x,int y){ if(x>y){ System.out.println(x);

2020-11-11 20:44:02 648

原创 if,switch控制语句。for循环语句,终断,跳过。

if控制语句public static void main(String[] args) {/** * if控制语句 * 列举学生成绩, */int crose = 86;//满分100//成绩在90~100if(crose>90){ System.out.println("优秀");}else //成绩在75~90 if(crose>=75){ System.out.println("良好");}else //成绩在60~75 if(crose>=60){

2020-11-10 21:01:39 355 2

原创 运算符,++,--,*,/和%的运用和区别

运算符,++,–,*,/和%的运用和区别 /** * 运算符,++,--,*,/和%的运用和区别; */ int a = 5; int b = 7; int c; c = ++a + b++; /** * b++是等于 b= b+1 * 这里++a是先赋值/自增(运行a+1)在运算,b++是先运算在赋值/自增 * 所以 c = 6 + 7; */ System.out.println("c的结果是"+c); System.out.println("a的最后结果是"+a

2020-11-09 20:05:26 10659 3

原创 基本数据类型的强制转换

输出hello wordbyte(-128~127)、short、char、int(最多十位数且以2开头)、long、float、double(精度比float高)、boolean强制类型转换,大的转小的不需要变,小的转大的需要强制类型转换,在转换的值得前面加基本数据类型 输出hello word byte(-128~127)、short、char、int(最多十位数且以2开头)、long、float、double(精度比float高)、boolean 强制类型转换,大的转小的不需要变,小的

2020-11-06 20:34:57 819 6

原创 get和set方法程序运行的详细图解

get和set方法程序运行的详细图解定义狗的种类,名字,private是私有的不能被别的类调用,需要重新定义才能使用。**public class HomeWork {//狗的名字private String colour;//狗的种类private String breed;//定狗的名字public void setColour(String newColour){colour =newColour;}//获取狗的名字public String getColour(){retu

2020-11-05 20:22:02 400

空空如也

空空如也

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

TA关注的人

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