自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 阶段二模块二

作业要求基于 SpringBoot 实现一个登录功能(含有登录拦截验证)使用 Spring Session 进行 Session 一致性控制将工程打成 war 包将 war 包部署到 Tomcat 集群中,要求 1 个 Nginx 节点、2 个 Tomcat 节点请求 --> Nginx(轮询策略)--> Tomcat 1 / Tomcat 2完成测试具体要求作业提交时提交可运行的工程代码(源代码和 war 包)以及 SQL 脚本,Nginx 配置及 T

2021-07-01 00:29:23 103

原创 阶段二模块一

作业要求开发 Minicat V 4.0,在已有 Minicat 基础上进一步扩展,模拟出 webapps 部署效果。磁盘上放置一个 webapps 目录,webapps 中可以有多个项目,例如 demo1、demo2、demo3... 每个项目中含有 Servlet,可以根据请求 url 定位对应 Servlet 进一步处理。作业具体要求参考以下链接文档:https://gitee.com/lagouedu/alltestfile/raw/master/tomcat/Tomcat%E4%BD%9C%

2021-07-01 00:29:12 210

原创 阶段一模块四

作业要求自定义简易版 SpringBoot,实现 SpringBoot MVC 及内嵌 Tomcat 启动、DispatcherServlet 注册和组件扫描功能。程序通过 main 方法启动,可以自动启动 Tomcat 服务器可以自动创建和加载 DispatcherServlet 组件到 ServletContext 中可以自动通过 @ComponentScan 扫描 Controller 等组件Controller 组件可以处理浏览器请求,返回响应结果作业提示当实现了 Servlet

2021-07-01 00:29:01 121

原创 阶段一模块三

作业要求:手写 MVC 框架基础上增加如下功能:定义注解 @Security(有 value 属性,接收 String 数组),该注解用于添加在 Controller 类或者 Handler 方法上,表明哪些用户拥有访问该 Handler 方法的权限(注解配置用户名)访问 Handler 时,用户名直接以参数名 username 紧跟在请求的 url 后面即可,比如 http://localhost:8080/demo/handle01?username=zhangsan程序要进行验证,

2021-07-01 00:28:48 84

原创 阶段一模块二

作业要求:学员自定义 @Service、@Autowired、@Transactional 注解类,完成基于注解的 IoC 容器(Bean 对象创建及依赖注入维护)和声明式事务控制,写到转账工程中,并且可以实现转账成功和转账异常时事务回滚。注意考虑以下情况:注解有无 value 属性值【@service(value="") @Repository(value="")】service 层是否实现接口的情况【 JDK 还是 CGLib 】分析:按照课程里面的项目,实现以 XML 形式

2021-07-01 00:28:26 87

原创 阶段一模块一

首先,说明一些自己学习过程中产生的问题:XML 文档解析问题怎样处理参数以及返回结果最初,看完自定义持久层框架部分后,我发现了课程里面的简单的框架雏形与 MyBatis 源码之中有很多出入部分,于是我在思考,为什么 MyBatis 要这样做?于是我决定不只是简单地写一个自定义持久层框架,而是参照着 MyBatis 源代码实现一个简版的 MyBatis 框架。XML 配置文件解析问题:翻阅 MyBatis 源码,我们可以发现,MyBatis 没有使用课程中的 Dom4J 技术,而是使用 DO

2021-07-01 00:28:09 63

原创 自增 ID 与 UUID

自增的主键的值是顺序的,所以 InnoDB 把每一条记录都存储在一条记录的后面。当达到页面的最大填充因子时候(InnoDB 默认的最大填充因子是页大小的 15/16,会留出 1/16 的空间留作以后的修改)下一条记录就会写入新的页中,一旦数据按照这种顺序的方式加载,主键页就会近乎于顺序的记录填满,提升了页面的最大填充率,不会有页的浪费新插入的行一定会在原有的最大数据行下一行,MySQL 定位和寻址很快,不会为计算新行的位置而做出额外的消耗减少了页分裂和碎片的产生因为 UUID 相对顺

2021-07-01 00:27:54 538

原创 分布式集群架构场景化解决⽅案

一致性 Hash 算法直接寻址法优点:效率肯定是最高的缺点:浪费空间,没办法处理重复数据除留余数法使用取模的方法,以一定的效率从而达到减少空间使用的目的开放寻址法拉链法在 Java 当中最经典的实现就是 HashMapHash 算法应用场景请求的负载均衡Nginx 的 ip_hash 策略分布式存储分库分表,集群中的数据 ID普通 Hash 算法存在的问题在空间发生变化的时候,会导致大部分的 Hash 值重新计算。一致性 Hash 算法一致性

