自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

姚桑带你学Java与架构

简单不先于复杂,而是在复杂之后

  • 博客(30)
  • 收藏
  • 关注

原创 Springboot极简入门系列文章

Springboot极简入门系列文章Springboot极简单入门文章 , 只做学习使用,欢迎交流。《Springboot极简入门》适用人群:有Spring,SpringMVC,Mybagtis基础的网友一 . 为什么需要Springboot二. Springboot入门三. Springboot入门详解四. Springboot配置-yml五. Springboot多环境配置六. Springboot springmvc七. Springboot springmvc resultf

2020-12-05 14:40:57 2347 8

原创 02 TOGAF企业架构框架

1 什么是TOGAF​ TOGAF是众多企业架构框架之一,TOGAF标准是The Open Group标准之一,企业架构标准,TOGAF为标准、方法论和企业架构专业人士之间的沟通提供一致性保障。2 为什么选用TOGAFTOGAF 是通过300多家开放群组架构论坛的会员协同努力发展的,会员包含全球领先的IT客户及厂商,代表了架构发展的最佳实践。使用TOGAF作为架构框架将允许架构开发的一致性,反映利益相关者的需要,采用最佳实践,并为当前需求以及未来可能的业务需要提供应有的考虑。架构设计是一个复杂的技

2021-04-30 13:22:28 673

原创 企业架构-01企业架构与TOGAF

企业架构-01企业架构与TOGAF1 何为企业架构企业架构(Enterprise Architecture),简称EA。是指对企业事业信息管理系统中具有体系的、普遍性的问题而提供的通用解决方案,更确切的说,是基于业务导向和驱动的架构来理解、分析、设计、构建、集成、扩展、运行和管理信息系统。复杂系统集成的关键,是基于架构(或体系)的集成,而不是基于部件(或组件)的集成。有效的企业架构对企业的生存和成功具有决定性的作用,是企业通过IT获得竞争优势的不可缺少的手段。2 企业架构分类可以分为两大部分:业务

2021-04-29 16:45:37 420 2

原创 码农打工者你做新年规划了吗

码农打工者你做新年规划了吗?同步自"姚桑带你学Java与架构公众号"1 为什么要规划?​ 20年终究是不平凡的一年,新冠病毒在肆虐着人类。不过坚强的人类经过了调整、防范后,也正常,有序生存、生活中。​ 在这一年,姚桑也经理了很多,一晃眼已经在IT行业滚打了10+年了。经历了struts2,spirngmvc,springboot,springcloud,k8s,ServiceMesh等技术变更,也见证了SSM全栈单体,Springboot全栈单体,Spirngboot前后端分离,微服务架构等技术架

2021-03-31 15:23:14 232 1

原创 Websocket实战-消息推送

一 Websocket简介1.1 是什么WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。1.2 出现背景很多网站为了实现

2021-03-31 15:10:38 583

原创 微服务架构-数据字典设计点点滴滴

一 微服务架构-数据字典设计1.1 为什么需要数据字典​ 在系统中某些选项是几个特定的值的一个或多个,并且随着还可以动态添加。比如支付方式,配送方式等​ 此时我们应该设计一个数据字典模块,在后台进行管理,然后前台要从后端查询。并且由于我们可能有多个类型,每个类型可能有多个选项。所以,后台数据库表设计就包含数据字典类型或数据字典明细两张表。具体设计如下:数据字典类字段说明id 唯一主键。sn 标识 非常重要,前台就是通过他来查询某一类型的数据字典的。name 名称,用来显示用的。

2021-02-04 09:19:58 2538

原创 二十 Springboot-集成RabbitMq

20.1 RabbitMq介绍20.1.1 是什么​ MQ全称为Message Queue,即消息队列. 它也是一个队列,遵循FIFO原则 。RabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue protoctl 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开 发中应用非常广泛。官方地址:http://www.rabbitmq.com/20.1.2 使用场景提高系统响应速度任务异步处理。 将不需要同.

2021-01-25 14:20:39 193 1

原创 一 软件应用架构演进

