后端
小小∽
啊哈,我什么都不会怎么办~
展开
-
一文了解Docker核心概念和安装配置
核心概念Docker 有三大核心概念,分别是镜像,容器,仓库。Docker 镜像Docker 镜像类似于虚拟机的镜像,可以把它理解为一个只读的模板,例如一个镜像可以包含一个基本的操作系统环境,里面仅仅安装了Apache应用程序,可以把它称之为一个Apache镜像。镜像是创建Docker容器的基础。通过版本管理和增量文件系统,Docker提供了一套十分简单的机制来更新现有的镜像,用户甚至可以从网上下载一个已经做好的应用镜像,并进行使用。Docker 容器Docker容器类似于一个轻量级的沙箱,D原创 2020-07-07 12:30:43 · 329 阅读 · 0 评论 -
Java 之单元测试
单元测试编写Junit 单元测试框架对于Java语言而言,其单元测试框架,有Junit和TestNG这两种,下面是一个典型的JUnit测试类的结构package com.example.demo;import org.junit.jupiter.api.*;import static org.junit.jupiter.api.Assertions.*;@DisplayName("售票器类型测试")class DemoTest { // 定义测试的实例 private原创 2020-06-24 22:30:37 · 1150 阅读 · 2 评论 -
SpringBoot 实现Session共享
HttpSession,是通过Servlet容器创建并进行管理的,创建成功以后将会保存在内存中,这里将会使用Redis解决session共享的问题。创建项目添加pom添加相关的maven<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"原创 2020-06-24 09:50:12 · 1006 阅读 · 0 评论 -
解释SpringBoot之Ehcache 2.x缓存
介绍这里介绍Ehcache 2.X 缓存添加基本的web项目[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mbNARxlj-1592666394129)(https://www.iming.info/wp-content/uploads/2020/06/wp_editor_md_a364d1423e3bdfc4066b7266a02a2393.jpg)]添加Ehcache 依赖<?xml version="1.0" encoding="UTF-8"?>原创 2020-06-20 23:20:03 · 187 阅读 · 0 评论 -
Spring Boot 应用监控
当一个Spring Boot 应用运行的时候,开发者需要对Spring Boot应用进行实时监控,获得项目的报警需求,Spring Boot 提供了,actuator 来帮助开发者获取应用程序运行时的数据。端点配置在Spring Boot 中添加端点配置相当的简单。只需要添加 spring-boot-starter-actuator添加相关的依赖 <!-- https://mvnrepository.com/artifact/org.springframework.boot/s原创 2020-06-16 14:45:04 · 717 阅读 · 0 评论 -
Spring Cloud 简介
Spring Cloud 简介思维导图如下[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BdEwUdCZ-1590329135544)(https://www.iming.info/wp-content/uploads/2020/05/screenshot_1590248349048.png)]总说这里将会首先简单介绍一下Spring Cloud 。其Logo 如下[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CD0YbDaJ-15原创 2020-05-24 22:05:52 · 534 阅读 · 0 评论 -
分布式锁 动态代理 Java数据结构List,Set,Map,Spring执行流程,Spring MVC组件
这里对今日的内容进行总结:分布式锁具备的条件:具备的条件:在分布式系统环境下,一个方法在同一时间只能被一个机器的一个线程执行。高可用的获取锁与释放锁。高性能的获取锁与释放锁。具备可重入的特性。具备锁失效机制,防止死锁。具备阻塞锁特性,即没有获取到锁将会继续等待获取锁。具备非阻塞锁特性,即没有获取到锁将会直接返回获取锁失败。spring mvc 组件在学习9个组件之前,我们...原创 2020-04-27 07:59:50 · 348 阅读 · 0 评论 -
Struts Action 控制器
控制器即,mvc模型的控制器模型,用于接收数据,传递给视图层,和模型层默认使用execute方法查看相关接口查看com.opensymphony.xwork2下的Action接口文件如下/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agree...原创 2019-03-25 21:58:27 · 198 阅读 · 0 评论 -
log4j
log4j一个日志框架apache 基金会下的网址 https://logging.apache.org/log4j/2.x/maven安装网址 https://search.maven.org/artifact/org.apache.logging.log4j/log4j/2.11.2/pom复制以下依赖 <dependency> <groupI...原创 2019-03-25 22:11:09 · 163 阅读 · 0 评论 -
Struts 拦截器
介绍实现aop的方式用于实现action之前,之后执行一般用于事物操作.一般用于对某些未授权的页面访问的时候,进行拦截操作,拦截非法访问.开箱即用拦截器 <!-- 拦截器 --> <interceptor-ref name="params"/> <!-- 传递属性拦截器 --> ...原创 2019-03-25 22:47:40 · 186 阅读 · 0 评论 -
struts 结果类型
FreeMarker一个模板引擎 即 FreeMarkergithub https://github.com/apache/freemarker网址 https://freemarker.apache.org/maven安装访问网址 https://search.maven.org/artifact/org.freemarker/freemarker/2.3.28/jar<dep...原创 2019-03-25 22:55:39 · 116 阅读 · 0 评论 -
文件上传
代码如下package com.ming;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;import org.apache.commons.fileupload.FileUpload;import org.apache.commons.io.FileUt...原创 2019-03-25 23:03:02 · 133 阅读 · 0 评论 -
Struts
运行流程客户端浏览器通过HTTP请求,访问控制器,然后控制器读取配置文件,然后执行服务器端跳转,执行相应的业务逻辑,然后,在调用模型层,取得的结果展示给jsp页面,最后返回给客户端浏览器组成部分struts视图标签库控制器action模型层ActionFrom JavaBeanstrutsmaven 安装官网 : https://struts.a...原创 2019-03-23 19:00:59 · 99 阅读 · 0 评论 -
mybatis 入门搭建
首先导包依赖如下 <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.15</versi...原创 2019-04-09 00:23:31 · 149 阅读 · 0 评论 -
MyBatis 实例
确定依赖 <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.15</version>...原创 2019-04-13 01:08:08 · 179 阅读 · 0 评论 -
MyBatis 解析运行原理
提供一个接口package com.ming.MyBatis;import com.ming.MyBatis.POJO.Role;import com.ming.MyBatis.POJO.Student;import com.ming.MyBatis.POJO.StudentCard;import org.apache.ibatis.annotations.Param;import...原创 2019-04-24 20:18:05 · 189 阅读 · 0 评论 -
thinkphp5
决定写这个 微信小程序 + thinkphp5 商城为期末的php做准备这里使用的是最新版本的thinphp 6.0基础这里为学习使用thinkphp6调试修改目录结构www WEB部署目录(或者子目录)├─app 应用目录│ ├─controller 控制器目录│ ├─model 模型目录│ ├─view ...原创 2019-05-25 12:08:47 · 367 阅读 · 0 评论 -
PHP内存模型
php为单进程的,由apache代执行,每一个请求,由apache从进程池中取出进程,初始化数据结构,创建进程.变量共享,类似于session的内容,为所有进程所共享,即单例模式.默认是采用磁盘文件实现session的管理即static变量,是一次请求说单独的享有的,不能被所有请求所共享.session共享由于每次请求代由apache创建进程,所以由session共享问题,php是使用文件...原创 2019-05-22 20:25:04 · 895 阅读 · 0 评论 -
Spring 装配
有以下三种配置在xml中配置在java中配置bean自动装配自动装配这里以转载CD为例子首先需要建立CD概念即,定义一个cd接口只需要实现添加两个注解,package com.ming;import org.springframework.context.annotation.ComponentScan;import org.springframework.context....原创 2019-05-22 22:03:53 · 153 阅读 · 0 评论 -
thinkphp 请求
请求对象由 think\Request 负责 只需要依赖注入即可请求对象构造方法注入即可 public function __construct(Request $request) { $this->request = $request; }请求信息<?phpnamespace app\index\controller;use think\exc...原创 2019-05-30 17:49:22 · 298 阅读 · 0 评论 -
thinkphp 响应
响应是由 think\Response 类或者子类完成响应输出<?phpnamespace app\index\controller;use think\exception\ValidateException;use think\facade\Request;class Index extends BaseController{ /** * 显示资源列表...原创 2019-06-06 09:52:45 · 248 阅读 · 0 评论 -
java队列
Java 实现队列介绍队列为特殊的线性表,队列的特点先进先出(FIFO),队列插入为入队,队列删除为出对。Java 实现这次使用顺序队列实现。(使用数组),why?为什么不直接使用顺序表作为底层容器,因为入队操作执行顺序表尾插入,时间复杂度为O(1)O(1) 普通语句,相互操作,时间复杂度为O(1)出对操作执行表头删除操作,时间复杂度为O(n),因为涉及到一个循环遍历,移动,由于...原创 2018-11-19 23:57:28 · 117 阅读 · 0 评论 -
监听器实栗 在线人数统计
实现思路常见的流程是,标准的mvc 即 登录表单,用户提交数据到登录检查,若登录检查通过以后,触发session事件,保存进入在线人员列表中,页面跳转到在线用户列表,若用户注销,从在线列表中删除.代码如下使用set集合, 即 set集合去重 原因 内部存储为map,mqp的键值对为hashcode 由于哈希表的特征 即 set可去重项目结构创建迭代器package com.min...原创 2019-03-18 00:58:22 · 137 阅读 · 0 评论 -
过滤器实栗 登录检测
项目结构代码如下登录servletpackage com.ming.servlrt;import com.ming.factory.DAOFactory;import com.ming.vo.User;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import java...原创 2019-03-18 00:48:44 · 166 阅读 · 0 评论 -
代理模式
栗子定义一个游戏者接口public interface IGamePlayer{ // 登录游戏 public void login(String user, String password); // 杀怪 public void killBoss(); // 升级 public void upgrade();}定义游戏着类,实现游戏者接口...原创 2019-01-23 05:52:15 · 1098 阅读 · 0 评论 -
双亲委派模型
类加载流程类加载流程,先加载Bootstrap ClassLoader 启动类加载即最顶层的加载类。这部分由C++ 编写。继续再次加载Extention ClassLoader 扩展类加载器由Bootstrap ClassLoader加载,加载进入内存。继续再次加载Application ClassLoader 应用类加载器,即系统即在此,加载当前应用下的类最后再次加载ClassLoade...原创 2019-01-22 03:30:12 · 186 阅读 · 0 评论 -
C/C++ 函数指针
函数指针函数是存放在内存的代码区域内栗子int test(int a){ return a;}int main(int argc, const char * argv[]){ // 这里定义了一个参数为int类型的函数,函数的返回值为int类型的指针fp int (*fp)(int a); // 将test函数的地址赋值给指针fp,完成一个指向函数。该指针...原创 2019-01-22 03:02:14 · 102 阅读 · 0 评论 -
设计模式-解释器模式
四则运算模型公式,输入一个公式,然后输入其中的参数,然后运算出结果代码如下抽象表达式类public abstract class Expression{ // 解析数值,key是参数,value是数字 public abstract int interpreter(HashMap<String, Integer> var);}变量解析器,根据此,可以获得保...原创 2019-01-25 06:07:38 · 76 阅读 · 0 评论 -
访问者模式
首先抽象员工public abstract class Employee{ // 代表男性 public final static int MALE = 0; // 代表女性 public final static int FEMALE = 1; // 有工资 private String name; // 薪水 private ...原创 2019-01-24 03:20:57 · 111 阅读 · 0 评论 -
设计模式-里氏替换原则
设计模式-里氏替换原则优点面向对象的语言继承必不可少的,有如下优点代码共享,减少创建类的工作量提高代码的重用性提高代码的可扩展性提高代码的可扩展性提高产品代码的开放性继承侵入性 只要继承,必须拥有父类的内容降低代码的灵活性,子类必须拥有父类的属性和方法增强耦合性。提供规范里氏替换原则,为继承定义规范。长方形是不是正方形正方形是一种特殊的长方形,如果将正方形设计为长方...原创 2018-11-19 22:25:33 · 176 阅读 · 0 评论 -
Linux基础知识
Linux基础知识计算机硬件的5大单元分为输入单元,CPU,内存,输出单元,外部存储设备。软件运行时输入单元输入内容,进入内存,CPU由控制单元和算术逻辑单元组成,控制单元控制算术逻辑单元从内存中读取数据,内存和外部存储设备进行交互,运算完毕以后输出到输出单元,完成软件的运行。CPU的种类CPU内部含有一些小的指令集,使用的所有软件需要经过CPU内部的微指令集进行运算。精简指令集较为...原创 2018-10-15 11:44:04 · 204 阅读 · 0 评论 -
Java静态方法和实例方法 java中的数组作为形参传入
Java静态方法和实例方法 java中的数组作为形参传入Java虚拟机启动一个Java程序的时候,会诞生一个虚拟机实例,当程序关闭退出时,该实例会消失。如果一个机器上运行着三个Java程序,即有三个Java虚拟机实例Java虚拟机会调用某个初始类的main()方法运行一个Java程序,此方法将会作为程序的初始线程启动,任何线程都是由主线程启动的。守护线程和非守护线程Java虚拟机有两...原创 2018-10-11 21:11:17 · 1688 阅读 · 0 评论 -
mongodb(2)
MongoDB ps 好多的MongoDB都没有设密码,默认的MongoDB都是不设置密码的,晕$type运算符查询类型用的 获取col集合中的title值为字符串类型的文档db.col.find(title: {$type: 2});limit 和 skip方法limit查询指定的方法> db.ming.find().pretty()...原创 2018-07-31 22:03:43 · 126 阅读 · 0 评论 -
简易 MVC框架 弃坑
MVC模型视图控制器模型 这是中文名称原先是为桌面应用建立的框架,后来转变成为B/S模型。经典图如下说一下CGI,是使用CGI 和apache进行连接,当发生一个请求的时候,进入apache,即web server,由web server执行事先编辑好的CGI程序,由CGI程序读取databases,由CGI程序把读取到的dtatBases整合,返回给webserver 再由webse...原创 2019-02-10 08:22:54 · 118 阅读 · 0 评论 -
jsp 基础语法
jsppage指令使用此属性,可以定义一个jsp页面的相关属性&lt;%@ page contentType="text/html;charset=UTF-8" language="java" %&gt;设置该页面的类型为text/html类型,其中编码为Unicode 类型的UTF-8 语言为java从Tomcat安装目录中可以找到可以使用的MIME类型&lt;mime-m原创 2019-03-10 01:09:18 · 104 阅读 · 0 评论 -
Web开发模式
Model1显示层,控制层,数据层,统一交给jsp或者javabean处理.处理流程客户端发送request 到 jsp jsp 执行javabean javabean读取databases返回 databases 返回给javabean 在返回给jsp 在response 给客户端问题代码杂乱即 jsp + dao 方式model - view - controller客户...原创 2019-03-18 00:37:50 · 1192 阅读 · 0 评论 -
DAO 设计模式
介绍DAO功能是数据操作.客户发送数据到显示层,显示层发送数据到业务层,业务发送数据到数据层,数据层进行持久化.即.保存进入databases一些简称 BO 业务对象的简称 DAO 一个数据访问对象,增删查改 PO数据库一条记录,映射成javaBean对象,拥有getter/setter方法为什么使用把jdbc的操作进行分离,即数据库的操作和业务进行分离,javabean是把视图和业...原创 2019-03-18 00:20:23 · 333 阅读 · 0 评论 -
Java Bean + 注册验证
概述该技术已过时jsp 已经过时,是因为代码杂糅在一起,没有做到完美的分离.不利于后期的维护java bean 过时的原因在于面条代码的存在,即,各种代码杂乱的糅合在一起.特点组件式编程步骤封装成为组件,需要那个的时候,直接调用组件即可.增加复用性标准目录结构WEB-INF该目录为web目录中最安全的文件夹.保存各种类,第三方jar包,配置文件.WEB-XMLweb部署的描述...原创 2019-03-15 20:21:07 · 397 阅读 · 0 评论 -
jsp 内置对象 登录 cookie + session
概述一共两个页面当直接访问产品列表的时候,会判断用户是否登录,如果用户没有登录,则直接3秒跳转.如果用户登录,则不进行跳转登录页面:对于登录页面来说,直接输入用户名,密码.和数据库进行对比,进行登录.并进行密码的本地保存ps 一般是需要对密码加密进行本地保存的代码如下配置文件<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, ...原创 2019-03-15 20:03:30 · 143 阅读 · 0 评论 -
网站计数器 web映射
站点的网站计数器的操作<%@ page import="java.math.BigInteger" %><%@ page import="java.io.File" %><%@ page import="java.util.Scanner" %><%@ page import="java.io.FileInputStream"原创 2019-03-15 18:57:22 · 466 阅读 · 0 评论