Tag: spring boot

Gradle子项目排序并生成jar(spring boot + angular)

我是一个Gradle newby。 我有以下项目设置: 根 核心:包含spring boot 2应用程序 ui:角度5前端应用程序 目标:我想从我的根文件夹运行“gradle build”,它应该包含一个包含Angular应用程序的jar文件。 我得到了覆盖的“用户界面”: apply plugin: “com.moowork.node” buildscript { repositories globalRepositories dependencies { classpath “com.moowork.gradle:gradle-node-plugin:1.2.0” } } node { // based on current version of Angular 5 version = “8.9.1” npmVersion = “5.6.0” download = true } task buildAngular(type: NpmTask) { args = [‘run’, ‘build’] } buildAngular.dependsOn(npm_install) build.dependsOn(buildAngular) […]

异步春季启动使用Kotlin无法正常工作

我正在尝试创建一个异步执行操作的Spring服务,并返回一个ListenableFuture 。 我希望在操作失败时触发失败回调 – 我尝试这样做是使用AsyncResult.forExecutionException ,如下所示: @Service open class UserClientService { @Async fun fetchUser(email: String): ListenableFuture { val uri = buildUri(email) val headers = buildHeaders() try { val result = restTemplate.exchange(uri, HttpMethod.GET, HttpEntity(headers), User::class.java) return AsyncResult.forValue(result.body) } catch (e: RestClientException) { return AsyncResult.forExecutionException(e) } } } 入门点: @SpringBootApplication @EnableAsync open class UserProxyApplication fun main(args: Array) […]

在JYSTER项目中将实体属性骆驼案例转换为json中的蛇情况

我正在使用jijster生成的项目。 这是一个微服务架构项目。 在我的实体类中,属性是用骆驼命名的。 所以当我创建一个rest服务时,它给了我json,其中json属性名称与实体属性相同。 实体类 @Entity @Table(name = “ebook”) @Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) @Document(indexName = “ebook”) public class Ebook implements Serializable { private Long id; private String nameBangla; private String nameEnglish; Json回应 { “id”: 0, “nameBangla”: “string”, “nameEnglish”: “string” } 我想要我的实体属性骆驼的情况下,但在JSON响应它会蛇的情况下。 这是我不想改变我的实体类,但我想改变我的JSON响应像波纹管 { “id”: 0, “name_bangla”: “string”, “name_english”: “string” }

Spring JPA查询总是使用序列扫描而不是索引扫描

我有一个简单的查询 @Query(value = “select * from some_table where consumer_id=:consumerId and store_id=:storeId and cancelled_at is null”, nativeQuery = true) fun checkIfNewConsumer(consumerId: BigInteger, storeId: BigInteger): List 当我运行查询时,直接对超过3000万行的表进行解释 Index Scan using select_index on some_table (cost=0.56..8.59 rows=1 width=86) (actual time=0.015..0.015 rows=0 loops=1) Index Cond: ((consumer_id = 1234) AND (store_id = 4) AND (cancelled_at IS NULL)) Planning time: 0.130 ms […]

如何添加kotlin类到gradle JavaCompile任务

我用spring引导来使用kotlin和java来开发我的项目。 我的构建工具是gradle,一个任务定义如下: configurations { providedRuntime jpametamodel } dependencies { jpametamodel (‘org.hibernate:hibernate-jpamodelgen:4.3.11.Final’) } task generateMetaModel(type: JavaCompile, group: ‘build’, description: ‘metamodel generate’) { source = sourceSets.main.java classpath = configurations.compile + configurations.jpametamodel options.compilerArgs = [“-proc:only”] destinationDir = sourceSets.generated.java.srcDirs.iterator().next() doFirst { delete(sourceSets.generated.java.srcDirs) } } 这个任务适用于kotlin类,但是如果我添加kotlin类,任务不能通过抛出以下错误: Hibernate JPA 2 Static-Metamodel Generator 4.3.11.Final /…/src/main/java/com/app/web/rest/UserResource.java:18: Cannot find ….. import com.app.web.rest.dto.SimpleUser; ^ Symbol: […]

Spring数据Neo4j受影响的行数

考虑一个Spring Boot,neo4j环境与Spring-Data-neo4j-4我想做一个删除,并得到一个错误信息,当它删除失败。 我的问题是因为Repository.delete()返回void我没有ideia如果删除修改任何东西或不。 第一个问题:有没有办法得到最后一个查询受影响的行? 例如在plsql中,我可以执行SQL%ROWCOUNT 所以无论如何,我尝试了下面的代码: public void deletesomething(Long somethingId) { somethingRepository.delete(getExistingsomething(somethingId).getId()); } private something getExistingsomething(Long somethingId, int depth) { return Optional.ofNullable(somethingRepository.findOne(somethingId, depth)) .orElseThrow(() -> new somethingNotFoundException(somethingId)); } 在上面的代码中,我查询数据库来检查值是否存在,然后删除它。 第二个问题:你推荐什么不同的方法? 所以现在,只是为了增加一些复杂性,我有一个集群数据库,db1只能创建,更新和删除,而db2和db3只能读取(这是由集群套接字保证的)。 db2和db3将从复制过程中接收来自db1的数据。 对于我目前看到的复制可能需要长达90秒,这意味着高达90年代的数据库将有不同的状态。 再看看上面的代码: public void deletesomething(Long somethingId) { somethingRepository.delete(getExistingsomething(somethingId).getId()); } 在调试中意味着: getExistingsomething(somethingId).getId() // will hit db2 somethingRepository.delete(…) // will hit db1 所以如果复制没有在db2中插入这个值,这个代码将会抛出异常。 第二个问题是:不改变这些套接字是否有任何方法可以删除并给出正确的响应?

无法获得从Java引导使用memcached的好例子

我正在使用java启动我的发展。 现在我已经使用'EhCache'进行缓存,它直接从Java引导支持。 这是“进程中”缓存,即成为您的进程的一部分。 现在好了。 但是我的服务器将在不久的将来在多个节点上运行。 因此,想要切换到“Memcached”作为常见的缓存层。 花了很多时间后,我无法从java启动中使用Memcached。 我已经看到了“ Simple Spring Memcached ”,它接近我的要求。 但是仍然以Spring的方式给出了使用XML配置的例子。 Java引导尽可能不使用这种XML配置。 至少我不能将这个例子快速映射到java引导世界。 我想从Java引导中使用Memcahed(直接或通过缓存抽象层)。 如果有人指出我有一个相关的java启动例子,它会为我节省很多时间。

春季开机缓存不支持kotlin?

我试图用kotlin替换一些java代码。 如jpa或缓存。 Start类是: @EnableAsync @EnableCaching @EnableSwagger2 @SpringBootApplication open class Application fun main(args: Array<String>) { SpringApplication.run(Application::class.java) } 简单的控制器: @RestController class CacheController { @Autowired private lateinit var cache: CacheService @PutMapping("{id}") fun save(@PathVariable id: Long) { cache.save(id) } } CacheService: @Component @CacheConfig(cacheNames = arrayOf("longCacheManager"), cacheManager = "longCacheManager") open class CacheService { @Cacheable(key = "#id") fun save(id: Long): Long […]

春天懒加载嵌套事务内部不工作

我用kotlin。 这是我的实体类: @Entity class Category( @Id @GeneratedValue(strategy = IDENTITY) val id: Int = 0, @NotBlank @Column(unique = true) var name: String, @OneToMany(mappedBy = "category") val subcategories: MutableSet<Subcategory> = mutableSetOf() ) @Entity class Subcategory( @Id @GeneratedValue(strategy = IDENTITY) val id: Int = 0, @NotBlank var name: String, @ManyToOne val category: Category ) 服务方式: @Transactional fun addSubcategory(model: […]

Spring Boot Application:许多路径的文件系统监视器

我正在Kotlin开发Spring Boot应用程序。 其中一个要求是从数据库加载一个路径列表,并监视这些文件的变化。 这些路径可能是单个文件,文件夹或两者。 真正的问题将是数量,因为这可能需要在不同的地点观看相当多的路径(1000年?)。 这些文件将是本地路径(虽然我想可以映射/挂载一个网络文件系统,但不支持),所以这可能有所帮助。 我一直在寻找Spring Boot中的FileSystemWatcher以及Java中的WatchService,但是他们似乎更关注于观看单个目录(使用可选的过滤器)。 有没有更好的解决方案,可以轻松地添加许多路径到单个手表事件处理程序和许多手表的性能? 如果没有,这将是我最好的选择? 我也想把这个作为一个微服务来解决,所以Spring Boot并不是必需的,只是一个简单的选择。 大部分的要求只是它是用Kotlin编写的(尽管如果它能减少工作,我可以用其他一些JVM语言逃脱)。 谢谢!