一 软件应用架构演进 随着互联网的发展,使用互联网的人群越来越多,软件应用的体量越来越庞大和复杂,传统的单体应用可能不足以支撑大数据量以及高并发场景,应用的架构也随之进行演变,从最开始的单体应用架构到分布式(SOA)架构再到今天比较火的微服务架构,以及服务网格架构。1.1 单体架构1.1.1 简单单体结构​ 单体架构比较初级,典型的三级架构,前端(Web/手机端)+中间业务逻辑层+数据库层。这是一种典型的Java Spring mvc。其架构图如下所示:​ 单体架构的应用比较容易部署

2021-01-25 14:16:10 284

原创 十九 Springboot-集成elastic search

19.1 准备elastic search19.1.1 是什么​ 是一个全文搜索服务器19.1.2 简单使用​ 以windows为例进行简单使用19.1.2.1 下载​ elasticsearch​ kibana​ elasticsearch ik分词器19.1.2.2 安装安装elasticsearch直接解压就OK配置elasticsearch及ik分词器修改jvm参数解压拷贝到es plugins下面安装客户端kibana​ 直接解压就OK

2021-01-05 17:39:35 484

原创 十八 Springboot-集成redis

18.1 准备redis18.1.1 是什么​ 是一个key-vue的Nosql。18.1.2 优势开源免费数据存储存放在内存,还支持持久化.-存取速度快,并发能力强,数据安全高支持value类型更多支持多个语言客户端还支持集群(支持高并发,海量数据)18.1.3 使用场景​ 使用数据访问快特点缓存过期时间短信验证码等18.1.4 简单使用​ 以windows为例进行简单使用18.1.4.1 下载​ https://github.co

2021-01-05 17:37:50 127

原创 十七 Springboot-日志支持

17.1 为什么需要日志框架​ 通过日志的方式记录系统运行的过程或错误以便定位问题。17.2 常见日志框架17.2.1 设计思想1、System.out.println("");将关键数据打印在控制台;去掉?写在一个文件?2、框架来记录系统的一些运行时信息;日志框架 ; zhanglogging.jar;3、高大上的几个功能?异步模式?自动归档?xxxx? zhanglogging-good.jar?4、将以前框架卸下来?换上新的框架,重新修改之前相关的API;zhanglogging-p

2021-01-05 17:37:13 151

原创 十六 Springboot-配置Druid连接池

16.1 Druid是什么​ Druid 是阿里巴巴开源的数据库连接池,除了性能比较高以外,Druid 还能能够提供强大的监控和扩展功能。所以在企业中是使用的非常多的。具体特点如下:​ 可以监控数据库访问性能, Druid 内置提供了一个功能强大的StatFilter插件,能够详细统计 SQL 的执行性能,这对于线上分析数据库访问性能有帮助。数据库密码加密。直接把数据库密码写在配置文件中,这是不好的行为,容易导致安全问题。 DruidDruiver 和 DruidDataSource 都支持 Pas

2021-01-05 17:36:31 434

原创 十五 Springboot-配置Spring事务

15.1 Spring事务回顾15.1.2 原理​ Spring的事务是使用的是AOP,AOP的底层使用动态代理实现的。15.1.3 使用xmlTransationManager:需要在xml中配置一个事务管理器Advisor:通知PointCUt:通过切面应用通知.注解式TransationManager:需要在xml中配置一个事务管理器打注解@Transational:在需要配置事务类上面加注解扫描注解</tx:annotationDriven>:xml中需要

2021-01-05 17:35:52 274

原创 十四.Springboot-MyBatis集成

14.1 步骤分析1 准备一个Springboot项目2 pom-引入Mybatis Stater3 yml配置4 入口类5 写代码测试14.2 实现14.2.1 准备一个Springboot项目14.2.2 pom-引入Mybatis Stater<!-- spring-boot整合mybatis --><dependency> <groupId>org.mybatis.spring.boot</groupId> &l

2021-01-05 17:34:55 111 2

原创 十三 Springboot-spring data jpa

