自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【无标题】

AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码,极大的提升了开发效率,MyBatis-Plus从3.0.3 之后移除了代码生成器与模板引擎的默认依赖,需要手动添加相关依赖,才能实现代码生成器功能。SelectPage用于分页,在Mybatis-Plus中分页有两种:一种是逻辑分页或叫内存分页,另一个是物理分页。

2023-11-25 14:46:05 928

原创 shiro 框架使用学习

Shiro安全框架是Apache提供的一个强大灵活的安全框架Shiro安全框架提供了认证、授权、企业会话管理、加密、缓存管理相关的功能,使用Shiro可以非常方便的完成项目的权限管理模块开发。

2023-11-05 12:17:31 184

原创 axios

var s = '?username='+this.form.username+'&password='+this.form.password; axios.get('http://127.0.0.1:8080/admin/login'+s) .then(res=>{ if(res.data.status==0){ mySto...

2020-02-26 10:09:33 168

原创 Vue分页

template部分:<el-table :data="tempList" :header-cell-style="rowClass" stripe border style="margin-bottom:14px;" :empty-text="emptyText"> <el-table-column property="name...

2020-02-16 14:13:42 141

原创 新建vue项目

vue init webpack myappcd myappnpm i element-ui -Snpm i vuex -Snpm install axiosnpm install less less-loader -S修改 webpack.base.config.js 文件,配置loader加载依赖,让其支持外部的less在原来的代码上添加在build文件下的webpack.ba...

2020-02-16 10:33:56 157

原创 setting.xml

<?xml version="1.0" ?><settings> <mirrors> <mirror> <!--This sends everything else to /public --> <id>nexus</id> <mirrorOf>exte...

2020-01-21 22:04:12 94

原创 layui框架

取标签中的属性值1.自定义属性$(this).attr(“属性”);将图片的URL存入key属性中 <div class="layui-form-item"> <img tag="img" key="bg-1.jpg" src="../image/bg-1.jpg" width="150" height="100" style="border:2px soli...

2019-04-25 17:38:45 1769

原创 ehcacheh缓存

redis -> nosql 数据库-> 分布式的缓存1. 缓存简介斐波那契提高效率的一种方式, 将计算结果进行缓存// key 是n value 是 fbnq(n)static Map<Integer, Integer> map = new HashMap<>();// 1 1 2 3 5 8 13 ...// 递归实现public st...

2019-03-23 21:57:33 242

原创 Redis

NoSQL 数据库redis 键值型数据库官方只提供了linux 版本如果希望在 windows 下尝试 redis安装虚拟机 virsual box, vmware --> 装 linux --> 装 redisdocker 来使用 redisredis 的 windows 版本,版本较低,不适合生产环境启动 redis 服务器端redis-server...

2019-03-21 23:05:10 113

原创 Rest API设计

rest api 设计分布式应用程序rest 方式 http协议, 应用更为广泛, 前台应用(app, web)通过 http协议 调用后台服务RestTemplatedubbo tcp 例如后台的几个应用之间进行调用1. 如何开发 rest api思想是把网络上的服务都看做一个个的资源,每个资源有一个唯一地址,可以对于这个资源进行增删改查四种请求方式把不同 http ...

2019-03-21 13:10:05 246

原创 Shiro安全框架

shiro 使用主要用途: 用户认证(登录、注销), 密码安全, 权限控制1. 流程概述shiro 框架的核心有两大部分:shiro 过滤器 (ShiroFilter)安全管理器 (SecurityManager)2.1 shiro 过滤器shiro 过滤器负责拦截用户请求,设置登录地址、认证成功地址和未授权地址等。对于其它路径可以按多种规则进行访问控制:anon 匿名访...

2019-03-16 07:50:19 225

原创 高并发编程学习笔记(3)----volatile

深入理解volatile关键字CPU缓存模型引文CPU与内存速度的严重不对等,出现了在CPU与主存之间增加缓存的设计,现在缓存的数量可以增加到三级。1最靠近CPU的缓存称为L1,然后依次是L2,L3和主内存。由于程序指令和程序数据的行为和热点分布差异很大,因此L1Cache又被划分成了L1i(instruction)和L2d(data)。Cache Line可以认为是CPU Cache中最小缓...

2019-03-15 10:21:26 172

原创 高并发编程学习笔记(1)----基础知识

高并发编程多线程基础部分参考https://blog.csdn.net/qq_39536394/article/details/84193900一.多线程基础1.Thread构造函数Thread()Thread(Runnable target)Thread(ThreadGroup group,Runnable target)Thread(Runnable target,String ...

2019-03-15 10:21:13 221

原创 线程安全集合

jdk 5 引入并发包概要1. 线程安全的集合遗留的线程安全集合,如 Hashtable, VectorCollections 里的一系列以 synchronized 开头的方法,可以把非线程安全的集合包装成线程安全的集合体现了设计模式中的装饰器模式List list = new ArrayList();// 装饰器模式List list1 = Collections.s...

2019-03-03 21:54:31 325

原创 类加载

1.类加载1) 加载将类加载到方法区(1.7之前叫永久代,从1.8开始叫元空间)异常:NoClassDefFoundError 表示没有类定义被找到 发生在类加载阶段,加载类B时,用到了另一个类A,但当前的类路径下找不到A就会发生这个错误异常:ClassNotFoundException 表示类没有被找到异常 发生在类加载阶段 加载类C时,C自己不存在,会报刚刚这个异常把类字...

2019-03-03 21:51:24 862

原创 Spring执行流程

1.spring 容器的启动加载流程首先解析 spring.xml 配置文件,把其中 &lt;bean&gt; 解析为 BeanDefinition, 存入beanFactory&lt;bean id="" class="" init-method="" destroy-method="" scope="" lazy-init=""&gt;把 B

2019-03-03 21:46:46 16918 1

原创 JVM内存

1.内存结构jvm 的内存栈 - 线程私有的(每个线程有自己的栈内存)程序计数器 (记录当前线程中代码执行的位置)本地方法栈 (native ) 非java语言编写的方法栈帧多个 每个栈帧对应一次方法调用, 方法内局部变量、方法参数,方法调用时分配栈帧内存,方法调用结束,栈帧内存被回收堆 - 线程共享的当新建一个对象时,对象使用的就是堆内存, 当多个线程访问堆中的对象时,...

2019-03-03 21:45:11 120

原创 分布式

分布式程序开发手机应用手机App (前台应用)java管理程序 (后台应用)后台应用拆分用户应用,商品应用,订单应用,物流应用,评论应用 ==&gt; 不同的应用部署在不同的机器上不同的应用程序之间也需要相互调用分布式应用程序如何相互调用?http (HttpUrlConnection) 好处:调用简单,80一般不会被防火墙拦截 (短连接 - 用到时建立连接,用完了连接就断开)...

2019-03-03 21:43:17 193

原创 Vu

1.前端框架介绍老牌jquery -&gt; 更简单的方式去操作 dom 对象(标签对象)extjs -&gt; 更适合做后台管理系统easyui -&gt; 模仿了 extjs 免费mvc -&gt; mvvm m模型 v视图 vm(view model) 控制器vue 国内开源的js框架argularjs 国外js框架提倡前后台分离,传统的后台开发人员:controll...

2019-03-03 21:40:00 437 1

原创 SpringBoot

spring boot在 spring 基础上进行了简化,提供一些配置的默认值1. 创建spring boot项目使用向导(web 页面), 要联网使用 maven 项目, 需要配置 pom.xmlpom.xml 参考:&lt;!-- 1. parent 中是一些公共的pom 配置, 我们的项目从中继承即可 --&gt;&lt;parent&gt; &lt;groupId...

2019-03-03 21:37:51 145

原创 注解总结

1. 注解小结1.1 jdk@Override 表示加了注解的方法要符合方法重写的规则@Deprecated 表示加了此注解的方法已过期@FunctionalInterface 加在接口上,表示这个接口中只有一个抽象方法(函数接口)1.2 junit@Test 加在方法上,表示此方法是一个测试的入口和spring整合@Runwith(SpringJUnit4ClassRu...

2019-02-20 20:25:42 143

原创 注解类

如何编写一个注解类新建annotationpublic @interface 注解名 {}2.使用两个注解1@Target()表示注解添加的位置ElementType.TYPE 表示能够加在 类上ElementType.METHOD 表示能够加在 方法上ElementType.FIELD 表示能够加在 属性上2@Retention() 表示注解的作用范围Source 表示...

2019-02-19 20:51:55 184

原创 JDK动态代理技术

JDK动态代理技术1.首先要有接口public interface UserService { public void a(int x, int y); public void b(); public void c();}2.该接口要有实现类(动态代理的目标类)// 目标类public class UserServiceTarget implements U...

2019-02-19 20:51:40 361

原创 SpringMVC

spring mvc用来开发基于 web 的应用程序1. 流行的 mvc 框架struts 1.xwebworkstruts 2.x (webwork+struts 1.x) ssh 经常暴露安全问题springmvc 更容易上手,相对更安全2. mvc 思想model 模型 - 数据 domainview 视图 - 数据的展现方式 jsp, jstl, elcont...

2019-02-19 20:48:39 167

原创 Spring框架

1. 分层开发表现层直接和用户打交道,大部分跟界面有关(html,jsp,servlet)服务层指业务逻辑,业务逻辑由一个到多个基本的增删改查组成持久层(数据访问层)将数据永久的保存,jdbc,mybatis2. spring 框架将其他框架进行整合,便于开发,提高程序的扩展性声明式的事务管理就是指不需要编写代码进行事务控制了,可以 xml 配置文件,或...

2019-02-16 22:10:07 222

原创 Mybatis

MyBatisiBatis -&amp;amp;gt; apache MyBatis使用步骤:添加依赖&amp;amp;lt;dependency&amp;amp;gt; &amp;amp;lt;groupId&amp;amp;gt;org.mybatis&amp;amp;lt;/groupId&amp;amp;gt; &amp;amp;lt;artifactId&amp;amp;gt;myb

2019-01-23 20:39:16 168

原创 Ajax异步技术

ajax在提交表单发送请求时,会导致页面刷新,不利于一些例如视频观看等操作。使用Ajax异步技术可以解决这一需求。XMLHttpRequest js 是中的对象, 它可以用来向服务器发送请求,但不会导致页面刷新跳转。1. XMLHttpRequest 对象基本使用创建 xhr 对象var xhr = new XMLHttpRequest();2. 发送请求xhr.open("g...

2019-01-20 21:16:44 396 1

原创 Servlet进阶API&过滤器&监听器

Servlet APIServletConfig接口Web容器启动后会会读取Servlet设置信息,将Servlet类加载并实例化,每一个Servlet设置信息会产生一个ServletConfig对象,而后调用Servlet的init()方法并将ServletConfig对象当作参数传入。GenericServlet类GenericServlet接口类同时继承Servlet接口和Sevle...

2019-01-18 21:03:35 182 1

原创 Jsp&Servlet

ServletServlet 的生命周期当 servlet 首次被访问时 ,调用构造方法,只调用一次(只有一个servlet对象被创建)紧接着调用初始化 init 方法,也是只调用一次根据请求方式,调用 service,或 doGet 或 doPost (请求几次,就会被调用几次)当应用程序停止前,调用 destroy 方法,只调用一次这些方法都是由 tomcat 容器来调用, 这...

2019-01-15 23:10:34 211

原创 JavaScript

Javascript主要用途:用在浏览器当中, 也可以作为后台开发语言(nodejs)语法:类似于 java, 简称 js1. 基本数据类型Number 数字类型(整数,小数) 1.0 1 -2String 字符串类型 “字符串1” ‘字符串2’Boolean 布尔类型 true falseNull 表示空值Undefined 未定义 (声明了var变量,但没有赋...

2019-01-11 20:08:43 99

原创 Effictive Java学习笔记(1)-------对于所有对象都通用的方法

一.覆盖equals时请遵守通用约定覆盖equals方法看起来似乎简单,但是有许多覆盖方式会导致错误,并且后果非常严重,最容易避免这类问题的办法就是不覆盖equals方法。如果满足一下任何一个条件,则可以不需要覆盖equals方法。...

2019-01-11 18:08:14 140

原创 HTML+CSS

html超文本标记语言 hyper text markup language俗称网页&lt;html&gt; &lt;head&gt; 子标签 &lt;/head&gt; &lt;body&gt; 子标签 &lt;/body&gt;&lt;/html&gt;1. head 中的常见标签文件名字后缀必须是 *.htm...

2019-01-01 21:53:53 291 1

原创 JDBC操作数据库

JDBCJDBCJava database connectivity是java语言操作数据库的 api (应用程序编程接口)java.sql.*接口Connection 连接 代表了java和数据之间的通道,桥梁Statement 语句 可以用来执行 insert, update, delete , select …ResultSet 结果集 代表的是查询的结果类Drive...

2019-01-01 20:40:32 168

原创 MySQL基本操作

MySQL基本操作基本操作1.建表(table)一个库中有多张表,每张表里有多条数据表分成行(row 横向)与列(column 纵向)学号姓名性别1张三男2李四女选库create database 库; 创建数据库show databases; 查看所有数据库use 库名; 使用数据库建表create table 表名(...

2018-12-14 17:20:22 176

原创 MySQL的简介和安装

1. 简介关系型数据库永久保存数据提供数据的安全提供数据的并发访问提供了多种数据类型提供事务支持提供了SQL语言操作数据著名的数据库Oracle 甲骨文MySQL 甲骨文Sql Server 微软 (主要用在windows环境)DB2 IBM公司SQLlite 用在移动端开发2.安装在官网下载解压版解压后bin目录下会下边三个文件bin/mysql.ex...

2018-12-08 20:56:37 134

原创 Effictive Java学习笔记(1)--创建和销毁对象

创建和销毁对象1.使用静态工厂代替构造器1)静态工厂的好处1.静态工厂方法有名称,而构造器只能与类名相同。2.静态工厂不用每次调用时都创建一个新对象。可以在静态工厂方法中每次返回一个新的对象,也可以使用单例模式,每次返回同一个对象。3.静态工厂可以返回原类型的任何子类型的对象。经常适用于在接口中定义静态工厂方法,返回一个已知实现该接口的子类对象。4.在创建参数实例化时,代码变得更简...

2018-12-06 21:08:18 134

原创 高并发编程学习笔记(8)--Latch设计模式

Latch设计模式如果有若干线程并发执行某个特定任务,需要等到所有的子任务都执行结束之后在统一汇总,就可以采用Latch设计模式。Latch(门阀)设计模式:该模式指定了一个屏障,只有所有的条件都达到满足的时候,门阀才能打开。Latch 抽象类在Latch中limit就相当于门阀。public abstract class Latch { protected int limit...

2018-12-05 20:15:35 260

原创 高并发编程学习笔记(7)-Future设计模式

Future设计模式如果有任务执行需要比较长的时间,通常需要等待任务执行结束或者出错才能返回结果,在此期间调用者只能陷入阻塞苦苦等待,对此,Future设计模式提供了一种凭据式解决方案。可以先提交任务,立即返回一个凭据,调用者可稍后凭借凭借查询执行结果。接口定义Future提交任务后会返回该接口,用于查询执行结果。 T get() throws InterruptedExcepti...

2018-12-05 17:14:40 331

原创 高并发编程学习笔记(6)----读写分离设计模式

读写锁分离在多线程的情况下访问共享资源,需要对资源进行同步操作以防止数据不一致的情况发生,通常我们可以使用synchronized关键字或者显示锁。对资源的访问一般包括两种操作–读的写,但是多个资源在同时读取同步数据时并不会引起数据不一致的情况发生。那么这个时候采用排他的方式加锁就显得有些简单粗暴了。线程读写读不冲突冲突写冲突冲突当对某个资源读的操作...

2018-12-04 22:28:55 756

原创 JAVA Stream

Stream重要接口Predicate 断言接口对应的lambda 一个参数,返回结果是boolean(a) -&gt; { return true|false; }Function 函数接口对应的lambda 一个参数,一个返回结果,参数和返回结果的类型可以不一样BiPredicate 双参数断言对应的lambda 两个参数,返回结果是boolean(a,...

2018-12-02 22:16:34 108

空空如也

空空如也

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

TA关注的人

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