Java
文章平均质量分 83
Four-Tiger
本人只是一个喜欢逛博客看看文章的,遇到喜欢的就会保存下来,自己留着有时间看看。工作之中遇到的一些问题也会随手记在这上面,学无止境,温故而知新。
不积跬步,无以至千里;不积小流,无以成江海。
展开
-
java程序使用websocket,登录和发送长连接
import lombok.extern.slf4j.Slf4j;import org.java_websocket.WebSocket;import org.springframework.beans.factory.annotation.Value;import org.springframework.boot.ApplicationArguments;import org.springframework.boot.ApplicationRunner;import org.springfra.原创 2020-12-28 11:51:36 · 969 阅读 · 2 评论 -
使用java程序,监听tcp协议端口
import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.*;import io.netty.channel.nio.NioEventLoopGroup;import io.netty.channel.socket.SocketChannel;import io.netty.channel.socket.nio.NioServerSocketChannel;import lombok.extern.slf4j.Slf4j;.原创 2020-12-02 16:48:24 · 2369 阅读 · 0 评论 -
使用工具获取serive的类,解决在工具类之中引入service为null情况
import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframework.context.ApplicationContextAware;import org.springframework.stereotype.Component;/** * Spring 工具包 获取bean类 */@Component.原创 2020-11-23 13:58:46 · 369 阅读 · 1 评论 -
MyBatisPlus的代码生成器
首先导入pom文件依赖包:<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.2.RELEASE</version> <relativePath/> <!-- lookup parent from原创 2020-07-31 15:51:56 · 315 阅读 · 0 评论 -
SpringBoot中AOP的使用方法
笔记:我就是自己平时记下一些项目中用到的,有不对的地方大家可以指正。pom文件要导入依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>在controller同级目录下创建一个文件夹aspectpackage.原创 2020-07-29 16:55:29 · 119 阅读 · 0 评论 -
RabbitMQ的一些配置
application.properties配置文件的配置(消费者的配置):#连接地址v2.spring.rabbitmq.host=11.110.1.11#连接端口v2.spring.rabbitmq.port=5672v2.spring.rabbitmq.username=用户名v2.spring.rabbitmq.password=密码#连接到rabbitMQ的vhostv2.spring.rabbitmq.virtual-host=123546v2.spring.main.a原创 2020-07-27 15:46:49 · 404 阅读 · 1 评论 -
集合【Map、可变参数、Collections】
第1章 Map接口1.1 Map接口概述我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图。l Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储。l Map中的集合,元素是成对存在的(理解为夫妻)。每个元素由键与值两部分组成,通过键可以找对所对应的值。l Co...原创 2018-04-01 11:08:10 · 339 阅读 · 0 评论 -
常用日期工具类
package com.bmcc.framework.util;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;import java.util.HashMap;import java.util.Ma...原创 2018-11-15 15:23:34 · 3652 阅读 · 0 评论 -
常用加密工具类(加密算法工具类,MD5和AES)
package com.bmcc.framework.util;import java.security.MessageDigest;import javax.crypto.Cipher;import javax.crypto.spec.SecretKeySpec;/*** 加密算法工具类,MD5和DES** @author yuhu.zhang*/public c...原创 2018-11-15 15:24:50 · 1169 阅读 · 2 评论 -
字符串常用数据(工具类的处理)
package com.bmcc.framework.util;import java.util.ArrayList;import java.util.UUID;/** * * @author yuhu.zhang * */public class CMyString { /** 默认字符编码集 */ public static String ENCODI...原创 2018-11-15 15:26:55 · 237 阅读 · 1 评论 -
正则验证代码
private boolean isTableSql(String tableName) { Pattern regex = Pattern.compile("^\\w+$"); Matcher matcher = regex.matcher(tableName); return mat...原创 2018-11-20 09:20:45 · 816 阅读 · 0 评论 -
日期比较工具类
package Chasen.utils; import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date; public class CompareDate { public static void main(String args[]) throws Pars...原创 2018-12-27 17:47:21 · 1320 阅读 · 0 评论 -
kafka相关技术和简单操作
1. kafka介绍1.1 什么是KafkaApache Kafka是一个分布式发布 - 订阅消息系统和一个强大的队列,可以处理大量的数据,并使能够将消息从一个端点传递到另一个端点。 Kafka适合离线和在线消息消费。 Kafka消息保留在磁盘上,并在群集内复制以防止数据丢失,Kafka构建在ZooKeeper同步服务之上。Kafka专为分布式高吞吐量系统而设计。与其他消息传递系统相比...原创 2018-12-27 18:05:01 · 320 阅读 · 0 评论 -
String字符串拼接的比较
一。基本概念String是常量,其对象一旦创建就不能再被改变。换句话说,String对象是不可变的,每一个看起来被修改的值,实际上都是创造了一个全新的String对象二。字符串拼接1.“ + ” 操作符 String对象后面跟着一个 “+” 时,不管 “+” 后面的是什么数据(可能不是Strig对象),都会转换为字符串。转换时是通过调用该对象的toString()方法。stri...原创 2018-12-19 09:31:13 · 8281 阅读 · 0 评论 -
Redis
Redis介绍 什么是Redis Redis是一种key-value形式的NoSQL内存数据库,由ANSI C编写,遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。Redis最大的特性是它会将所有数据都放在内存中,所以读写速度性能非常好注:Redis与Memcached的比较:1. Redis不仅仅支持简单的k/v类型的数据,...原创 2018-12-19 09:31:52 · 402 阅读 · 0 评论 -
Eclipse快捷键大全
Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对上面那条来说了...原创 2019-04-19 09:30:40 · 220 阅读 · 0 评论 -
获取主机IP地址
/** * 获取请求主机IP地址,如果通过代理进来,则透过防火墙获取真实IP地址; * * @param request * @return 真实IP * @throws IOException */ private String getIpAddress(HttpServletRequest request) throw...原创 2019-04-29 09:44:20 · 1548 阅读 · 0 评论 -
Java面试题集(七)--Spring常见面试问题
<bean id="employeeDAO" class="com.howtodoinjava.EmployeeDAOImpl" autowire="byName" /> 除了bean配置文件中提供的自动装配模式,还可以使用@Autowired注解来自动装配指定的bean。在使用@Autowired注解之前需要在按照如下的配置方式在Spring配置文件进行配置才可以使用。[htm...原创 2018-03-21 20:53:33 · 272 阅读 · 0 评论 -
Java面试题集(六)
以下为框架补充部分:Struts 2中,Action通过什么方式获得用户从页面输入的数据,又是通过什么方式把其自身的数据传给视图的?Action从页面获取数据有三种方式:①通过Action属性接受参数②通过域模型获取参数③通过模型驱动获取参数 (ModelDriven<T>)Action将数据存入值栈(Value Stack)中,视图可以通过表达式语言(EL)从值栈中获取数据。阐述St...原创 2018-03-21 20:51:48 · 115 阅读 · 0 评论 -
Mysql单表、多表、SQL语句(DQL)
第1章 SQL语句(DQL)1.1 DQL准备工作和语法1.1.1 准备工作#创建商品表:create table product( pid int primary key, pname varchar(20), price double, category_id varchar(32));INSERT INTO product(pid,pname,p...原创 2018-03-30 16:45:29 · 7061 阅读 · 0 评论 -
SQL语句(多表关系)
第1章 多表关系实战1.1 实战1:省和市l 方案1:多张表,一对多l 方案2:一张表,自关联一对多 1.2 实战2:用户和角色l 多对多关系1.3 实战3:角色和权限l 多对多关系1.4 实战4:客户和联系人(可选)l 一对多:一个客户服务于多个联系人 第2章 多表查询CREATE TABLE category ( cid...原创 2018-03-30 16:55:20 · 36877 阅读 · 6 评论 -
REST 风格
Restful API 近年来应用越来越广泛,各大互联网公司纷纷推出了自己的 Restful API 服务。本文将从实际应用出发,从 REST 到 Restful 再到 Restful API ,逐一进行介绍和分析。 REST 风格REST 风格最早由 Roy Thomas Fielding 博士提出, REST 是一种系统架构设计风格,主要面向基于网络的软件架构设计。这一架构风格,包含了以下一些...原创 2018-03-25 10:41:46 · 380 阅读 · 0 评论 -
Redis的相关问题总结
一、 Redis1. Redis 的特点? Redis 是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库。Redis 全称为:Remote Dictionary Server(远程数据服务),该软件使用 C 语言编写,典型的 NoSQL 数据库服务器,Redis 是一个 key-value 存储系统,它支持丰富的数据类型,如:string、l...原创 2018-03-25 10:55:04 · 172 阅读 · 0 评论 -
Mysql数据库介绍
1.1 数据库概述l 什么是数据库数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作。l 什么是数据库管理系统数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性...原创 2018-03-30 17:19:18 · 6660 阅读 · 0 评论 -
数据库_MySQL单表_增删改
01.数据库介绍_什么是数据库: 1).字面解释:存储数据的仓库。它是一个软件,底层存储数据仍然是使用"文件系统"。只是它底层存储数据采用了"索引页"的方式,它类似于 字典的"目录",可以很快的在大量数据中快速的定位到我们要查询的数据。所以在需要存储大量数据的情况下,我们需要"数据库软件"来存储 数据。02.数据库介绍_什么是数据库管理系统: 数据库管理系统(DataBase Mana...原创 2018-03-30 17:46:17 · 284 阅读 · 0 评论 -
数据库_MySQL单表_查询_多表
01.MySQL数据库_DQL查询语句_简单查询: 1).查询的基本语法:select 筛选字段名 from 表名 where 条件; 2).查询所有商品: select * from product; 3).查询部分字段: select category_id,pname,price from product; 说明:字段可以不按定义顺序出现,多个字段中间用逗号分隔,最后一个字段后...原创 2018-03-30 17:58:28 · 1916 阅读 · 0 评论 -
数据库_MySQL多表_查询_子查询
01.MySQL多表_建表原则: 1).要保证每个列只记录一个数据,如果一个列记录了多条数据,那么应该拆分为多列存储; 订单信息: id 订单日期 订单金额 商品信息 1 2017-10-01 1000 1,2,3,4 2).为每个表创建一个"主键"字段。 3).要保证每个表只记录一个事情,如果记录了多件事情,应该分表存储; 学员信息表: id 姓名 性别 年龄 科目(科目需要被分离出...原创 2018-03-30 18:05:53 · 651 阅读 · 0 评论 -
集合【迭代器、增强for、泛型】
1.1.1 集合介绍前面的学习,我们知道数据多了,使用数组存放。而且数组中存放的都是基本类型的数据,并且数组是定长的。当在程序中创建的对象比较多的时候,需要对这些对象进行统一的管理和操作,那么首先我们就需要把这些对象存储起来。使用数组是可以存放对象的,我们可以定义对象数组来存放,但是数组这个容器存放对象,要对其中的对象进行更复杂操作时,数据就显的很麻烦。那怎么办呢?Java中给...原创 2018-03-30 18:37:13 · 269 阅读 · 0 评论 -
集合【LinkedList、HashSet、Collection集合体系】
集合【LinkedList、HashSet、Collection集合体系】第1章 数据结构1.1 List集合存储数据的结构List接口下有很多个集合,它们存储元素所采用的结构方式是不同的,这样就导致了这些集合有它们各自的特点,供给我们在不同的环境下进行使用。数据存储的常用结构有:堆栈、队列、数组、链表。我们分别来了解一下:l 堆栈,采用该结构的集合,对元素的存取有如下的特点:n ...原创 2018-03-30 18:52:46 · 959 阅读 · 0 评论 -
jdk7安装及配置
jdk版本:jdk-7u67-windows-x64 安装配置: 1:根据自己电脑系统x86或者x64下载对应的jdk版本并安装,本人电脑是64位系统,故安装的是64位jdk 2:配置环境 (1)计算机右击属性–高级系统设置–环境变量 (2)在“系统变量”下新建JAVA_HOME何CLASSPATH两个变量名 变量名:JAVA_HOME 变量值:D:\Pro...原创 2018-03-21 20:41:02 · 648 阅读 · 0 评论 -
Java面试题集(一)
一. Java基础部分基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法。1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致。2、Java有没有goto? java中的保留字,现在没有在java中使用。...原创 2018-03-21 20:44:02 · 346 阅读 · 0 评论 -
Java面试题集(二)
51、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1,写出程序。 以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。 [java] view plain copy public class ThreadTest1 { private int j; public static void main(String args[]){ Th...原创 2018-03-21 20:46:33 · 159 阅读 · 0 评论 -
Java面试题集(三)
Jdk与jre的区别?Java运行是环境(jre)是将要执行java程序的java虚拟机。Java开发工具包(jdk)是完整的java软件开发包,包含jre,编译器和其他工具如javaDoc,java调试器,可以让开发者开发,编译,执行java应用程序。解释内存中的栈(stack)、堆(heap)和静态存储区的用法?通常我们定义一个基本数据类型的变量,一个对象的引用,还有就是函数调用的现场保存都使...原创 2018-03-21 20:47:33 · 179 阅读 · 0 评论 -
Java面试题集(四)
二. Java Web基础部分在js中如何创建一个对象?var p1={name:”tom”,”age”:12};function Person(name,age){ this.name=name; this.age=age;}var p2=new Person(“jack”,14);在js中如何得到对象的属性?Var age=p2.age;age=p1[“age”];Alert(age)...原创 2018-03-21 20:48:34 · 188 阅读 · 0 评论 -
Java面试题集(五)
三、开源框架什么是mybaties?Mybaties是支持普通sql查询,存储过程和高级映射的优秀持久层框架。Mybaties消除了几乎所有的jdbc代码和参数的手工设置以及结果集的检索。Mybaties使用简单的xml或注解用于配置和原始映射,将接口和Java的pojos(Plan Old Java Objects 普通的Java对象)映射成数据库中的记录。Mybaties的动态sql语句是基于...原创 2018-03-21 20:49:51 · 816 阅读 · 0 评论 -
Java朗致集团面试题
首先本人自己是一名Java开发,去过朗致集团面试,无聊之余,整理下他们公司的面试题,希望可以帮到别人。当然有些部分是自己查的,也有一部分题目没有写,大家也可以帮我补充,或者更改。注:如有侵权,请联系本人删除文章,谢谢。一、如此定义,short s=1;是否有误,定义 long v=99999999;是否有误;答:short s =1 没问问题,需要注意的是,short和int之间会有一个类型转换的...原创 2018-03-30 16:27:17 · 10083 阅读 · 1 评论