- 博客(58)
- 收藏
- 关注
原创 订单过期自动关闭方案
每种过期订单关闭方案都有其独特的优缺点和适用场景。选择哪种方案,需要根据实际业务需求、系统规模、团队技术栈以及对实时性的要求综合考虑。例如,在订单量较小、实时性要求不高的场景下,可以选择订单查询时检查;在订单量适中、对时间精度有一定要求的场景下,xxl-job定时任务是一个不错的选择;而在订单量较大、对实时性要求极高的场景下,RocketMQ延迟消息或Redis消息自动过期方案可能更为合适。总之,没有绝对的最佳方案,只有最适合当前业务场景的方案。
2024-08-14 11:00:14
833
原创 SpringBoot_15_shiro
Apache Shiro 是 Java 的一个安全(权限)框架。Shiro 可以非常容易的开发出足够好的应用,其不仅可以用在 JavaSE 环境,也可以用在 JavaEE 环境。Shiro 可以完成:认证、授权、加密、会话管理、与Web 集成、缓存等。下载地址Authentication:身份认证/登录,验证用户是不是拥有相应的身份Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否能进行什么操作,如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个
2022-09-08 11:58:06
467
原创 SpringBoot_14_SpringSecurity
1、在 Web 开发中,安全一直是非常重要的一个方面。安全虽然属于应用的非功能性需求,但是应该在应用开发的初期就考虑进来。如果在应用开发的后期才考虑安全的问题,就可能陷入一个两难的境地:一方面,应用存在严重的安全漏洞,无法满足用户的要求,并可能造成用户的隐私数据被攻击者窃取;另一方面,应用的基本架构已经确定,要修复安全漏洞,可能需要对系统的架构做出比较重大的调整,因而需要更多的开发时间,影响应用的发布进程。因此,从应用开发的第一天就应该把安全相关的因素考虑进来,并在整个应用的开发过程中。2、市面上存在比较有
2022-09-05 18:15:30
488
原创 SpringBoot_13_国际化
我们可以去登录页面查看一下,哪些内容我们需要编写国际化的配置!里面有一个方法,这里发现SpringBoot已经自动配置好了管理我们国际化资源文件的组件。我们真实 的情况是放在了i18n目录下,所以我们要去配置这个messages的路径;那假如我们现在想点击链接让我们的国际化资源生效,就需要让我们自己的Locale生效!有的时候,我们的网站会去涉及中英文甚至多语言的切换,这时候我们就需要学习国际化了!我们去我们webmvc自动配置文件,寻找一下!为了让我们的区域化信息能够生效,我们需要再配置一下这个组件!
2022-09-02 17:51:19
420
原创 SpringBoot_12_web开发静态资源处理
其实SpringBoot的东西用起来非常简单,因为SpringBoot最大的特点就是自动装配。1、创建一个SpringBoot应用,选择我们需要的模块,SpringBoot就会默认将我们的需要的模块自动配置好2、手动在配置文件中配置部分配置项目就可以运行起来了3、专注编写业务代码,不需要考虑以前那样一大堆的配置了。要熟悉掌握开发,之前学习的自动配置的原理一定要搞明白!比如SpringBoot到底帮我们配置了什么?我们能不能修改?我们能修改哪些配置?我们能不能扩展?
2022-09-02 17:40:23
337
原创 SpringBoot_10_整合druid
Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池。Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C3P0、DBCP 等 DB 池的优点,同时加入了日志监控。Druid 可以很好的监控 DB 池连接和 SQL 的执行情况,天生就是针对监控而生的 DB 连接池。Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署的严苛考验。...
2022-09-01 17:36:46
164
原创 SpringBoot_09_整合JDBC
对于数据访问层,无论是 SQL(关系型数据库) 还是 NOSQL(非关系型数据库),Spring Boot 底层都是采用 Spring Data 的方式进行统一处理。Spring Boot 底层都是采用 Spring Data 的方式进行统一处理各种数据库,Spring Data 也是 Spring 中与 Spring Boot、Spring Cloud 等齐名的知名项目。...
2022-09-01 12:04:51
126
原创 SpringBoot_06_Thymeleaf
模板引擎的作用就是我们来写一个页面模板,比如有些值呢,是动态的,我们写一些表达式。然后把这个模板和这个数据交给我们模板引擎,模板引擎按照我们这个数据帮你把这表达式解析、填充到我们指定的位置,然后把这个数据最终生成一个我们想要的内容给我们写出去,这就是我们这个模板引擎,不管是jsp还是其他模板引擎,都是这个思想。jsp支持非常强大的功能,包括能写Java代码,但是呢,我们现在的这种情况,SpringBoot这个项目首先是以jar的方式,不是war,像第二,我们用的还是嵌入式的Tomcat,所以呢,
2022-08-22 18:59:16
183
原创 SpringBoot_05_自动配置管理
配置文件到底能写什么?怎么写?----联系---- SpringBoot官方文档中有大量的配置,我们无法全部记住,官网:https://docs.spring.io/spring-boot/docs/2.3.1.RELEASE/reference/html/appendix-application-properties.html#core-propertiesSpringBoot启动的时候加载主配置类,开启了自动配置功能 @EnableAutoConfiguration@EnableAutoConfigur
2022-08-22 17:43:34
251
原创 SpringBoot_04_JSR303数据校验
profile是Spring对不同环境提供不同配置功能的支持,可以通过激活不同的环境版本,实现快速切换环境;和properties配置文件中一样,但是使用yml去实现不需要创建多个配置文件,更加方便了!项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来指定配置文件的新位置;这种情况,一般是后期运维做的多,相同配置,外部指定的配置文件优先级最高。我们在最低级的配置文件中设置一个项目访问路径的配置来测试互补问题;优先级由高到底,高优先级的配置会覆盖低优先级的配置;来改变默认的配置文件位置。
2022-08-21 17:02:06
140
原创 SpringBoot_03_yaml
YAML是 “YAML Ain’t a Markup Language” (YAML不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:“Yet Another Markup Language”(仍是一种标记语言)这种语言以数据作为中心,而不是以标记语言为重点!以前的配置文件,大多数都是使用xml来配置;比如一个简单的端口配置,我们来对比下yaml和xml传统xml配置:
2022-08-20 18:04:54
217
原创 SpringBoot_02_运行原理初窥
我们之前写的HelloSpringBoot,到底是怎么运行的呢,Maven项目,我们一般从pom.xml文件探究起;可以看到这些一个个的都是JavaConfig配置类,而且都注入了一些Bean,可以找一些自己认识的类,看着熟悉一下!形式的IOC容器配置类 , 然后将这些都汇总成为一个实例并加载到IOC容器中。,将主启动类的所在包及包下面所有子包里面的所有组件扫描到Spring容器;,标注在某个类上 , 表示这是一个SpringBoot的配置类;这个注解在Spring中很重要 ,它对应XML配置中的元素。..
2022-08-18 19:15:31
374
原创 SpringBoot_01_初窥门径
Spring是一个开源框架,2003 年兴起的一个轻量级的Java 开发框架,作者:Rod Johnson。Spring是为了解决企业级应用开发的复杂性而创建的,简化开发。学过javaweb的同学就知道,开发一个web应用,从最初开始接触Servlet结合Tomcat, 跑出一个Hello Wolrld程序,是要经历特别多的步骤;后来就用了框架Struts,再后来是SpringMVC,到了现在的SpringBoot,过一两年又会有其他web框架出现;......
2022-08-18 19:03:59
169
原创 Vue_10_快速上手
注意:命令行都要使用管理员模式运行1、创建一个名为hello-vue的工程2、安装依赖, 我们需要安装vue-router、element-ui、sass-loader和node-sass四个插件3、Npm命令解释:把没有用的初始化东西删掉! 在源码目录中创建如下结构:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TKoLErmT-1660709302244)(10实战快速上手.assets/1595337979139.png)]创建首页视图,在views目录下创建
2022-08-17 12:09:42
406
原创 Vue_09_vue-router
学习的时候,尽量的打开官方的文档Vue Router是Vue.js官方的路由管理器。它和Vue.js的核心深度集成, 让构建单页面应用变得易如反掌。
2022-08-17 12:07:54
103
原创 Vue_08_Webpack
本质上, webpack是一个现代JavaScript应用程序的静态模块打包器(module bundler)。当webpack处理应用程序时, 它会递归地构建一个依赖关系图(dependency graph) , 其中包含应用程序需要的每个模块, 然后将所有这些模块打包成一个或多个bundle.Webpack是当下最热门的前端资源模块化管理和打包工具, 它可以将许多松散耦合的模块按照依赖和规则打包成符合生产环境部署的前端资源。还可以将按需加载的模块进行代码分离,等到实际需要时再异步加载。...
2022-08-17 12:07:09
104
原创 Vue_07_vue-cli
vue-cli官方提供的一个脚手架,用于快速生成一个vue的项目模板预先定义好的目录结构及基础代码,就好比咱们在创建Maven项目时可以选择创建一个骨架项目,这个估计项目就是脚手架,我们的开发更加的快速;主要的功能统一的目录结构本地调试热部署单元测试集成打包上线。...
2022-08-17 12:02:47
90
原创 Vue_06_计算属性、内容分发
通以上代码不难发现,数据项在Vue的实例中, 但删除操作要在组件中完成, 那么组件如何才能删除Vue实例中的数据呢?此时就涉及到参数传递与事件分发了, Vue为我们提供了自定义事件的功能很好的帮助我们解决了这个问题;使用this.$emit(‘自定义事件名’, 参数) , 操作过程如下:1. 在vue的实例中增加了methods对象并定义了一个名为removeTodoltems的方法。...
2022-08-16 21:28:34
94
原创 Vue_05_Axios异步通信
Axios是一个开源的可以用在浏览器端和Node JS从浏览器中创建从node.js创建http请求支持Promise API[JS中链式编程]拦截请求和响应转换请求数据和响应数据取消请求自动转换JSON数据客户端支持防御XSRF(跨站请求伪造)...
2022-08-16 21:12:35
101
原创 Vue_04_表单双绑
Vue.js是一个MV VM框架, 即数据双向绑定, 即当数据发生变化的时候, 视图也就发生变化, 当视图发生变化的时候,数据也会跟着同步变化。这也算是Vue.js的精髓之处了。值得注意的是,我们所说的数据双向绑定,一定是对于UI控件来说的非UI控件不会涉及到数据双向绑定。单向数据绑定是使用状态管理工具的前提。如果我们使用vue x那么数据流也是单项的,这时就会和双向数据绑定有冲突。组件是可复用的Vue实例, 说白了就是一组可以重复使用的模板, 跟JSTL的自定义标签、Thymeleal的。...
2022-08-16 21:11:24
162
原创 Vue_03_基本指令
可能你已经猜到了, 它们会在渲染的DOM上应用特殊的响应式行为在这里,该指令的意思是:“将这个元素节点的title特性和Vue实例的message属性保持一致”。如果你再次打开浏览器的JavaScript控制台, 输入app.message=‘新消息’,就会再一次看到这个绑定了title特性的HTML已经进行了更新。Vue还有一些基本的使用方式, 大家有需要的可以再跟着官方文档看看, 因为这些基本的指令几乎我们都见过了,一通百通!是vue的事件, 可以绑定到Vue中的。/*Model:数据*/...
2022-08-16 21:10:14
99
原创 Vue_02
MVVM(Model-View-ViewModel)是一种软件设计模式,由微软WPF(用于替代WinForm,以前就是用这个技术开发桌面应用程序的)和Silverlight(类似于Java Applet,简单点说就是在浏览器上运行WPF)的架构师Ken Cooper和Ted Peters开发,是一种简化用户界面的事件驱动编程方式。由John Gossman(同样也是WPF和Sliverlight的架构师)与2005年在他的博客上发表。...
2022-08-16 21:09:21
93
原创 Vue_01
Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式JavaScript框架,发布于2014年2月。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层vue-router:跳转,vue-resource:通信,vuex:管理)或既有项目整合。综上所述,模式也好,技术也罢,没有好坏优劣之分,只有适合不适合;前后分离的开发思想主要是基于Soc(关注度分离原则),上面种种模式,都是让前后端的职责更清晰,分工更合理高效。......
2022-08-16 21:07:45
769
原创 整合SSM框架
需要熟练掌握MySQL数据库,Spring,JavaWeb及MyBatis知识,简单的前端知识;我们去编写Spring整合Mybatis的相关的配置文件;编写数据库对应的实体类 nuc.ss.pojo.Books(使用lombok插件!编写接口对应的 Mapper.xml 文件。BookController 类编写 , 方法一:查询全部书籍。BookController 类编写 , 方法二:添加书籍。BookController 类编写 , 方法三:修改书籍。编写Dao层的 Mapper接口!...
2022-08-16 20:54:29
127
原创 SpringMVC一站搞定
Model(模型): 数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都分离开来:Value Object(数据Dao) 和 服务层(行为Service)。也就是模型提供了模型数据查询和模型数据的状态更新等功能,包括数据和业务。View(视图):负责进行模型的展示,一般就是我们见到的用户界面,客户想看到的东西。Controller(控制器):接收用户请求,委托给模型进行处理(状态改变),处理完毕后把返回的模型数据返回给视图,由视图负责展
2022-08-16 20:48:22
983
原创 Spring一站搞定
Spring:春天—> 给软件行业带来了春天2002年,Rod Jahnson首次推出了Spring框架雏形interface21框架。2004年3月24日,Spring框架以interface21框架为基础,经过重新设计,发布了1.0正式版。很难想象Rod Johnson的学历 , 他是悉尼大学的博士,然而他的专业不是计算机,而是音乐学。Spring理念 : 使现有技术更加实用 . 本身就是一个大杂烩 , 整合现有的框架技术SSH : Struct2 + Spring + Hibernate!SSM :
2022-08-16 20:46:31
235
原创 Mybatis一站搞定
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L1FAypYK-1660648985913)(Mybatis课堂笔记.assets/1569633932712.png)]MyBatis 是一款优秀的持久层框架它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。...
2022-08-16 19:24:36
120
原创 Spring-07-AOP
AOP上一讲中我们讲解了代理模式,这是AOP的基础,一定要先搞懂它那我们接下来就来聊聊AOP吧!AOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。提供声明式事务;允许用户自定义
2022-08-06 10:44:38
111
原创 Spring-05-使用注解开发
JavaConfig 原来是 Spring 的一个子项目,它通过 Java 类的方式提供 Bean 的定义信息,在 Spring4 的版本, JavaConfig 已正式成为 Spring4 的核心功能。关于这种Java类的配置方式,我们在之后的SpringBoot 和 SpringCloud中还会大量看到,我们需要知道这些注解的作用即可。为了更好的进行分层,Spring可以使用其它三个注解,功能一样,目前使用哪一个功能都一样。在spring4之后,想要使用注解形式,必须得要引入aop的包。...
2022-08-06 10:42:00
93
原创 Spring-04-自动装配
Bean的自动装配自动装配说明这里我们主要讲第三种:自动化的装配bean。组件扫描和自动装配组合发挥巨大威力,使得显示的配置降低到最少。****测试环境搭建1、新建一个项目2、新建两个实体类,Cat Dog 都有一个叫的方法3、新建一个用户类 User4、编写Spring配置文件5、测试结果正常输出,环境OKbyName由于在手动配置xml过程中,常常发生字母缺漏和大小写等错误,而无法对其进行检查,使得开发效率降低。采用自动装配将避免这些错误,并且使配置简单化。...
2022-08-06 10:40:38
119
原创 Spring-03-依赖注入
我们在之前的案例已经讲过了要求被注入的属性 , 必须有set方法 , set方法的方法名由set + 属性首字母大写 , 如果属性是boolean类型 , 没有set方法 , 是 is .测试pojo类 :Address.javaStudent.java1、常量注入测试:2、Bean注入注意点:这里的值是一个引用,ref3、数组注入4、List注入5、Map注入6、set注入7、Null注入8、Properties注入测试结果:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下
2022-08-06 10:39:42
112
原创 Spring-02-hellospring
OK , 到了现在 , 我们彻底不用再程序中去改动了 , 要实现不同的操作 , 只需要在xml配置文件中进行修改 , 所谓的IoC,一句话搞定 : 对象由Spring 来创建 , 管理 , 装配!注 : spring 需要导入commons-logging进行日志记录 . 我们利用maven , 他会自动下载对应的依赖项 .2、编写我们的spring文件 , 这里我们命名为beans.xml。我们在案例一中, 新增一个Spring配置文件beans.xml。依赖注入 : 就是利用set方法来进行注入的...
2022-08-06 10:38:57
90
原创 Spring-01-概述&IOC
简介Spring : 春天 —>给软件行业带来了春天2002年,Rod Jahnson首次推出了Spring框架雏形interface21框架。2004年3月24日,Spring框架以interface21框架为基础,经过重新设计,发布了1.0正式版。很难想象Rod Johnson的学历 , 他是悉尼大学的博士,然而他的专业不是计算机,而是音乐学。Spring理念 : 使现有技术更加实用 . 本身就是一个大杂烩 , 整合现有的框架技术官网 : http://spring.io/...
2022-08-06 10:37:11
84
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人