spring
文章平均质量分 54
csucoderlee
这个作者很懒,什么都没留下…
展开
-
springboot mock controller和log4j 单元测试实践1
本文重点将讲述如何在单元测试中,mock controller的请求,测试controller请求,同时顺带着讲解如何在单测中测试代码日志中输出的内容。首先,新建spring boot的项目![image.png](https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/950a825fe2cd4e05aa757d323551cbd7~tplv-k3u1fbpfcp-watermark.image?)![image.png](https://p3-j转载 2021-10-26 12:19:52 · 628 阅读 · 1 评论 -
spring-data-jpa报错,‘hibernate_sequence‘ doesn‘t exist
学习spring-data-jpa的时候,写了一个entityimport javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.GenerationType;import javax.persistence.Id;@Entitypublic class User { @Id @GeneratedValue(strategy = GenerationType原创 2021-05-25 23:45:55 · 2737 阅读 · 1 评论 -
org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder 找不到依赖包
org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder 找不到依赖包,发现高版本的spring boot已经移除了这个类需要改成以下这个org.springframework.boot.jdbc.DataSourceBuilder经验证spring-boot-starter-parent 2.4.5 可用...原创 2021-05-05 20:52:24 · 4955 阅读 · 0 评论 -
spring in action 学习笔记(二)通过构造器注入对象的引用
上一节中,场景了搞了一个选秀大赛,每个参赛的人都有表演的能力(实现performer接口,实现performe方法),虚拟了一个杂技师,这个杂技师可以抛豆袋子,默认是3个,我们在构造器中给这个杂技师注入了15个豆袋子的属性,即通过构造器注入基本类型的属性,这节我们学习如何通过构造器注入对象的引用。再次虚拟了一个杂技师,这个杂技师比上节中叫duke的杂技师能力更出众,会朗诵诗歌。我们先定义一原创 2017-10-06 10:09:52 · 897 阅读 · 0 评论 -
spring in action 学习笔记(八)自动装配
截止到目前为止,我们学习了如何使用元素定义bean以及使用或元素装配bean。对于少量bean的应用来说,多少还比较可读。但是,随着应用的不断发展,我们将不得不编写越来越复杂的XML配置。所以减少xml配置,无非就是减少bean元素 和 相应的property或者constructor-arg的声明数量spring提供了几种方式,可以减少XML的配置数量。自动装配(autowiri原创 2017-10-10 23:21:05 · 235 阅读 · 0 评论 -
springboot系列文章(四)-springboot使用fastjson
在spring boot中,如果在controller中加入了@ResponseBody,就会使用相应的httpmessageconverter来进行响应内容的处理,boot中默认使用jackson来响应数据的,公司项目中大多使用的是温少温高铁的fastjson,所以考虑如何来使用fastjson。在boot中如果使用默认的jackson来解析数据,返回一个VO对象,就会出现一个问题,假如我要原创 2017-09-22 10:57:55 · 316 阅读 · 0 评论 -
Circular view path
最近学习spring boot出现了这个:Circular view path [readingList]: would dispatch back to the current handler URL [/readingList] again. Check your ViewResolver setup! (Hint: This may be the result of an unspeci原创 2017-10-01 23:45:40 · 6293 阅读 · 2 评论 -
Spring 报错java.lang.NoClassDefFoundError: org/springframework/dao/support/DaoSupport
java.lang.NoClassDefFoundError: org/springframework/dao/support/DaoSupportorg.springframework.jdbc.datasource.TransactionAwareDataSourceProxy原创 2017-11-02 22:34:28 · 4409 阅读 · 0 评论 -
spring boot No Identifier specified for entity的解决办法
No Identifier specified for entity的错误 @Id @GeneratedValue(strategy= GenerationType.AUTO)原因:以上文字没写或者写错了地方,导致找不到主键。原创 2017-11-25 23:02:09 · 1266 阅读 · 0 评论 -
分布式Session的实现
一、Session复制,专业名词叫Session Replication二、Session 粘性,主页名词叫Session Sticky三、缓存集中式管理 简介:将Session存入分布式缓存集群中的某台机器上,当用户访问不同节点时先从缓存中拿Session信息 这个是主流的实现方式,最大的缺点就是实现复杂、稳定性依赖于缓存的稳定性、Session信息放入缓原创 2018-01-07 22:03:55 · 338 阅读 · 0 评论 -
springboot系列文章(二)-搭建springboot工程
打开idea,new - project, 选择图中所示nextnext,添加依赖,选择web选项汇总的web,SQL选项中的JPA,MYSQL,其他的依赖我们需要时再添加next以上几步就可以完成springboot项目的搭建了,等项目建立完成之后打开项目,项目的目录结构如下图所示去掉.mvn文件夹,去掉mvnw mvnw.cmd两个文件,目录结构中会有一个以项目名称为开头,Applicatio...原创 2017-06-25 20:30:54 · 311 阅读 · 0 评论 -
spring annotation-config跟context:component-scan的区别
最近在review老的项目代码,发现基本配置文件里都声明了两行这个<context:annotation-config/><context:component-scan/><context:annotation-config> 是用于激活那些已经在spring容器里注册过的bean的注解,是一个注解处理工具。<context:component-scan...原创 2018-05-20 22:52:02 · 144 阅读 · 0 评论 -
spring项目中使用定时任务,计算生产环境相关的数据报表
场景: 当前用户会产生大量的订单数据进来,统计当天的订单数据,按照各种维度汇总计算相应的订单报表数据。<!-- 开启定时任务 --><task:annotation-driven />在配置文件中,声明以上配置,需要spring-context的依赖@Componentclass ReportSchedule { @Scheduled(cron = "0/5 ...原创 2018-05-20 23:03:20 · 575 阅读 · 0 评论 -
@Transactional,自己抛出异常时不会回滚
今天,面试的时候,突然被问到了一个点,结果,这个自己踩的坑,自己都忘记了。前年,接手了一个项目,一直会有并发的情况,导致插入重复数据的情况。所以在项目中使用了事务 + 数据库锁,来处理并发。伪代码如下: @Transactional public <T> T lock(Staff staff, Trade trade, ILockCallback<T&...原创 2018-07-30 20:53:12 · 7857 阅读 · 0 评论 -
springboot关闭http登录验证
springboot 2.0 因为引入了下面的security配置,会导致每次在访问的时候都需要输入用户名和密码 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-sta...原创 2019-05-05 12:43:06 · 5271 阅读 · 0 评论 -
springboot启动出现Access to DialectResolutionInfo cannot be null when ‘hibernate.dialect‘ not set
今天遇见了一个奇怪的问题,springboot2.0版本启动报这个错Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set。spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=j...原创 2019-05-05 22:51:13 · 46047 阅读 · 21 评论 -
spring in action 学习笔记(一)
spring 框架是由6个定义明确的模块组成,分别是Core Spring container(核心容器)、AOP(切面)、Instrumentation、Data access & integration(数据访问和集成)、Web and remoting(web和远程调用)、Testing(测试)。可以去查看spring官网,官网提供了一个定义非常明确的图来说明这个6大模块及其包含的子模块。原创 2017-10-05 15:09:55 · 375 阅读 · 0 评论 -
spring in action 学习笔记(七)注入内部bean
上一节中,我们为演奏家注入了两个属性,其中的乐器属性,只要实现了Instrument接口,就可以为这个演奏家注入任何一种乐器。同样的,我们在上一节中声明了一个萨克斯的bean,这个bean可以被任意一个演奏家使用,只要注入到相关的演奏家类就可以了。事实上,在spring中与其他的bean共享相同的bean是非常普遍的。但是,实际上呢,上一节的演奏家kenny是个讲究卫生的人,不想和其他人共原创 2017-10-09 13:07:45 · 375 阅读 · 0 评论 -
intellij16用maven搭建spring+springmvc+mybatis框架
1. new - project - maven - 勾选 create from archetype - 从列表中选择 maven - archetype - webapp2.next - 填写groupid和artifactid,默认版本号version是1.0-Snapshot3.next ,这里记得要新增一个属性原创 2016-07-23 00:02:52 · 1584 阅读 · 0 评论 -
@Scope("prototype")相关内容
@Scope("prototype"),每次请求就会新建一个实例出来原创 2017-02-20 22:19:42 · 433 阅读 · 0 评论 -
'sqlMapClient' is required
'sqlMapClient' is required报错,解决方法@Resource private SqlMapClient sqlMapClient; @PostConstruct protected void inject() { this.setSqlMapClient(sqlMapClient); }原创 2017-03-05 21:55:03 · 573 阅读 · 0 评论 -
logback配置和使用
最近,看了下日志的相关知识。先记录下logback的配置和使用吧。1. logback的前世今生logback是由log4j的创始人又一个开源日志组件,logback主要由两部分构成,logback-core和logback-classic(当然还有其他的组成,比如logback-access,logback-jackson等等,具体的其他内容可以去maven的仓库搜索logback相关就原创 2017-03-08 13:52:49 · 462 阅读 · 0 评论 -
spring事务
事务的概念一组操作,这组操作要么全部成功,要么全部失败。事务的特性原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。一致性是指事务前后数据的完整性是一致的。隔离性是指多个用户并发访问数据库时,一个用户的事物不能被其他用户的事物所干扰,多个并发事务之间的数据要相互隔离。持久性是指一个事务一旦被提交,它对数据库中数据的改变就是永久性的,即使数据库发生原创 2017-03-23 22:19:16 · 253 阅读 · 0 评论 -
springboot项目第一次启动报错
最近,看了一下spring-boot,做了一个demo的工程,启动时居然报错,报错信息:Unregistering JMX-exposed beans on shutdown。原来是新版本的spring-boot工程在建立的时,改变了依赖的jar包:原来的依赖 org.springframework.boot spring-boot-starter-web原创 2017-04-03 22:02:20 · 3937 阅读 · 0 评论 -
springboot项目连接mysql数据库报错
报错内容:You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.原因是:高版本的mysql需要配置一下是否进行ssl链接spring.dat原创 2017-04-04 16:17:39 · 6835 阅读 · 1 评论 -
springboot系列文章(一)-初识springboot
官网介绍Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". We take an opinionated view of the Spring platform and third-party libraries原创 2017-05-02 09:08:23 · 537 阅读 · 0 评论 -
springmvc系列(一)-新建springmvc项目
新建一个maven项目 pom.xml中加入依赖<dependencies> <!-- scope:provided 只在编译和测试使用, 因为tomcat容器中自带servlet, 项目启动时会与pom中的servlet起冲突 --> <dependency> <groupId>java...原创 2017-06-25 23:15:22 · 1444 阅读 · 0 评论 -
springmvc系列(二)-自定义dispatcherservlet加载的xml配置文件
上篇博客中,web.xml的配置如下 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/jav原创 2017-06-30 16:47:27 · 6319 阅读 · 0 评论 -
spring什么时候实例化bean
第一:如果你使用BeanFactory作为Spring Bean的工厂类,则所有的bean都是在第一次使用该Bean的时候实例化 第二:如果你使用ApplicationContext作为Spring Bean的工厂类,则又分为以下几种情况: (1):如果bean的scope是singleton的,并且lazy-init为false(默认是false,所以可以不用设置),则Ap转载 2016-09-22 08:26:29 · 2840 阅读 · 0 评论 -
The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from required .cl
The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from required .class files报错原因,是因为本地的java版本过高,不兼容jstl的版本,所以更换jdk就好了原创 2017-06-26 13:40:31 · 1300 阅读 · 0 评论 -
springboot系列文章(三)-创建第一个controller
在上一节中,我们第二张截图中指定了package的信息,这样项目创建完成的时候,会自动创建包名。例如,packege选项填写的是org.csu.coder.lee,项目名project填写的是bootexample。那么,生成的项目中,就会有这样的目录结构src/main/java/org.csu.coder.lee的包,同时该包下会有一个BootexampleApplication的文件,run原创 2017-09-20 13:52:16 · 1279 阅读 · 0 评论 -
spring in action 学习笔记(六)通过setter注入bean属性
上几节中,我们主要创建了两个杂技师,来参加选秀大赛,并且通过构造器来注入相关的属性,如基本类型属性beanBags豆袋子,引用类型Poem。这一节,演示spring的另一种依赖注入的方法,也是比较常用的方法。首先,我们来创建一个很有天赋的音乐演奏家/** * Created by csucoderlee on 2017 10 08 16:12. * 一个乐器演奏家 */publ原创 2017-10-08 16:17:23 · 332 阅读 · 0 评论 -
spring in action 学习笔记(九)使用注解进行装配
从spring 2.5开始,支持使用注解来自动装配bean的属性,使用注解自动装配与xml中使用autowire属性自动装配并没有太大差别。但是使用注解方式允许更细粒度的自动装配,我们可以选择性地标注某一个属性来对其应用自动装配。其实,简单点,就是配置更简单了,更一目乐然了。spring容器默认是禁用注解装配。所以基于注解进行自动装配,要先开启配置 在配置文件中,这样配置就好原创 2017-10-16 12:59:42 · 247 阅读 · 0 评论 -
在github上新建仓库,上传本地项目
项目就暂时使用上一篇文章中,搭建的那个最原始的springmvcdemo项目。1.首先,登录github,点击new repository,会出现下面的界面:填写仓库的名字,这里我的名字就是我项目的名字了,至于其他的勾选项目暂时都不要了,.gitignore、README文件之后都会有说明这些是做什么的。2.点击create repository创建仓库,会跳到下面的界面。原创 2016-07-25 08:26:38 · 11573 阅读 · 0 评论