自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 windows系统安装mysql多实例

linux系统直接用docker多mysql容器部署,完事。windows下,需要下安装一个mysql实例(wmysql3306),然后copy到另一个目录(mysql3307)下。这里

2020-11-18 15:49:35 221

原创 根据实体生成sql语句

五一前无意间看到了一篇Java反射获取注解的文章,突发奇想,自己也尝试写个根据实体来生成sql语句的短文吧,也算是加深下自己对Java反射知识的理解。话不多说,因为笔者用多了通用Mapper+MyBaits的敏捷开发。所以自己写的demo或多或少有通用Mapper的一些影子。整体结构:启动类:public class Test { public static voi...

2020-05-06 14:21:58 1843

原创 elementui的表格错位问题

开发过程中,遇到了因为表格列太多,导致表头和表格错位,最后百度找了这个博主的解决方式,特此问题记录下来。https://blog.csdn.net/NewDayStudy/article/details/97887917...

2020-04-03 10:54:23 1307

原创 如何让mysql支持存储表情

言简意赅,直入正题。我用的是mysql数据库,这里我用mysql示意,其他数据库大多一致:1、数据库方面: 配置数据库、表、字段三者的字符集为utf8mb4,因为mysql的utf8不是真正意义上的utf8,它只能存储3个字节,而真正的utf8是可以存储4个字节的数据,后来为了弥补这一缺陷,mysql官方推出了utf8mb4字符集来弥补自己的缺陷。所以,这里需要将字符集改成ut...

2020-03-03 10:39:17 698

原创 使用PageHelper出现的分页问题

今天突然出现一个bug,发现表格页卡出现问题了,选择一页显示50条数据,好着没问题,然后选显示10条,就出现问题了,分页功能不起作用了,等于说是返回给页面的total总数不对劲。一顿操作debug之后,发现是执行sql语句返回的数据条数就是10条,当时我就纳闷了,这么简单的bug不应该是PageHelper出现的啊,毕竟好歹也是好多人用的分页插件呢。(后来发现是自己找问题的方向错了 -.-)...

2019-09-09 16:48:33 1782 1

原创 @Transient

今天需求遇到了要加一个属性,但是这个属性还不想插入到数据库中,那么就是不能映射到数据库。原本是想写个vo实体,集成这个po映射实体的,但是因为这次是二次开发,修改太多容易出问题,就打算用这个注解。@Transientprivate Map<String, Object> diffMap;这样,这个属性就不会再插入时保存到数据库中。...

2019-08-20 10:17:52 1142

原创 spring JdbcTemplate 一

今天在学springboot的时候,学到了数据访问这块,然后在写了一个demo,随手就用springboot-data-starter中自带的JdbcTemplate模板。用了之后发现总是查询不到所有的数据。实体类:public class User { private Long id; private String username; private Stri...

2019-04-28 17:18:40 370

原创 认识WebSocket(三)

有一周没写文章了,前几天一直在忙上线项目的事,终于在做题那把项目上线了。每天腾出了一点时间来,写了一个五子棋游戏,用的是websocket技术实现通信的。源码我放在github上了,大家有兴趣的可以pull下来看看。^_^传送门:https://github.com/15706049475/websocket-chess-demo.git演示:这个例子呢,只能连接两个客户端,来实...

2019-04-18 12:59:15 261

原创 认识WebSocket(二)

前几天,我们认识了WebSocket,一个是客户端,一个是服务端,二者在连接的时候通过HTTP建立一次握手,后面就一直是Tcp传输的长连接。然而,在实际开发,几乎都是多客户端的形式,来连接。那么这次我们来用WebSocket技术做一下多客户端连接服务端。多客户端和单客户端连接服务端的区别在于,应该在服务端对每个连接成功的客户端所有区分,即在单客户端连接成功时,保存识别该客户端的唯一标识(比如数...

2019-04-08 11:58:37 758

原创 认识WebSocket(一)

刚入职没几天,就被公司老大叫来分配任务,让我做和客户那边进行双向通信的功能设计。之前没做过这个,一脸懵逼,问了技术群里的大佬,推荐我用Tomcat Socket,于是我百度查了查这个,就打算学习一下Websocket技术。这门技术是现在做双向通信挺火的技术,那么已经用惯了HTTP通信,为什么要用Websocket呢?不懂的可以看下面这几条技术博客讲解,我这里就不在说明原理。http:/...

2019-03-31 18:38:37 260

原创 发生异常Address already in use: bind

原因:启动端口被占用解决办法:关掉占用此端口的程序修改tomcat的启动端口关掉占用此端口的程序:(1)在windows的cmd下,用命令行:netstat -ano来显示协议统计信息和TCP/IP网络连接C:\Users\xiake&gt;netstat -ano(2)找到占用8080端口活动连接 协议 本地地址 外部地址 状态 PID...

2018-06-14 20:24:54 970

原创 eclipse中添加全局的默认jre,和修改tomcat中的jdk配置

配置全局的默认jre,这样每次创建项目都是使用默认版本的jre。                点击window --&gt; java --&gt; installed JREs --&gt; add即可    2. 修改tomcat的JDK版本。            window--&gt;prefrences--&gt;myeclipse--&gt;servers--&gt;tomcat-...

2018-06-14 03:29:49 5311 2

原创 Java数据库的连接

在工作开发中,我们在做项目时,需要用到数据库,Java程序于数据哭连接方法有两种,一种是使用JDBC-ODBC桥接器于数据库连接,一种是用纯Java的JDBC驱动程序实现与数据库连接。而今天我只讲解用纯Java的JDBC驱动程序实现数据库连接,因为我用的是eclipse,所以我用eclipse来讲解。第一步、创建一个java项目,创建一个目录为lib的文件夹,然后把mysql数据库jar包放进去。...

2018-06-11 22:25:43 318

原创 org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()Ljava/lang/Integer

我在学习通用Mapper的时候遇到了这个异常:Exception:inthread"main"java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()Ljava/lang/Integer; at org.apache.ibatis.executo...

2018-06-08 18:52:55 199

原创 操作字节的IO流

字节流以字节为单位,用来读取8位的数据,除了能够处理纯文本之外,还能用来处理二进制文件的数据。InputStream类和OutputStream类是所有字节流的父类。InputStream类面向字节的输入流都是InputStream类的子类,其类的结构层次如图:类名功能描述FileInputStream从文件中读取的输入流PipedInputStream输入管道FilterInputStream过...

2018-06-06 20:58:46 167

原创 操作字符的IO流

字符流是针对字符数据的特点进行过优化的流,因而提供了一些对面向字符的有用特性,字符流的目标或者源通常是文本文件。Reader和Writer是java.io包中所有字符流的父类。由于它们都是抽象类,所以应该使用它们的子类来创建实体对象,利用对象来处理相关的读写操作。Reader和Writer的子类又可以分为两大类:一类用来从数据源读入数据或往目的地写入数据,另一类对数据执行某种处理。面向字符的输入流...

2018-06-06 19:12:06 130

原创 Java中File类

Java中File是管理文件和目录的类,一个File类对象相当于一个文件或者目录,通过调用File类提供的各种方法,能够创建、删除、重命名文件、判断文件是否存在。不同的操作系统具有不同的文件组织方式,通过File对象,Java可以用与平台无关的、统一的方式来处理文件和目录。下面是File类中一些对文件操作的常用的方法。public static void main(String[] args) t...

2018-06-06 18:10:01 231

转载 输入输出流的概念

输入输出(I/O)是指程序与外部设备或其他计算机进行交互的操作。几乎所有的程序都具有输入与输出操作,如从键盘上读取数据,从本地或网络上的文件读取数据或写入数据等。通过输入和输出操作可以从外界接收信息,或者是把信息传递给外界。Java把这些输入与输出操作用流来实现,通过统一的接口来表示,从而使程序设计更为简单。Java流的概念流(Stream)是指在计算机的输入输出操作中各部件之间的数据流动。按照数...

2018-06-06 17:38:08 8184

原创 Java多线程(六、线程死锁)

111

2018-06-06 17:32:32 152

原创 Java多线程(五、线程间的通信)

为了让线程与线程之间进行通信,Java包含了通过wait(),notify()和nottifyAll()等方法来实现一个进程间通信机制。这些方法在对象中是用final方法实现的,所以所有的类都可以含有它们。这三个方法仅在synchronized()方法中才能被调用这些方法都是在Object类中被声明的:wait()告知被调用的线程放弃管程进入睡眠直到其他线程进入相同的管程并且调用notify()。...

2018-06-06 17:09:10 149

原创 Java多线程(四、synchronized同步)

在Java多线程的使用(三) 讲到了线程之会会有优先级和一些其他因素来抢占CPU资源,它们是争先恐后的去完成各自的方法,这样导致运行结果是不可预料的。public class Demo {    public static void main(String[] args) throws InterruptedException {        Output out=new Output()...

2018-06-06 15:23:49 130

原创 Java多线程(三、线程的一些概念)

isAlive()和join()的使用我们之前说到,最好让主线程最后结束,在前面的例子中,都是通过调用sleep()方法,让线程睡眠产生时差来实现的,经过足够长时间的延迟以确保所有子线程都先于主线程结束。然而,这不是一个令人满意的解决方法。它也带来了一个大问题:一个线程如何直到另一个线程已经结束?幸运的是,Thread类提供了回答此问题的方法。有两个方法可以判断一个线程是否已经结束。第一,可以在线...

2018-06-05 23:49:48 162

原创 Java多线程(二、创建子线程)

今天来讲讲Java如何创建一个线程。大多数情况下,通过实例化一个Thread对象来创建一个线程,Java定义了两种方式:实现Runnable接口继承Thread类实现Runnable接口创建线程的最简单的方法就是创建一个Runnable口的类。Runnable抽象了一个执行代码单元。为实现Runnable接口,一个类仅需实现一个run()的简单方法,在run()方法中可以定义代码来构建新的线程。创...

2018-06-05 19:08:10 7071

原创 Java多线程(一、线程的使用)

来看看Java多线程相关的类吧。和其他多数计算机语言不同,Java内置支持多线程编程(multithreaded programming)。学习多线程,首先需要了解线程和进程的区别,看我上次讲解的  线程和进程的区别Java的多线程系统建立在Thread类,它的方法以及它的共伴接口Runnable基础上。Thread类封装了线程的执行。既然你不能直接引用运行着的线程的状态,你要通过它的代理处理它,...

2018-06-05 18:23:20 415

原创 线程和进程的区别

什么是多线程和多进程呢?多线程程序包含两条或多条并发运行的任务。程序中每个这样的部分都叫一个线程(Thread),每个线程都有独立的执行路径。因此,多线程是多任务处理的一种特殊形式。你一定知道多任务处理,当你在使用音乐软件的时候,你可以一边下载爱听的歌曲,一边播放着音乐,一边浏览着每日推荐音乐,这样同时进行的多任务也就是多线程,每一个任务都是一个线程。然而,多任务处理有两种不同截然不同的类型,基于...

2018-06-05 17:55:58 208

原创 JavaDate类的简单介绍

Java中Date(日期时间)类位于java.util包中,利用日期类可以得到当前的日期和时间,创建日期和时间参数,计算和比较时间,在工作开发中也是经常使用。Date类Date类是Java的日期时间类,其构造方法比较多,下面是常用的两个:Date():使用当前的日期和时间初始化一个日期对象Date(long millisec):这个long类型的参数millisec是从1970年01月01日00时...

2018-06-05 17:39:44 1788

原创 Java异常

Java异常是一个描述在代码段中发生的出错的情况,Java异常可能是由Java运行时系统产生,或者是由你自己写的代码产生。被Java抛出的异常与违反语言规范或超过Java执行环境限制的基本错误有关。手工编码产生的异常基本上用于报告方法调用程序的出错状况。Java异常处理通过5个关键字控制:try、catch、throw、throws和finally。我们之前学习也遇到过不少的Java异常,比如空异...

2018-06-04 18:41:15 858

原创 Java泛型

今天来讲一讲Java泛型,泛型是Java1.5的新增特性,它以C++为模板,本质是参数化类型(Parameterized Type)的应用。我们知道,使用变量之前要定义,定义一个变量时必须要指明它的数据类型,什么样的数据类型赋给什么样的值。public class Test {       private int num;    public int getNum() {        r...

2018-06-04 17:57:35 139

原创 Java抽象类和接口的区别

由于最近要找工作,所以把Java从头到尾准备复习一遍。今天来讲一讲Java中抽象类和接口的区别。类是对象的模板,抽象类和接口都可以看作是实现类的模板。由于从某种角度来看,接口是特殊的抽象类。它们的渊源颇深,有很大的相识之处,所以在选择使用谁的问题上很容易迷糊。我们首先来分析它们各自的特性。抽象类只需声明方法而不用去实现。不能创建abstract类的实例,然而可以创建一个类型是抽象类的变量,并让它指...

2018-06-04 17:09:59 1051

原创 Java接口(interface)的的概念及使用

上次,我们讲了抽象类,不了解抽象类的可以看看我上次写的Java抽象类在抽象类中,可以包含一个或多个抽象方法;但是在接口(interface)中,所有的方法必须都是抽象的,不能有方法体,它比抽象类更加“抽象”。接口使用interface关键字来修饰,可以看作是特殊的抽象类,可以指定一个类必须做什么,而不是规定它如何去做。public interface InterfaceTest {    int...

2018-06-04 16:33:02 504

原创 Java抽象类

什么是抽象?百度给出的解释是:从具体事物抽出、概括出它们共同的方面、本质属性与关系等,而将个别的、非本质的方面、属性与关系舍弃,这种思维过程,称为抽象。这句话概括了抽象的概念,而在Java中,你可以只给出方法的定义不去实现方法的具体事物,由子类去根据具体需求来具体实现。这种只给出方法定义而不具体实现的方法被称为抽象方法,抽象方法是没有方法体的,在代码的表达上就是没有“{}”。包含一个或多个抽象方法...

2018-06-04 15:49:24 6066

原创 Java Object类

Object类位于java.lang包,是所有Java类的祖先。Java中的每个类都是由这个类扩展而来。定义Java类时如果没有显式的指明父类,那么就默认继承了Object类。public class Demo {//默认继承了Object类    //...}在Java中,只有基本类型不是对象。例如数值,字符和布尔型的值都不是对象,是基本数据类型。而所有的数组类型,不管是对象数组还是基本类型...

2018-06-04 14:59:54 1610

原创 Java多态对象的类型转换

在之前,我们讲Java包装类得时候,大概了解了如果把一个字符串类型的数值转换成int类型,这样也叫做类型转换。如果不了解什么是Java的包装类,可以查看我之前写的Java包装类和基础数据类型我们可以用Integer类的方法来转换类型。String str="100";int n=Integer.valueOf(str);System.out.println(n);但是我们现在要讲的是Java...

2018-06-04 14:27:51 522

原创 Java多态和动态绑定

在Java中,父类的变量可以引用父类的实例,也可以引用子类的实例。请看一个例子:public class Demo { public static void main(String[] args) { Animal animal=new Animal();//实例化一个Animal对象 animal.say(); animal=new Cat();//实例化子类对象 an...

2018-06-04 00:24:47 287

原创 Java继承中方法的覆盖和重载

在类继承中,子类可以修改从父类继承来的方法,也就是说子类能够创建一个和父类方法有不同功能的方法,但具有相同的名称、返回值类型、参数列表。如果在新类中定义了一个方法,其名称、返回值类型和参数列表和父类中的相同,那么,新方法就称作覆盖旧有方法。被覆盖的方法只能通过super调用。注意:覆盖不会删除父类中的方法,而是对子类的实例隐藏,暂时不使用。public class Demo{ public...

2018-06-04 00:03:13 497

原创 Java方法重载

在Java中,同一个类中的多个方法可以有相同的方法名称,但是有不同的参数列表,这就称为方法重载(method overloading)。参数列表又叫参数签名,包括参数的类型、参数的个数、参数的顺序,只要有一个不同就叫做参数列表不同。重载是面向对象的一个基本特性。public class Demo { //一个普通得方法,不带参数,无返回值 public void add(){ //met...

2018-06-03 23:56:35 52283 19

原创 Java中一些其他修饰符,如super、static、final

super修饰符super关键字与this类似,this用来表示当前类的实例,super用来表示父类。super可以用在子类上,使用方式和this一样,通过点号(.)来在子类中获取父类的成员变量和方法。super也可以用在子类的类中,Java能自动上层追溯。super关键字的功能:调用父类中声明为private的变量。可以调用在子类中已被覆盖了的方法。作为方法名表示父类构造方法。注意:如果在子类的...

2018-06-03 18:42:11 330

原创 Java继承的概念和实现

继承时类和类之间的关系,是一个很简单很直观的概念,与显示生活中的继承(例如儿子继承了父亲财产)类似。继承可以理解为一个类从另一个类中获取方法和属性的过程。如果类B继承于类A,那么类B就拥有类A的属性和方法。继承使用extends关键字。例如我们定义了一个People:public class People { public String name;//姓名 public String age...

2018-06-03 17:47:37 4713 2

原创 Java包装类和基础数据类型

虽然Java语言时典型的面向对象编程(OOP),但其中的八种基本数据并不支持面向对象编程,比如int,double,char等基本数据,基本数据类型不具备“对象”的特性——不携带属性、没有方法可以调用。而使用这些基本数据类型只是为了迎合人类根深蒂固的习惯,毕竟很多人都是先学了面向过程编程的C语言,然后才学Java语言(话说我自己当初就是学了C,再紧跟着学了Java),并且的确能够有效的、简单的进行...

2018-06-03 17:21:37 220

原创 Java中this关键字使用

this关键字用来表示当前对象本,或当前类的一个实例,通过this可以调用本对象的所有属性和方法。例如:public class Demo{ public int x = 10; public int y = 15; public void sum(){ // 通过 this 点取成员变量 int z = this.x + this.y;...

2018-06-03 16:53:46 1519

空空如也

空空如也

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

TA关注的人

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