自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

木小鱼的笔记

技术之海,顺势者昌;看问题,要看思路与问题实质

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

原创 Maven项目中Failure to transfer问题以及解决方法

问题描述在Maven项目中经常会碰到如下错误信息:![在这里插入图片描述](https://img-blog.csdnimg.cn/20190921184611791.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibGFkZS5ibG9nLmNzZG4ubmV0,siz...

2019-09-21 20:28:26 40348

原创 Spring MVC中自定义数组转化中的异常问题分析

在基于Spring MVC进行HTTP请求的解析和数据转化过程中,可以支持开发者自定义的转化器,实现复杂数据类型的自动透明转化。本文将记录在其中发生的一个错误,并描述其解决方法

2019-09-21 09:53:45 674

原创 curl命令的辅助工具jq

引言在*unix世界里,可以通过curl来获取http请求的相应结果,但是curl的响应结果大部分无法格式化实现,例如在json的响应结果,显示的效果会比较差,那该如何让显示结果更好一些呢? 本文将尝试回答这个问题。jq地址: https://stedolan.github.io/jq/功能描述: jq is a lightweight and flexible command-line ...

2019-08-09 10:29:46 2805

原创 Spring中AOP调用失效的处理方式

引言AOP在Spring以及实际项目中使用非常广泛,例如日志、数据库事务、权限校验和访问控制等等领域,其通过优雅的控制方式,优美简练地解决在项目中的开发问题。但是对于AOP实现的功能,在特定场景下仍有实效的Case,主要特征描述为: 在同一个类中,调用使用注解方式的AOP功能的方法,目标方法的注解则会失效,即无法实现预期的功能控制,例如事务、权限等。示例代码示例: @Service...

2019-07-25 14:11:24 4996

原创 Spring Boot之OneToMany、ManyToOne示例分析

Spring Boot的1对多场景在实际使用场景中存在非常的1对多场景,对于这种情况,Spring Boot中提供基于JPA+Spring Data技术方案中,可以提供@OneToMany、@ManyToOne建立单项或者双向的依赖关系,简洁优雅地处理此类问题。技术方案评估基于Spring Boot框架,结合Spring Data JPA,底层使用Hibernate、Spring Data结...

2019-05-06 13:31:24 5005 1

原创 Spring Data之JPA/Hibernate的OneToOne示例

OneToOne场景OneToOne主要使用在存在一一对应的业务场景下,例如将一个用户信息拆分为了2个部分:基本信息和扩展信息;在这种场景下,就需要进行OneToOne的映射使用。...

2019-05-06 10:56:28 3388

原创 Spring Boot之@Transactional无法生效的问题分析

引言在Spring Boot中通过在pom.xml文件中的dependency来引入data-jpa的完整依赖,实现dao层的快速实现。数据库类型: MySQL应用框架: Spring Boot 2.1.4.RELEASEJDK: 8依赖引入基于data-jpa方式的依赖引入如下: <dependency> <groupId>org.sp...

2019-04-23 15:35:40 2759

原创 Macos下MySQL重置密码过程分析

引言MySQL从5.7直接跳至8.0,其中发生了很多变化,本文聚焦于重置用户密码上的差异和问题解析过程。Macos下安装指南: Macos下安装MySQL简明教程Centos下安装指南:MySQL在CentOS上的安装与启动Centos下重置root密码: MySQL 5.7下重置密码问题环境: Macos重置root密码在安装完成MySQL之后,默认root密码为null,则希望重...

2019-04-23 10:13:24 1530

原创 Spring Boot注解补遗小结

引言常用注解@ContextConfiguration(classes=AppConfig.class) 引入applicationContext, AppConfig.class为@Configuration修饰的类用来在单元测试中引入@ApplicationContext,以及在AppConfig.java中扫描引入的类实例。@Profile(“name”)@ActivieProf...

2019-04-02 18:41:54 376

原创 BDDMockitto常用方法小结

BDDMockit一般都是通过以下几个步骤来实现单元测试:基于假定条件来设置,比如given()设置某些方法的值触发某些操作,比如调用方法进行结果或者调用过程的验证, then /assert操作基于上述的思路,下面通过一个示例来展示其用法。示例代码示例:@Test public void testBDD() { String name = "jack"...

2019-04-01 21:41:26 959

原创 MockMvc常用指令小结

MockMvc主要用来进行Web Controller的单元测试。常用方法andExpect()responseBody()contentTypeparamandReturncontentstatus()isBadRequest()/isOk()

2019-04-01 14:11:59 4731 1

原创 Spring Boot单元测试之分层测试与整体测试

单元测试Case单元测试1:@RunWith(SpringRunner.class)@WebMvcTest(HelloController.class)public class HelloControllerApplicationTest { @Autowired private MockMvc mvc; @Test public void get...

2019-03-28 21:43:21 2133

原创 Mockito verify验证Action的使用小结

单元测试中的Action在单元测试中,某些特定的情况下,是有需要验证某些动作是否被执行的情况,则此时可以考虑使用verify()来验证某个动作是否被执行。verify()来自mockit类库,用来验证特定的action是否被调用。使用示例:public class VerifyActionTest { @Test public void testVerify() { ...

2019-03-28 21:11:38 5138

原创 Java单元测试常用工具类小结

单元测试单元测试是系统中非常基础的功能,以功能的最小粒度进行功能测试,保证系统功能的正确行。Assert所属类库: JUnit library类名: Assert功能描述: 用以判断结果是否符合预期常用方法:assertTrue(String message, boolean condition)assertThat(String reason, T actual, Matche...

2019-03-28 19:26:55 4421

原创 Spring Boot之DAO层的单元测试小结

DAO层dao是data access object的简写,基于Java对象访问数据库中的数据,这是应用中必备的系统模块。测试注解DataJpaTest主要用以测试DAO的业务功能DAO层的实体定义实体Bean定义如下:@Entity@Datapublic class GameEntity { @Id @GeneratedValue(strategy=Gene...

2019-03-28 09:32:48 6456

原创 Spring Boot单元测试之服务层测试总结

引言书接上回,上回介绍了基于Controller层的测试用例,本节将介绍基于服务层的测试用例用法。基于Controller层文章,请参阅: Spring Boot之单元测试用例基于Service服务层的单元测试服务层主要定义各类的业务逻辑,调用DAO层的各类数据服务,完成相应的业务操作。定义服务的示例:@Service@Slf4jpublic class GameService {...

2019-03-27 18:45:30 3303 1

原创 Spring Boot之单元测试用例总结

关于单元测试单元测试其核心诉求是将一个复杂的程序进行拆解,分解为若干个独立的可控子模块来实现测试的可控性。在本节将对Spring Boot中可用的单元测试注解以及用法做一个小结。通用注解@RunWith(SpringRunner.class/SpringJUnit4ClassRunner.class)使用在测试用例类之上,用来表示当前测试用例需要使用Spring Bean容器进行运行。...

2019-03-27 16:45:53 4003

原创 Spring Boot 之groups应对不同的Validation规则自定义

groups如果同一个规则,在不同场景下,或许执行不同的验证逻辑,在这种情况下,该如何来处理呢?本节将基于groups字段来实现灵活的验证。这个groups是各类Validation注解中的一个属性信息,其定义如下:@Target({ElementType.FIELD})@Retention(RUNTIME)@Documented@Constraint(validatedBy = IP...

2019-03-26 13:13:13 17716 5

原创 Spring Boot之Validation自定义实现总结

Spring Boot Validation定制虽然在Spring Boot中已经提供了非常多的预置注解,用以解决在日常开发工作中的各类内容,但是在特定情况仍然存在某些场景,无法满足需求,需要自行定义相关的validator。本节将针对自定义的validator进行介绍。自定义的注解这里的场景设置为进行IP地址的验证,通过注解的方式,让用户使用验证规则。注解定义如下:@Target({El...

2019-03-26 12:38:48 13438 1

原创 Spring Boot之验证模块应用总结2

DAO的验证模块对于Entity实体来说,同样可以基于validation注解来定义相关的验证逻辑。本节将通过相关示例来介绍如何使用这些注解简化日常的开发工作。Entity定义在Maven文件中引入:<dependency> <groupId>org.springframework.boot</groupId> <ar...

2019-03-26 11:05:51 900 1

原创 Spring Boot之输入Bean验证@Valid应用场景总结

Validation应用场景在日常应用中,存在大量需要针对输入数据进行验证的应用场景,例如字符串的大小,ip地址验证,email格式验证等等各类情况。值得开心的是Spring Boot将这类场景进行了集成抽象,提供一个完整而且灵活的机制简化开发者在进行相关操作时的重复工作量。Maven引用在pom文件中添加如下信息: <dependency> ...

2019-03-25 22:07:33 5495

原创 Spring AOP总结

TerminologyJoint Point: public method in Spring Managed BeanPoint cut: The actual joint point that that we have delcaredAdvice: The fucntionality we want to applyAspect: combine point cut and...

2019-03-25 13:50:40 425

原创 Spring Boot下Profile的四种切换方式思路总结

Profile多环境下Profile在实际项目发布流程中,往往会涉及到多个环境下各类配置的切换。在Spring Boot中提供了多种机制允许开发者进行自行的定制和设置。profile是用来描述某个环境下的配置信息的总称,包括:数据库连接,配置信息,名称等等个性化的信息。基于Maven pom文件的配置profile设置在以Maven管理的项目其核心流程与设置定在pom.xml文件中,包括...

2019-03-19 22:48:35 4362

原创 Jackson JSON包在从对象映射到Json字符串过程的循环依赖问题-分析与解决

提出问题在基于Jackson类库将对象转化为json字符串时,如果对象中存在互相依赖,则会产生无限循环的情况,具体情况如下:BuyerEntity.java@Table(name="t_buyer")@Entity@ToString(callSuper=true)@Data@EqualsAndHashCode(callSuper=false)public class BuyerEn...

2019-03-19 10:04:37 2372

原创 Spring之Property文件读取

配置文件的读取 在Spring应用中,会存在大量的配置文件设置,这些设置需要通过一个简便的方式被读取到系统中,被系统读取使用。配置信息定义假定把配置信息放入config.properties文件里面,其内容以键值对的方式出现,内容如下: key1=val1 name=zhangsan password=1234在Spring应用中,将如何读取配置信息呢?@Pr...

2019-03-13 14:55:41 744

原创 Spring之Config小结

Spring配置信息所有的Spring Bean信息都是定义在Config文件或者Configuration的配置类中的。例如:@Configurationpublic class AppConfig { @Bean public MyBean myBean() { return new MyBean(); }}引入配置在C...

2019-03-13 14:36:58 4085

原创 JPA EntityManager使用说明

EntityManager实体管理器。Entity状态New, 托管Managed, Detached游离, 删除Delete事务管理entityManager.getTransaction().begin();//operation in entityentityManager.getTransaction().commit();使用说明entityManager.clear...

2019-03-13 08:47:47 1837

原创 JPA常用注解汇总纪要

文章目录注解Column详解日期类型定义枚举类型存储空间大的数据类型排除持久化字段声明注解Column详解Column的主要属性信息:name 自定义数据库的字段名称nullable 是否为空length: 如果是字符型,可以限定长度unqiue 是否为唯一性precision/scale 对于小数的精度控制insertable/updatable 可插...

2019-03-07 08:31:58 1259

原创 Spring MVC之redirect、forward和普通跳转

文章目录Spring MVC之Controller的view跳转redirectforward总结Spring MVC之Controller的view跳转在Spring MVC中,通过返回一个view url地址的方式,将特定位置的html渲染之后推送到请求的client端。例如: @Controller public class A{ @RequestMapp...

2019-02-26 14:53:11 5397

原创 Maven中dependency和plugins的继承与约束

文章目录Maven的父子项目父项目配置子项目定义dependenciesdependencyManagementpluginManagement总结Maven的父子项目父子项目核心点是在于通过将一个大项目拆分为若干子模块,每个模块以子项目的形式存在,不同的子项目共享父项目的设置与约束。所以,父项目承担的角色是建立各个子项目的约束和一致的基础。父项目配置&lt;project xmlns="...

2019-02-26 13:48:42 8042

原创 @PostContruct in Spring的依赖类

PostContruct/PreDestory功能描述@PostConstruct用以标注方法,表示方法将在对象构建成功之后,被调用。@PreDestory 用以标注方法, 表示方法将在对象被销毁之前,被调用。应用场景@PostContruct: 主要用来在初始化操作,例如加载配置文件,初始化连接等@PreDestory: 主要用来在释放资源,比如,释放资源,释放链接,清空内存使用等...

2019-02-12 14:51:18 1763 1

原创 Macos下zsh下找不到mvn命令

问题提出Mac OS先安装了oh-my-zsh和iterm2,设置系统的默认语言为zsh。再安装Maven的时候,发现添加profile文件,关闭iterm后,mvn的环境变量一直没有生效。尝试方法在.zshrc中配置,但是不生效export M2_HOME=/Users/xxxx/DevApp/apache-maven-3.3.3export PATH=$M2/bin:$PATH...

2019-02-01 20:03:17 3866 4

原创 Macos在zsh下基于pyenv安装python版本中的问题汇总

问题提出环境: macos zsh,默认使用python2.7尝试基于pyenv来管理多版本pythonpyenv安装brew install pyenv安装成功安装特定pythonpyenv install 3.7.0这里以3.7.0为例子来演示。问题1问题详情:Installing Python-3.7.0...python-build: use readl...

2019-01-28 09:03:55 3146

原创 Macos下安装MySQL简明教程

环境介绍Macos Jave 10.14. MySQL 5.7基于Brew安装brew install mysql@5.7运行结果如下:Updating Homebrew...==&amp;gt; Downloading https://homebrew.bintray.com/bottles/mysql@5.7-5.7.24.mojave.bottle.tar.gz#########...

2018-10-29 11:26:33 1799

原创 Macos下的xcrun error:invalid active developer path

问题的提出在macos下想使用brew安装某个文件,结果得到了如下错误信息:执行命令: brew install mpvxcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/...

2018-10-28 16:25:51 816

原创 NLP多轮对话研究

NLP学习今天都在学习NLP的内容,现将今天学习和阅读过的一些不错的文章整理如下,以备后续参考阅读。NLP Baidu多轮对话实现 https://ai.baidu.com/forum/topic/show/870054NLP资料语法与句子的结构,基于多轮对话俩进行分析合并,填充句子结构,并基于句子结构来分析其语义和意图参考资料NLP杂谈(一):chatbot与多轮...

2018-09-10 20:41:15 15023 1

原创 Web Crawler与Scrap技术分析

Scrapy与无头浏览器Scrapy Middleware Casezhihu demojs seleniumScrapy Middleare Case2Scrapy Middleware Case3Multi Queue in ScrapyAdvanced Scrapying TipsWeb Scrapying tips自动识别验证码 ...

2018-09-06 18:15:43 1085

原创 反爬虫策略调研与分析

爬虫时代在互联网上,各类的信息数据相当大一部分是发布在Web页面上的,于是一大批以此为生的网站便诞生了。 baidu和google便成为其中的佼佼者,它们是这个星球上最大牌的爬虫,最多的爬虫,为这个世界的Web页面建立索引,方便大家查找信息。在爬虫基础之上,才有了大家每天都离不开的搜索引擎服务。 爬虫可以爬取任何可以访问的Web页面,开发一个爬虫其实非常的简单和容易。但是并不是所有的页...

2018-09-05 19:06:47 897

原创 Python的协程

Python的并发Python中由于存在GIL的问题,所以其在多线程上无法充分发挥多核的优势和威力,一般都会推荐使用多进程的方式来发挥多核的效率。 除了多进程的方式之外,还可以使用coroutine协程的方式来提升并发的处理效率。进程、线程和协程参考文章: https://www.cnblogs.com/zhaof/p/7536569.html这篇文章关于进程、线程和协程之间...

2018-08-30 15:48:16 338

原创 JUnit 4使用小结

JUnitJUnit是Java开发中必备的单元测试工具,目前手里使用的JUnit 4.Hamcresthamcrest使用的断言功能,maven依赖定义如下: &lt;dependency&gt; &lt;groupId&gt;org.hamcrest&lt;/groupId&gt; &lt;artifactId&gt;hamc...

2018-08-30 15:13:39 444

空空如也

空空如也

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

TA关注的人

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