在春季的官方文档中,其内容如下:
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter();
vendorAdapter.setGenerateDdl(true);
LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean();
factory.setJpaVendorAdapter(vendorAdapter);
factory.setPackagesToScan("com.acme.domain");
factory.setDataSource(dataSource());
return factory;
}
@Bean
public PlatformTransactionManager transactionManager() {
JpaTransactionManager txManager = new JpaTransactionManager();
txManager.setEntityManagerFactory(entityManagerFactory());
return txManager;
}
Run Code Online (Sandbox Code Playgroud)
和
重要的是创建LocalContainerEntityManagerFactoryBean而不是直接创建EntityManagerFactory,因为前者除了简单地创建EntityManagerFactory之外,还参与异常转换机制。
但是当我尝试使用它时,我得到了错误:
setEntityManagerFactory
(javax.persistence.EntityManagerFactory)
in JpaTransactionManager cannot be applied
to
(org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean)
Run Code Online (Sandbox Code Playgroud)
这是我的进口:
import org.apache.tomcat.jdbc.pool.DataSourceFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.DependsOn;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.orm.jpa.JpaTransactionManager;
import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import javax.sql.DataSource;
Run Code Online (Sandbox Code Playgroud) 我有模型
class someDto{
private Long id;
private String hz;
}
Run Code Online (Sandbox Code Playgroud)
在页面中我需要显示
<td><p id="${someDto.id}"></p></p></td>
Run Code Online (Sandbox Code Playgroud)
我明白12 333
但我需要12333
如何在 Freemarker 中转换Long为String?
我有file.zipDB喜欢的BLOB.我想在Spring控制器中创建方法,以便在客户端下载此文件.
@RequestMapping(value = "/downloadResolution/{resolutionId}", method = RequestMethod.GET)
public void downloadResolution(@PathVariable("resolutionId") Long resolutionId, HttpServletResponse response) {
Resolution resolution = resolutionService.findOne(resolutionId);
ResolutionArchive resolutionArchive = resolution.getResolutionArchive();
if (resolutionArchive == null) return;
byte[] archive = resolutionArchive.getArchive();
//this byte[] archive - my zip file from db
}
Run Code Online (Sandbox Code Playgroud)
如何更改此methot以便在客户端下载?
用户按下载按钮.Methos从byte []中获取数据,用户可以下载它.
编辑
我尝试了@pleft的解决方案,它的工作原理.我知道 - 我使用ajax进行呼叫方法
function downloadResolution(resulutionId) {
$.ajax({
type: 'GET',
dataType: "json",
url: '/downloadResolution/' + resulutionId,
success: function (data) {
},
error: function (xhr, str) {
}
});
}
Run Code Online (Sandbox Code Playgroud)
如果我使用ajax,怎么意识到这一点?
我可以用compareTo()方法比较2个BigDecimal对象
BigDecimal val = new BigDecimal(10);
val.compareTo(new BigDecimal(11)) //return -1
val < 11 - -1
val = 11 - 0
val > 11 - 1
Run Code Online (Sandbox Code Playgroud)
但我如何比较val> =和<= ???
if(val.compareTo(new BigDecimal(11) ==-1) || val.compareTo(new BigDecimal(11) ==0)) // val <= 11
Run Code Online (Sandbox Code Playgroud)
但不知怎的,它是歪曲的
我有 DTO 和 DOMAIN 模型:
@Data
public class CarDomain {
private String name;
private int year;
private String color;
}
Run Code Online (Sandbox Code Playgroud)
和
@Data
public class CarDto {
private String name;
private int year;
private String color;
}
Run Code Online (Sandbox Code Playgroud)
我有 3 个微服务(MS)通过 RabbitMq 相互通信。我有models module所有 DTO 课程。每个 MS 都包含models module
在 maven 中。
1 MS 发送 carDto 2 MS 接收 CarDto 并转换为域。为此,我可以使用多种变体:
mapstruct:Run Code Online (Sandbox Code Playgroud)@Mapper public interface CarMapper { CarMapper INSTANCE = Mappers.getMapper(CarMapper.class ); CarDto carToCarDto(CarDomain car); }
并使用: …
java ×5
arrays ×1
bigdecimal ×1
dto ×1
file ×1
freemarker ×1
hibernate ×1
spring ×1
spring-boot ×1
spring-mvc ×1