2021-06-30 12:13:22 95

原创 URLClassLoader

URLClassLoader说明public class URLClassLoader extends SecureClassLoader implements Closeable此类加载器用于从引用 Jar 文件和目录的 URL 的搜索路径加载类和资源。任何以 "/" 结尾的 URL 都假定是指一个目录。否则,URL 被认为是指根据需要打开的 Jar 文件。当后续加载类和资源时,将使用创建 URLClassLoader 实例的线程的 AccessControlContext。加载的类默认授权只

2021-06-30 12:13:12 271

原创 Tomcat 体系结构

Tomcat 体系结构Tomcat 设计了两个核心组件连接器(Connector)和容器(Container)来完成 Tomcat 的两大核心功能。连接器,负责对外交流:处理 Socket 连接,负责⽹络字节流与 Request 和 Response 对象的转化;容器,负责内部处理:加载和管理 Servlet,以及具体处理 Request 请求;连接器组件 CoyoteCoyote 是 Tomcat 中连接器的组件名称 , 是对外的接口。客户端通过 Coyote 与服务器建立连接、发送

2021-06-30 12:13:01 78

原创 Spring

Spring FrameworkSpring 简介Spring 框架即以 interface 21 框架为基础,经过重新设计,并不断丰富其内涵,于2004年3月24日,发布了1.0版本。创始人是 Rod Johnson。Spring 是一个轻量级__控制反转(IoC)__和__面向切面(AOP)__的容器框架。Spring 框架由 7 部分组成: Spring Core、 Spring AOP、 Spring ROM、 Spring DAO、 Spring Web、 Spring Context、

2021-06-30 12:12:52 76

原创 Spring MVC

Spring MVCMVC 体系结构MVC 指 MVC 模式的某种框架,它强制性地使应用程序的输入、处理和输出分开。使用 MVC 应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。最典型的 MVC 就是 JSP + Servlet + JavaBean 的模式。视图视图是用户看到并与之交互的界面。对老式的 Web 应用程序来说,视图就是由 HTML 元素组成的界面,在新式的 Web 应用程序中,HTML 依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括 Ado

2021-06-30 12:12:39 69

原创 Spring Boot

Spring Boot 简介言归正传,什么是SpringBoot呢,就是一个javaweb的开发框架,和SpringMVC类似,对比其他javaweb框架的好处,官方说是简化开发,约定大于配置, you can “just run”,能迅速的开发web应用,几行代码开发一个http接口。所有的技术框架的发展似乎都遵循了一条主线规律:从一个复杂应用场景 衍生 一种规范框架,人们只需要进行各种配置而不需要自己去实现它,这时候强大的配置功能成了优点;发展到一定程度之后,人们根据实际生产应用情况,选取其中实用

2021-06-30 12:12:14 93

原创 Mybatis 配置多个数据源的方式

properties 属性文件的实现方式数据库连接的 properties 配置文件,配置两个数据源信息:spring.jdbc.driver=com.mysql.cj.jdbc.Driverspring.jdbc.url=jdbc:mysql://localhost:3306/spring?useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true&useSSL=false&useJDBCCo

2021-06-30 12:11:48 2359 1

原创 MyBatis 相关概念

对象关系映射(ORM)ORM(Object Relational Mapping)对象关系映射,是一种程序设计技术,用于实现面向对象编程语言中不同类型系统的数据之间的转换。面向对象是从软件工程基本原则(耦合、聚合、封装等)的基础上发展起来的,而关系数据库则是从数学理论发展而来的,两套理论存在显著的区别。为了解决这个不匹配的现象,对象关系映射技术应运而生。ORM 框架完成了面向对象编程语言到关系数据库的映射。当 ORM 框架完成映射后,程序员既可以利用面向对象编程语言的简单易用性,又可以利用关系数据库的

2021-06-30 12:11:18 145

原创 MyBatis 基本应用

快速入门开发步骤添加 MyBatis 相关依赖创建数据库数据表创建对应实体类编写映射文件 Mapper.xml编写核心配置文件 SqlMapConfig.xml编写测试类以及相关测试方法环境搭建引入 MyBatis 以及其他相关依赖添加 Maven 编译信息<properties> <maven.compiler.encode>UTF-8</maven.compiler.encode> <maven.compiler

2021-06-30 12:10:44 124

空空如也

空空如也

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

TA关注的人

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