13.1 什么是Springboot spring data jpa13.1.1 Jpa与HibernateJpa是Java的Orm规范Hibernate是Jpa的一种实现方式Jpa优缺点本质:处理Java对象和关系型数据库表之间的转换,只是对JDBC再次做了一层封装优点:1.程序员操作很简单,代码简单 entityManager.persist(employee); 2.直接面向持久对象操作3.提供世界级数据缓存(现在几乎所有的ORM框架的缓存都是学的Hibernate)

2021-01-05 17:34:09 134

原创 十二 . Springboot-Junit test

​ 使用了Springboot后,就不能用原来的Spring的测试了,需要使用springboot的测试12.1 步骤分析1 准备一个springboot项目 略过2 pom导入对应stater3 写代码测试12.2 pom.xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</ar

2021-01-05 17:33:25 120

原创 十一 . Springboot-Jdbc

SpringBoot的数据访问层都是封装在可以直接使用jdbc11.1 步骤分析1 准备一个springboot项目 略过2 pom导入对应stater3 application.yml配置4 入口类5 写代码测试11.2 pom.xml<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId>&lt.

2021-01-05 17:32:40 136

原创 十 SpringBoot-SpringMvc使用详解

10.1 @Controller&@RequestMapping&@ResponseBody@Controller@Controller 是Spring框架提供的注解。@Controller标识的类,该类代表控制器类(控制层/表现层)。这里控制层里面的每个方法,都可以去调用@Service标识的类(业务逻辑层),@Service标识的类中的方法可以继续调用@Resposity标识的接口实现类(Dao层/持久层)。@RequestMapping在Spring MVC 中使用

2021-01-05 17:31:50 387

原创 九 Springboot-页面模板`Thymeleaf`

9.1 什么是Thymeleaf​ 开发传统Java WEB工程时,我们可以使用JSP页面模板语言,但是在SpringBoot中已经不推荐使用了。SpringBoot支持如下页面模板语言Thymeleaf,FreeMarker,Velocity,Groovy,JSP等其中Thymeleaf是SpringBoot官方所推荐使用的,下面来谈谈Thymeleaf一些常用的语法规则。9.2 Thymeleaf入门步骤分析:1 首先要想让springboot支持Thymeleaf必须先导入对应starte

2020-12-23 14:14:22 453

原创 八. Springboot-静态资源

8.1 原理分析springboot中,没有web.xml,但是我们需要访问相应的静态资源(html,css,js等)现在的问题是,咱们的静态资源应该放在哪里? 我们分析一波源码!思考:既然是静态资源,肯定是分析mvc的配置与源码!所有MVC相关的配置(视图解析器,上传下载,静态资源等)都在WebMvcAutoConfiguration这个类中addResourceHandlers:静态资源处理方法解析@Overridepublic void addResourceHandl

2020-12-21 17:29:48 136

原创 七 Springboot-Profile 多环境支持

7.1 为什么需要​ 我们开发的代码有可能需要运行在多个环境,比如我们的代码需要开发测试,测试人员测试,上线等环境,而每个环境是不相同的,所以需要进行不同的配置。7.2 定义方式​ 定义多个环境整体实现有两种,一种是在一个配置文件配置所有的环境,另一种是多个配置文件中分别配置对应的环境。7.2.1单文件配置方式---server: port: 8081spring: profiles: dev #开发环境 application: name: springbootco

2020-12-21 17:11:16 255 2

原创 六 SpringBoot的配置文件

SpringBoot的配置文件Spring Boot 使用一个全局配置文件,放置在 src/main/resources 目录或类路径的 /config 下;application.properties 语法:key = valueapplication.yml 语法:key: valueyml 是 YAML(YAML Ain’t Markup Language)不是一个标记语言;yaml配置和 properties 可以同时配置!properties的优先级要大于yaml6.

2020-12-21 17:09:59 118

原创 五 Springboot-搭建maven多模块

5.1 为什么要搭建5.1.1 在我们学习过程中需要使用​ 在学习springboot的过程中,可能要进行入门,配置,springmvc,mybatis,redis等模块基础springboot测试学习,我们可以为每个测试创建一个springboot项目来测试,但是比较麻烦。其实我们有以下解决方案:5.1.1.1 一个idea springboot项目中​ 我们可以在一个idea springboot项目中写很多代码,包含springboot的入门,配置,springmvc,mybatis,redi

