自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用Quartz Job中bean报空指针问题

Spring 整合quartz进行定时任务,如果直接在job内注入Bean时,报空指针异常。一、重写JobFactory@Componentpublic class JobFactory extends SpringBeanJobFactory { @Autowired private AutowireCapableBeanFactory beanFactory; /** * 重写 覆盖了super的createJobInstance方法...

2020-11-27 11:10:08 582

转载 JAVA-线程池

**@JAVA 线程池TOC** Java并发编程:线程池的使用   在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:   如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。   那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行

2020-10-15 15:56:10 284

原创 Java - SSM+Shiro项目运行流程

一、配置web.xml<!-- web.xml shiro--><fileter DelegatingFilterProxy urlpattern=/* 接收请求,查找并调用spring工厂中的ShiroFilter ><!-- web.xml Spring --> <listener ContextLoad...

2019-11-20 20:34:10 281

原创 Java - SpringMvc 运行主流程

一、前端控制器DispatcherServlet:DispatcherServlet#doService(){ //.... doDispatch();//主体流程 //....}DispatcherServlet#doDispatch(){ //.... //获取请求中指向的 Handler,返回 HandlerExecutionChain /...

2019-11-20 19:36:50 189

原创 Quartz - 任务调度框架

Quartz 在某一个有规律的时间点干某件事。并且时间的触发的条件可以非常复杂,复杂到需要一个专门的框架来干这个事。 Quartz就是来干这样的事,你给它一个触发条件的定义,它负责到了时间点,触发相应的Job起来干活如果应用程序需要在给定时间执行任务,或者如果系统有连续维护作业,那么Quartz是理想的解决方案。一、特点1、作业调度...

2019-11-09 20:40:20 184

原创 Web Service

Web Service: 简介:Web Service是一个平台独立的,低耦合的,基于可编程的web的应用程序,可使用开放的XML标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。soap协议: soap协议是web service的通信协议。 soap=http+xml 即soap协议在通信数据时依然采用http+协...

2019-11-09 19:27:56 88

原创 Java -GC 垃圾回收器

GC 垃圾回收器: 简介:GC 垃圾回收器是 JVM 中自动内存管理机制的具体实现,在 HotSpot 虚拟机中 GC 的工作主要划分为两大类,分别是内存动态分配和垃圾回收,在内存执行分配之前,GC 首先会对内存空间进行划分,考虑到 JVM中存活对象的生命周期会具有两极化,应该采取不同的垃圾收集策略,分代收集可以实现这个目标,目前几乎所有的GC 都是采用分代收集算法执行垃...

2019-11-04 20:56:25 134

原创 Shiro标签

Shiro标签 shiro提供了很多标签,用于在jsp中做安全校验。完成对页面元素的访问控制。一、使用过程 1、 导入shiro标签库 <%@ page contentType="text/html;charset=UTF-8" language="java" %>...

2019-11-03 14:45:58 216

原创 Java 安全(权限)框架 - Shiro

Shiro使用:1、 Apache Shiro 是 Java 的一个安全(权限)框架。2、Shiro 可以轻松的完成:身份认证、授权、加密、会话管理等功能。3、Shiro 可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE 环境,也可以用在 JavaEE 环境。4、功能强大且易用,可以快速轻松地保护任何应用程序 ( 从最小的移动应用程序到最大的Web和企业应用程序。...

2019-11-03 11:31:50 1862

原创 Shiro-Redis-Cache - 将查询权限存入Redis

Shiro-Redis-Cache:Cache:负责完成缓存数据的功能CacheManager:负责管理Cache核心流程,重点是会创建Cache对象.一、定义Cache组件package com.vince.cache;import lombok.Getter;import lombok.Setter;import org.apache.shiro.cache.C...

2019-11-03 10:35:31 788

原创 MyBatis-Redis-Cache 实现缓存

MyBatis-Redis-Cache: Mybatsi默认缓存对象 PerpetualCache,是本地缓存。将缓存数据存入redis操作过程:定义缓存组件:package com.vince.MyBatisCache;import org.apache.ibatis.cache.Cache;import org.springframework.da...

2019-11-03 10:17:10 1325

原创 Redis 密码

Redsi 密码:一、添加密码 设置访问密码 这在您不信任的环境中可能很有用,其他可以随意访问主机的用户,却不能随意访问redis。在redis配置文件中 设置:requirepass abc登录:连接redis-cli -p 8000连接后无法执行任何读写操作,需要如下,输入密码auth abcjava 中使用// Jedis使用密码Jedi...

2019-11-02 22:11:03 168

原创 Redis 集群

搭建Redis 集群的过程: 集群介绍: redis3.x 后的集群 ,是多主多从的集群,多个主机组成一个集群的主体,共同负责对外提供读写服务。每个主机都有自己的从机,从机的主要工作是:1. 同步主机数据 2.当主机宕机时顶替主机。 搭建过程(在linux系统模拟)一、安装依赖 安装流程: 1、yum -y inst...

2019-11-02 21:53:24 203

原创 Redis 两种持久化方案

Redsi 持久化方案: redis支持将数据持久化到磁盘。一、RDB: 原理分析:Snapshotting(RDB)机制的运行原理1、在某些时刻,Redis通过fork产生子进程,一个父进程的快照(副本),其中有和父进程当前时刻相同的数据2、父进程继续处理client请求,子进程负责将快照(数据副本)写入临时文件3、子进程写完后,用临时文件替换原来...

2019-10-28 22:17:13 322

原创 NoSql数据库 ----Redis

Redis的使用:1.简介:基于内存存储的,NoSql数据库 ( 非关系型数据库 ),存储结构 : key-valueRedis是一个开放源代码(BSD许可)内存中的数据结构存储,用作数据库、缓存和消息代理。对于数据量多,数据交互效率要求高的场景,可以考虑使用redis2、安装步骤:下载:https://redis.io/download依次执行:yu...

2019-10-28 21:51:59 130

原创 分布式Session

分布式session 单服务器web应用中,session信息只需存在该服务器中,随着分布式系统的流行,单系统已经不能满足日益增长的百万级用户的需求,集群方式部署服务器已在很多公司运用起来,当高并发量的请求到达服务端的时候通过负载均衡的方式分发到集群中的某个服务器,这样就有可能导致同一个用户的多次请求被分发到集群的不同服务器上,就会出现取不到session数据的情况,于是出现...

2019-10-28 21:37:51 159

原创 AJAX异步上传文件

一、ajax异步上传 :1、通过jquery提供的方法$.ajax()完成上传定义form表单:<form method="post" enctype="multipart/form-data"> 商品id:<input type="text" name="id" value="${goods.id}" readonly="readonly"/&gt...

2019-10-28 18:10:16 290

原创 数据库进阶 - 索引

一、索引一、简介使用条件:数据量很大,查询很频繁,修改不频繁的数据。核心目的: 主要是为了检索效率。单位: 列,主键列,唯一列(unique),外键列 自动有索引适合做索引的数据: 查询条件列(where) 分组条件列 排序条件列。索引的存储位置:在mysql的“data”目录中有诸多**数据库目录,其中存放的是数据库中所有表的文件,也包含索引文件**二 、树B-T...

2019-10-26 19:10:35 130

原创 使用AJAX 异步验证注册功能

使用AJAX 异步验证注册功能: 一、需求: 验证用户名是否重复; 用户名是否5-20字符; 密码至少8-20; 邮箱格式要正确 且不能为空; 如果验证没通过,则不发送注册请求 注册成功后显示注册成功,然后跳转到登录页面。1、前端校验:js文件var error_name =...

2019-10-22 21:56:42 733

原创 Linux 系统的使用

Linux系统: 操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其它软件都必须在操作系统的支持下才能运行。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。 Linux...

2019-10-19 21:12:58 143

原创 Java - 类加载器的详解

一、类加载器: Java类加载器(Java Classloader)是Java运行时环境(Java Runtime Environment)的一部分,负责动态加载Java类到Java虚拟机的内存空间中。 类通常是按需加载,即第一次使用该类时才加载。由于有了类加载器,Java运行时系统不需要知道文件与文件系统。 JVM中有3个默认的类加载器: ...

2019-10-17 18:32:03 102

原创 GitHub - 远程仓库及Git分支的应用

Git分支: 一、分支概述:1> 默认有一个分支,master。2> 分支中接收 git commit 提交的内容,为一个一个不断向前发展的提交点。每个提交点都保存一个代码版本。3> 每个分支,都有一个指针,指针默认指向最近一次提交的版本。4> 工作区中的内容,初始状态,就是指针所指向的版本状态。5> 基于指针指向的版本代码,在工作...

2019-10-16 22:00:27 464

原创 分布式版本控制 - Git 使用技巧

分布式版本控制系统 Git 一、git介绍: Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 分布式版本管理:多个贡献者本地都有完整的控制版本功能,可进行版本管理。且通过一个版本服务器共享彼此的代码。 是本地化和集中化的汇总。好处:没有单点问题,不强制依赖服务器,不强制依赖网络环境。典型工具 如Git 。 ...

2019-10-16 19:26:28 136

原创 Ajax 跨域问题如何解决

Ajax跨域问题: 域的概念: 域:协议+IP+端口 为什么AJAX访问不能跨域呢? 同源政策:不是同协议 同域名 同端口 的网页无法相互访问。 用form表单提交到不同源的网页是被允许的,因为 form 提交到另一个域名之后,原页面的脚本无法获取新页面中的内容,所以浏览器认为这是安全的。而 AJAX 是可以读取响应内容的,因此浏览...

2019-10-13 21:35:14 101

原创 REST 架构风格

Rest 架构风格 REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。是一种开发风格。 每个资源都有自己的标识 。 ...

2019-10-13 20:50:52 101

原创 Java - Mybatis 关联查询(一对多)

Mybatis 关联查询:(一对多) 需求:查询所有用户信息及用户关联的订单信息。 用户信息和订单信息为一对多关系。示例:一、改造pojo类 在user中加入order属性,order属性中用于存储关联查询的订单信息,用户与订单为一对多的关系。user类:import lombok.AllArgsConstructor;import lomb...

2019-10-13 20:20:35 511

原创 Java- Mybatis关联查询 (一对一)

Mybatsi:关联查询需求:例如查询商品信息关联查询商品类型信息,使用resultMap:一、改造pojo类 在Goods类中加入GoodsType属性,GoodsType属性中用于存储关联查询的商品类型信息,因为商品关联查询商品类型是一对一关系,所以这里使用单个GoodsType对象存储关联查询的商品类型信息。pojo类: goodsimpor...

2019-10-13 18:52:34 225

原创 Java - SpringMvc-Spring项目整合

一、 SpringMVC与Spring整合 (Spring与mybatis整合上文已介绍) 1、整合思路 整合过程,就是累加:代码+依赖+配置。然后将...

2019-10-10 22:36:53 215

原创 Java - SpringMvc 异常解析器

一、异常解析器项目中会面临各种异常。 运行时异常,大多会在开发测试阶段解决掉。 非运行时异常,是必须要处理的。 业务异常,是根据业务要求,在出现非法情况时,人为抛出的。 处理方案:DAO,Service的所有异常,必须无条件上抛,全部集中到CC中处理所有异常,将不同的异常转发到不同的错误处理结果中 为了方便起见: C中的每个Han...

2019-10-10 22:17:08 115

原创 Java - SpringMvc开发流程及静态资源访问

一、SpringMvc:java开源框架,Spring Framework的一个独立模块。MVC框架,在项目中开辟MVC层次架构对控制器中的功能 包装 简化 扩展践行工厂模式,功能架构在工厂之上MVC : Model View Controller模型 视图 控制器模型:即业务模型,负责完成业务中的数据通信处理,对应项目中的 service和dao视图:渲染数据,...

2019-10-10 22:10:23 164

原创 Java-EE 如何使用分页插件 PageHelper

一、PageHelper的使用使用步骤:第一步:添加依赖:<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.6</version>&...

2019-10-07 19:20:58 496

原创 Java-EE Spring 与Web 集成

一、Spring 与Web 集成 核心内容:注册ContextLoaderListener添加依赖:<!-- 提供和web环境集成的支持 --><dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</a...

2019-10-07 18:27:01 97

原创 Java-EE Spring 基于注解 整合(Model)

一、基于注解整合(Model)1. 注解使用@Service 业务类专用 @Repository dao实现类专用@Controller web层专用@Component 通用@Scope 用户控制bean的创建模式(单例还是多例)部分 <bean> 可以省略 !!// @Service说明 此类是一个业务类,需要将此类纳入工厂==bean 等价替...

2019-10-07 17:57:08 193 1

原创 Java--EE Spring-Mybatis整合(Model)

一、Spring-Mybatis整合(Model层) 将Model层管理在工厂中,势必要将Service和DAO的对象纳入工厂,而Service和DAO中还依赖着Mybatis的相关封装功能,所以,只有将Mybatis的相关功能组件也纳入工厂,才可以让Service和DAO照常运作。需要纳入工厂的Mybatis的相关功能组件有: DataSource 负责管理...

2019-10-07 17:35:45 177 1

原创 Java -面向切面编程(AOP)

第一节 AOP 简介Aspect-Oriented-Programming(面向切面编程)一种编程思想。切面:Aspect,由切入点和额外功能(增强)组成作用:提供了新的编程角度,不再只是考虑类、对象,而可以考虑切面。切面和目标形成 代理,解决项目业务中额外功能冗余的问题。业务中存在的问题:业务层中存在问题:两类逻辑=核心业务+额外功能,其中额外功能存在大量的代码冗余 。使得项目...

2019-09-26 19:41:48 342

原创 Java-Spring 控制反转(IOC) 和依赖注入(DI)

第一节:Spring简介1 、Spring 解决问题: 方便解耦,简化开发:Spring 就是一个大工厂,可以将所有对象创建和依赖关系维护,交给 Spring 管理 AOP 编程的支持:Spring 提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能 声明式事务的支持:只需要通过配置就可以完成对事务的管理,而无需手动编程 方便程序的测试...

2019-09-26 17:25:51 259

转载 Tcp/Ip协议的三次握手

本文链接:https://blog.c...

2019-09-26 17:00:07 358

原创 Java-MyBatis 框架之延迟加载、缓存和分页

第一节:性能优化1.1 延迟加载1.1.1 什么是延迟加载 resultMap中的association和collection标签具有延迟加载的功能。延迟加载的意思是说,在关联查询时,利用延迟加载,先加载主信息。需要关联信息时再去按需加载关联信息。这样会大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。1.1.2 设置延迟加载 Mybatis默认是不开启延迟加...

2019-09-24 08:20:25 439

原创 Java-MyBatis框架(二) 高级使用详解

Mybatis(二) 高级应用第一节:输入参数和输出参数Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心。parameterType(输入参数)1.2.1. 传递简单类型传递int类型、String类型使用#{}占位符,或者${}进行sql拼接。 (order by id 必须使用${})...

2019-09-21 14:22:36 330

原创 Java- 使用转换器将String类型转换为Date类型

转换器的使用: 我们从表单中获取的时间类型为字符串类型,这时需要使用转化器将字符串类型的时间转换为Date类型。示例: 使用beanUtils封装参数时,参数类型中有日期类型。这时需要使用转换器来进行转换。 一、按指定日期格式进行转换。 ProFile proFile=new ProFile(); proFile.setPic...

2019-09-20 17:41:40 1077

空空如也

空空如也

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

TA关注的人

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