我已经为maven配置中指定的liquibase配置了maven插件.
现在创建了一个变更集,如: -
<changeSet id="changeRollback" author="nvoxland">
<createTable tableName="changeRollback1">
<column name="id" type="int"/>
</createTable>
<rollback>
<dropTable tableName="changeRollback1"/>
</rollback>
</changeSet>
Run Code Online (Sandbox Code Playgroud)
使用命令行创建了用于更新DB的sql: - mvn liquibase:updateSQL
但只是想知道如何使用"rollbackTag"参数回滚.即如果运行命令" mvn liquibase:rollbackSQL ",则应该是"rollbackTag"参数的值.
是否可以使用变更集ID进行回滚?
OracleTypes.ARRAY多次调用带有输入参数的Oracle存储过程时,会出现以下错误: -
org.springframework.jdbc.UncategorizedSQLException: CallableStatementCallback; uncategorized SQLException for SQL [{call EMP_SCHEMA.GET_EMPLOYEE_LIST(?, ?)}]; SQL state [72000]; error code [1000]; ORA-01000: maximum open cursors exceeded; nested exception is java.sql.SQLException: ORA-01000: maximum open cursors exceeded
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:84) ~[spring-jdbc-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81) ~[spring-jdbc-4.1.6.RELEASE.jar:4.1.6.RELEASE]
Run Code Online (Sandbox Code Playgroud)
JDBC模板配置是: -
<bean id="commonsDbcpNativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.CommonsDbcpNativeJdbcExtractor" />
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg>
<ref bean="dataSource" />
</constructor-arg>
<property name="nativeJdbcExtractor" ref="commonsDbcpNativeJdbcExtractor" />
</bean>
Run Code Online (Sandbox Code Playgroud)
存储过程类: -
public class GetEmployees extends StoredProcedure {
public GetEmployees(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate, "EMP_SCHEMA.GET_EMPLOYEE_LIST");
declareParameter(new SqlParameter("p_emp_id_list", OracleTypes.ARRAY, "TBL_EMP_ID"));
declareParameter(new SqlOutParameter(CURSOR, OracleTypes.CURSOR, new EmployeeDataRowMapper())); …Run Code Online (Sandbox Code Playgroud) 我正在尝试将2.2.6.RELEASE在 GCP 计算引擎中运行的spring boot( ) 应用程序的指标发布到 stackdriver。我添加了micrometer-registry-stackdriver:1.3.6and的依赖spring-boot-actuator。Stackdriver 指标客户端配置按照micrometer 链接中的说明完成。在 VM 中,我安装了此处提到的云监控代理。
运行应用程序时,我收到错误 io.grpc.StatusRuntimeException: INTERNAL: An internal error occurred.
如果我缺少任何其他配置,有人可以通知我吗?
2020-04-29 10:19:16.248 INFO 14905 --- [ main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 3608
ms
2020-04-29 10:19:18.085 INFO 14905 --- [ main] i.m.s.StackdriverMeterRegistry : publishing metrics to stackdriver every 1m
2020-04-29 10:19:20.058 INFO 14905 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'
2020-04-29 10:19:20.735 INFO 14905 --- [ main] o.s.b.a.e.web.EndpointLinksResolver …Run Code Online (Sandbox Code Playgroud) spring-boot-actuator stackdriver google-cloud-stackdriver micrometer spring-micrometer
在eclipse中,可以使用maven插件从集中式存储库中搜索依赖项工件,并将其添加到pom.xml文件中.但是在IntelliJ IDEA中,依赖搜索仅在本地存储库中工作.如果搜索到的工件不在本地存储库中,则结果为空.
有没有办法从中央存储库中搜索工件并将其添加到IntelliJ中的pom.xml?
我正在为带有 spting boot 的控制器编写一个单元@WebMvcTest。
使用@WebMvcTest,我将能够注入一个MockMvc对象,如下所示:-
@RunWith(SpringRunner.class)
@ContextConfiguration(classes = {TestConfig.class})
@WebMvcTest
class MyControllerTest {
@Autowired
private MockMvc mockMvc;
@Test
public void my_controller_test() throws Exception {
mockMvc.perform(post("/create-user"))
.andExpect(status().isCreated());
}
}
Run Code Online (Sandbox Code Playgroud)
在控制器中,我Principal使用 spring 注入一个参数HandlerMethodArgumentResolver。请告诉我如何使用 编写单元测试MockMvc,以便我可以注入模拟Principal对象作为控制器方法中的参数。
自动配置的 Spring MVC 测试部分解释了带有注释的测试@WebMvcTest将扫描HandlerMethodArgumentResolver. 所以我创建了一个 bean,它扩展HandlerMethodArgumentResolver并返回模拟Principal对象,如下所示。
@Component
public class MockPrincipalArgumentResolver implements HandlerMethodArgumentResolver {
@Override
public boolean supportsParameter(MethodParameter parameter) {
return parameter.getParameterType().equals(Principal.class);
}
@Override
public Object …Run Code Online (Sandbox Code Playgroud) 我正在使用弹簧靴 2.3.2。在执行器的帮助下,将应用程序指标发布到指标控制台。我想知道执行器抛光的指标system.cpu.usage和process.cpu.usage指标之间有什么区别。
spring-boot spring-boot-actuator micrometer spring-micrometer spring-boot-2
我有一个可观察的东西,它发出大量的数据,例如
[1,1,1,2,2,2,3,3,1,1,5,5 ......]
在RxJava中,我们可以使用distinctUntilChanged()来获取一个独特的项目,直到它发生变化为止,并且它会
[1,2,3,1,5,......]
同样,有一种方法可以缓冲项目直到更改?例如,我希望输出像
[[1,1,1],[2,2,2],[3,3],[1,1],[5,5] ......]
micrometer ×2
spring-boot ×2
database ×1
ide ×1
java ×1
junit ×1
liquibase ×1
maven ×1
maven-plugin ×1
oracle ×1
pom.xml ×1
rx-java ×1
rx-java2 ×1
spring-jdbc ×1
stackdriver ×1