【007】Java &Spring&Spring Boot
文章平均质量分 52
Java & Spring & Spring Boot
呼噜噜哟
这个作者很懒,什么都没留下…
展开
-
消息队列之 RabbitMQ
关于消息队列,从前年开始断断续续看了些资料,想写很久了,但一直没腾出空,近来分别碰到几个朋友聊这块的技术选型,是时候把这块的知识整理记录一下了。市面上的消息队列产品有很多,比如老牌的 ActiveMQ、RabbitMQ ,目前我看最火的 Kafka ,还有 ZeroMQ ,去年底阿里巴巴捐赠给 Apache 的 RocketMQ ,连 redis 这样的 NoSQL 数据库也支持 MQ 功能。总之这块知名的产品就有十几种,就我自己的使用经验和兴趣只打算谈谈 RabbitMQ、Kafka 和 Active转载 2021-11-04 10:23:33 · 263 阅读 · 0 评论 -
Java代理(Proxy)模式
代理就是一个对象的代理对象,代理对象存在的价值主要(不是唯一)就是对访问真实业务对象进行拦截。代理模式(Proxy)是通过代理对象访问目标对象,这样可以在目标对象基础上增强额外的功能,如添加权限,访问控制和审计等功能。代理模式代理(Proxy)模式结构图Java代理分为静态代理和动态代理和Cglib代理,下面进行逐个说明。1.静态代理接口类AdminService.java接口package com.lance.proxy.demo.service;pu转载 2021-07-04 18:35:07 · 4113 阅读 · 0 评论 -
Postgresql特殊字符转义处理
/** * Postgresql特殊字符转义处理 */public static String specialCharacterEscape(String source) { String result = null; if (org.apache.commons.lang.StringUtils.isNotEmpty(source)) { result = source.replace("%", "\\%").replace("_", "\\_"); } return result;.原创 2021-04-28 15:53:35 · 3102 阅读 · 0 评论 -
【Spring Boot】核心注解
@SpringBootApplication等同于@EnableAutoConfiguration+@ComponentScan+@SpringBootConfiguration,@ComponentScan默认是扫描当前文件所属包下面所有的子包 @SpringBootConfiguration和@Configuration的功能一样,用来代替xml的bean @EnableAutoConfiguration 自动加载jar包的默认配置,实际上启动SpringMVC @ComponentScan 代原创 2021-04-11 21:59:02 · 149 阅读 · 0 评论 -
【Spring Boot】五、打包jar包
1.pom文件中build节点下配置启动类注意:MainClass一定要加上包名否则会出现java.lang.NoClassDefFoundError错误,找不到类<plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>1原创 2021-04-11 21:58:22 · 151 阅读 · 0 评论 -
【Spring Boot】四、常规、日志和多环境配置
1.常规配置(application.properties)(1)application.properties中添加定义#自定义属性luxiaoyong=luxiaoyong(2)类中定义变量获取参数值//用标签从application.properties中获取变量名为luxiaoyong的值@Value("${test}")private String msg;(3)方法中调用变量@GetMapping("/test")public String Save()原创 2021-04-11 21:53:33 · 111 阅读 · 0 评论 -
【Spring Boot】 三、基础理论
Spring Boot 是什么?1.Spring Boot 是伴随着Spring 4.0诞生的2.它是一个内嵌的Web容器(Tomcat/jetty)的可执行程序的框架3.你开发的web应用不需要作为war包部署到web容器中,而是作为一个可执行程序,启动时把web服务器配置好,加载起来Spring Boot解决了什么问题1.配置变简单2.编码变简单3.部署变简单4.监控变简单Spring IOC容器就是具有依赖注入功能的容器,是可以创建对象的容器。IOC容器负责实例原创 2021-04-11 21:51:03 · 183 阅读 · 2 评论 -
【Spring Boot】创建第一个demo项目
第一步 创建工程File->New->Project->Spring Initializr(旗舰版才有)->Default:https://start.spring.io->编辑Group->编辑Artifact(唯一标示)->一直Next到Finished第二步 通过maven导入依赖包项目名称右击->Maven->Reimport第三步配置application.properties#启动环境sp原创 2021-04-11 21:49:40 · 234 阅读 · 0 评论 -
【Spring Boot】 一、开发环境搭建
1.下载安装JDK,配置环境变量JAVA_HOME=C:\Program Files\Java\jdk1.8.0_1912.下载配置Maven地址:https://maven.apache.org/配置:编辑conf文件夹下的setting.xml文件(1)镜像路径<mirrors><id>alimaven</id><name>aliyun maven</name><url>http://maven.原创 2021-04-11 21:46:59 · 135 阅读 · 0 评论 -
【Spring】Ioc容器
1、BeanFactory容器在org.springframework.beans.factory.BeanFactor中定义一些和BeanFactory相关的接口,比如BeanFactoryAware、DisposableBean仍然保留在Spring中,主要目的是兼容已经存在的和Spring 整合在一起的第三方框架Spring中有大量对BeanFactory接口的实现,最常用的就是XmlBeanFactory类在资源宝贵的移动设备或者基于applet的应用中(轻量级应用中),BeanFa原创 2021-04-11 19:37:14 · 91 阅读 · 0 评论 -
@ConditionalOnBean与@ConditionalOnClass
@ConditionalOnBean与@ConditionalOnClass@ConditionalOnBean与@ConditionalOnClass上一篇讲的@Conditional可以通过条件控制是否注入Bean,这篇讲下有关Bean其它几个常用的注解使用方式@ConditionalOnBean // 当给定的在bean存在时,则实例化当前Bean@ConditionalOnMissingBean // 当给定的在bean不存在时,则实例化当前Bean@Condi转载 2021-02-05 10:31:35 · 1933 阅读 · 0 评论 -
【Spring Boot】注册不同级别包里的bean~scanBasePackages
对于springboot来说,它会把当前应用程序所在的包装载到ioc容器里,让使用者可以直接Autowired注入它们,一般的项目结果是这样的,这个项目包下有main方法,它将会把nacosdemo这个包里面所有的bean都扫描出来,然后在程序启动时,nacosdemo里的bean就会被自动注册了。目前我们做一个测试,在nacosdemo包外层再建立一个包common,在里面写个组件,然后在nacosdemo里去使用它,整个项目结构如下这时,项目启动后,是无法加载到你的bean的,因为它不会被扫描到,解转载 2021-02-03 15:36:43 · 1143 阅读 · 1 评论 -
【Spring Boot】排除自动配置的 4 种方法
方法1使用@SpringBootApplication注解的时候,使用 exclude 属性进行排除指定的类:@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, MailSenderAutoConfiguration.class})public class Application { // ...}自动配置类不在类路径下的时候,使用 excludeName 属性进行排除指定的类名全路径:..转载 2021-02-03 15:14:36 · 1805 阅读 · 0 评论 -
反编译查看docker容器中镜像内的代码
1.从harbor中拉取包docker pull 包名(harbor.***.com/项目名称/xx-api:prod-1.0.0)2.查看所有镜像docker images3.将包转换成tar文件docker -save -o xx.tar imageID4.到Xftp中将文件拷贝到本地5.下载jad.exe工具6.在c盘中新建src和classes文件夹,然后将需要反编译的.class文件拷贝到classes文件夹中7.运行命令jad.exe -r -ff -d c.原创 2021-01-06 10:14:23 · 6326 阅读 · 3 评论 -
【Spring】AOP通过注解@DeclareParents引入新的方法
一、应用背景在看此文章之前,你可能已经知道了,spring是通过Before、After、AfterRunning、AfterThrowing以及Around 共5中通知方式为目标方法增加切面功能,比如一个需要在目标类执行一个目标方法之前和之后分别打印一份日志,就可以建立一个切面在这个方法前后打印日志。但是如果我想在此目标类中再增加一个目标方法是,该怎么办呢?最简单的办法就是在建立此目标类的时候,增加此方法。但是如果原目标类非常复杂,动一发而牵全身。我们可以为需要添加的方法建立一个类,然后建一个代理类,转载 2020-07-09 14:15:38 · 257 阅读 · 0 评论 -
【Spring】AOP通知Around注解实现环绕通知
1、定义一个切面//@Component//Aspect注解声明 Audience是一个切面@Aspectpublic class Audience { //@Pointcut注解声明切点 @Pointcut("execution(* com.example.aroundaspectdemo.concert.Performance.perform(..))") public void performance() { } //@Around注解声明环绕通原创 2020-07-09 14:10:07 · 5189 阅读 · 0 评论 -
【SpringBoot】 使用Mybatis-Plus 自定义SQL
方案一 注解方式 Mapper.java@Select("select * from mysql_data ${ew.customSqlSegment}")List<MysqlData> getAll(@Param(Constants.WRAPPER) Wrapper wrapper);方案二 XML形式 Mapper.xml<select id="getAll...原创 2019-10-08 17:04:18 · 1828 阅读 · 0 评论 -
【Spring Boot】使用Mybatis-Plus自动生成代码
添加依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.2.0</version> </dependency&...原创 2019-09-30 10:59:54 · 455 阅读 · 1 评论 -
【Spring Boot】 使用Mybatis-Plus连接Mysql数据库
1、创建spring boot项目2、pom.xml中添加依赖首先添加mybatisplus,已经引用了mybatisplus,就不要引用mybatis了,否则可能会有问题<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boo...原创 2019-09-29 17:01:00 · 13693 阅读 · 4 评论 -
IDEA 使用maven创建java web项目
工具JDK 1.8.0_171IDEA ULTMATE 2017.2Maven 3.5.3Apache 7.0.861.JDK安装和配置下载地址http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html在安装过程中尽量不要更改安装目录,按默认的来配置环境变量电脑-属性-高级系统设置-环境变...原创 2018-04-19 17:42:36 · 633 阅读 · 0 评论