2020-12-21 17:06:45 219

原创 三 Springboot入门详解

​ 在上一章,我们对Springboot进行了入门,接下来我们就来看一下一些细节。3.1 pom.xml研究分析思路,只要是maven项目就先分析pom.xmlpom.xml中分析三个要素:依赖,插件,parent3.1.1 父依赖 parent父依赖代码<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-p

2020-12-08 23:02:37 267 1

原创 二 Springboot入门

​ 在上一章节,我们讲到了为什么需要springboot,其他就是简化Spring应用搭建、开发、部署、测试。接下来我们就来入门一下2.1 入门步骤分析​ 网上很多都是通过start.spring.io ,来进行入门。这次我们直接手写一步一步实现一个简单springboot应用。j具体步骤如下首先创建一个普通maven project然后导入springboot相关的依赖-先导入web,test其次准备配置applicaion.yml随后书写SpringBoot项目主类最后写Controlle

2020-12-06 22:15:18 252 1

原创 一 为什么需要Springboot

一 传统Spring项目研发​ 以spring搭建的项目,可以把它叫做Spring项目,接下来以Spring+SpringMVC+Mybatis为技术选型进行搭建。具体步骤如下:1. 创建一个maven的web项目2. 以Maven导入SSM所需jar3. 集成 1)数据库配置文件:jdbc.properties 2)Spring的核心配置文件:applicationContext.xml,里面对Mybatis进 行了集成 3)SpringMVC配置文件

2020-12-06 17:49:29 344 2

原创 Java架构更迭

一 大家为什么需要知道Java项目架构历史 温故而知新 了解进10年来Java项目的更迭历史,才能真正明白现在如今前后端分离,微服务架构为什么这么火。 装逼神器 让别人感觉你很NB似的,了解Java历史挺多的。 任何架构都不是问题 那怕你跑路后,无论多么老,多么新的项目对你来说都不是问题。 二 Java主流架构进10年左右来跟跌历史以下近10年java项目主流架构更迭图,有的已经淘汰,有的虽然有新的架构出现,但在某些方面的优势,一直坚挺的存在着。2.

2020-12-03 14:39:44 414 4

原创 Java面试题汇总

为了帮助各位网友对java的整体面试题有一个整体认识,姚桑准备编写一系列面试文章,下面给出的是整体大纲!后续逐渐发布java基础部分:面试流程 Java基础 Javaweb SSM框架 Springboot Springcloud 项目阶段Java高级部分:待定。。。欢迎大家关注公众号”姚桑带你学java与架构”!会进行同步和获取架构师,devops,微服务等免费资源!...

2020-11-10 12:48:27 196

原创 四 Sringboot 自定义starter

springboot 自定义starter1 springboot starter机制概述​ SpringBoot中的starter是一种非常重要的机制,能够抛弃以前繁杂的配置,将其统一集成进starter,应用者只需要在maven中引入starter依赖,SpringBoot就能自动扫描到要加载的信息并启动相应的默认配置。2 springboot starter机制原理​ 当我们引入了starter,就会使用springboot自动配置原理,对这种场景进行配置。①Springboo

2020-10-16 14:08:27 360

原创 全栈项目-宠物乐园

项目介绍: 宠物乐园这个项目是为xxx公司开发o2o模式一个项目。它是以宠物为中心,提供宠物领养,寻主的基本功能,还提供了宠物服务,相关物品购买,宠物相关知识学习等功能一个综合性平台。它主要有组织机构,用户,服务,宠物,订单, 支付等模块。它是使用前后端分离开发模式,前端使用的是vue技术栈,后台使用的是springboot+ssm+docker。负责模块: 1 用户模块 用户注册用户登录:账号登录,三方登录,验证码登录收藏:服务,商品,宠物...

2020-09-20 17:29:07 1340 4

空空如也

空空如也

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

TA关注的人

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