小编bur*_*ete的帖子

为什么BigDecimal("5.50")不等于BigDecimal("5.5")以及如何解决这个问题?

实际上,我找到了可能的解决方案

//returns true
new BigDecimal("5.50").doubleValue() == new BigDecimal("5.5").doubleValue()
Run Code Online (Sandbox Code Playgroud)

当然,它可以通过类似的Math.abs (v1 - v2) < EPS方式进行改进,使比较更加健壮,但问题是这种技术是否可以接受或是否有更好的解决方案?

如果有人知道为什么java设计师决定以这种方式实现BigDecimal的平等,那么阅读它会很有趣.

java equals bigdecimal

49
推荐指数
3
解决办法
3万
查看次数

VerifyCsrfToken.php第67行中的TokenMismatchException

我知道这是Laravel中形式之类的已知错误.但是我在Laravel 5.2中遇到了基本身份验证的问题.

我用Laravel创建了auth;

php artisan make:auth
Run Code Online (Sandbox Code Playgroud)

现在我在我的服务器和本地代码上都有相同的代码副本.在我当地,我没有任何问题.但是在我的服务器上,当我尝试注册用户时,我得到错误说TokenMismatchException in VerifyCsrfToken.php Line 67

我的本地和服务器环境都是同步的,但我在注册时一直收到错误.有关如何解决此问题的任何帮助?

错误的屏幕截图

laravel-5.2

48
推荐指数
10
解决办法
12万
查看次数

SQLStatement.execute() - 一个语句中的多个查询

我在SQL中编写了一个数据库生成脚本,并希望在我的Adobe AIR应用程序中执行它:

Create Table tRole (
    roleID integer Primary Key
    ,roleName varchar(40)
);
Create Table tFile (
    fileID integer Primary Key
    ,fileName varchar(50)
    ,fileDescription varchar(500)
    ,thumbnailID integer
    ,fileFormatID integer
    ,categoryID integer
    ,isFavorite boolean
    ,dateAdded date
    ,globalAccessCount integer
    ,lastAccessTime date
    ,downloadComplete boolean
    ,isNew boolean
    ,isSpotlight boolean
    ,duration varchar(30)
);
Create Table tCategory (
    categoryID integer Primary Key
    ,categoryName varchar(50)
    ,parent_categoryID integer
);
...
Run Code Online (Sandbox Code Playgroud)

我使用以下方法在Adobe AIR中执行此操作:

public static function RunSqlFromFile(fileName:String):void {
    var file:File = File.applicationDirectory.resolvePath(fileName);
    var stream:FileStream = …
Run Code Online (Sandbox Code Playgroud)

apache-flex air actionscript-3

46
推荐指数
2
解决办法
5473
查看次数

验证Spring中的对象列表

我有以下控制器方法:

@RequestMapping(value="/map/update", method=RequestMethod.POST, produces = "application/json; charset=utf-8")
@ResponseBody
public ResponseEntityWrapper updateMapTheme(
        HttpServletRequest request, 
        @RequestBody @Valid List<CompanyTag> categories,
        HttpServletResponse response
        ) throws ResourceNotFoundException, AuthorizationException {
...
}
Run Code Online (Sandbox Code Playgroud)

CompanyTag以这种方式定义:

public class CompanyTag {
    @StringUUIDValidation String key;
    String value;
    String color;
    String icon;
    Icon iconObj;

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }
   ...
}
Run Code Online (Sandbox Code Playgroud)

问题是未触发验证,未验证CompanyTag列表,从不调用"StringUUIDValidation"验证器.

如果我删除了List并且只尝试发送一个CompanyTag,即代替:

@RequestBody @Valid List<CompanyTag> categories,
Run Code Online (Sandbox Code Playgroud)

使用:

@RequestBody @Valid CompanyTag category,
Run Code Online (Sandbox Code Playgroud)

它按预期工作,所以显然Spring不喜欢验证事物列表(尝试使用数组,但也没有用).

任何人都知道缺少什么?

java validation spring list

42
推荐指数
10
解决办法
4万
查看次数

如何在spring mvc Controller中获取getServletContext()

我需要在项目中上传图片.如何在SpringMVC中获取上传路径.路径是;

/home/cme/project/eclipse/workspace_12_11/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/fileUploadTester/upload
Run Code Online (Sandbox Code Playgroud)

以下错误;

The method getServletContext() is undefined for the type HomePageController
Run Code Online (Sandbox Code Playgroud)

我使用此代码时出现;

String uploadPath = getServletContext().getRealPath("") + File.separator + UPLOAD_DIRECTORY;
Run Code Online (Sandbox Code Playgroud)

我的代码是

public ModelAndView UploadPhoto(@ModelAttribute User user, HttpServletRequest request, HttpServletResponse response) throws IOException {
 final String UPLOAD_DIRECTORY = "upload";
 final int THRESHOLD_SIZE = 1024 * 1024 * 3; // 3MB
 final int MAX_FILE_SIZE = 1024 * 1024 * 40; // 40MB
 final int MAX_REQUEST_SIZE = 1024 * 1024 * 50; // 50MB

 String value[] = new String[10];
 int i = …
Run Code Online (Sandbox Code Playgroud)

java eclipse file-upload spring-mvc

40
推荐指数
3
解决办法
6万
查看次数

如何检查Kafka Server是否正在运行?

我想在开始生产和消费工作之前确保kafka服务器是否正在运行.它是在windows环境中,这是我的kafka服务器在eclipse中的代码...

Properties kafka = new Properties();
kafka.setProperty("broker.id", "1");
kafka.setProperty("port", "9092");
kafka.setProperty("log.dirs", "D://workspace//");
kafka.setProperty("zookeeper.connect", "localhost:2181");    
Option<String> option = Option.empty();
KafkaConfig config = new KafkaConfig(kafka);        
KafkaServer server = new KafkaServer(config, new CurrentTime(), option);
server.startup();
Run Code Online (Sandbox Code Playgroud)

在这种情况下if (server != null)是不够的,因为它总是如此.那么有没有办法知道我的kafka服务器正在运行并为生产者做好准备.我有必要检查一下,因为它会导致丢失一些起始数据包.

谢谢.

java apache-kafka kafka-producer-api

39
推荐指数
5
解决办法
7万
查看次数

Hibernate中内部类的实体没有默认构造函数

我有两节课.一个是实体类,另一个是复合键类.

代码如下.

@Entity
public class Supply {

    @Embeddable
    class Id implements Serializable {

        @Column(name = "supplier_id")
        private long supplierId;
        @Column(name = "merchandise_id")
        private long merchandiseId;

        public Id() {
        }

        public Id(long sId, long mId) {
            this.supplierId = sId;
            this.merchandiseId = mId;
        }
    }

    @EmbeddedId
    private Id id = new Id();
}
Run Code Online (Sandbox Code Playgroud)

如果我用试试找

from Supply where merchandise_id=%d and supplier_id=%d
Run Code Online (Sandbox Code Playgroud)

Hibernate将抛出异常,即:

No default constructor for entity: com.entity.Supply$Id; nested exception is org.hibernate.InstantiationException: No default constructor for entity: com.entity.Supply$Id
Run Code Online (Sandbox Code Playgroud)

但是,我发现如果我将 ID更改为静态 …

java hibernate composite-key

32
推荐指数
2
解决办法
3万
查看次数

使用spring数据jpa更新单个字段

我正在使用spring-data的存储库 - 非常方便,但我遇到了一个问题.我可以轻松更新整个实体,但我相信当我只需要更新一个字段时,这是毫无意义的:

@Entity
@Table(schema = "processors", name = "ear_attachment")
public class EARAttachment {

    private Long id;
    private String originalName;
    private String uniqueName;//yyyy-mm-dd-GUID-originalName
    private long size;
    private EARAttachmentStatus status;
Run Code Online (Sandbox Code Playgroud)

更新我只是调用方法保存.在日志中我看到了跟随:

batching 1 statements: 1: update processors.ear_attachment set message_id=100, 
original_name='40022530424.dat', 
size=506, 
status=2,
unique_name='2014-12-16-8cf74a74-e7f3-40d8-a1fb-393c2a806847-40022530424.dat'
where id=1 
Run Code Online (Sandbox Code Playgroud)

我想看到这样的事情:

batching 1 statements: 1: update processors.ear_attachment set status=2 where id=1 
Run Code Online (Sandbox Code Playgroud)

Spring的存储库有很多工具可以使用名称约定来选择一些东西,也许像updateForStatus(int status)这样的更新有类似的东西;

java spring updates spring-data spring-data-jpa

27
推荐指数
2
解决办法
4万
查看次数

如何在java中将一个枚举转换为另一个枚举?

我有;

public enum Detailed {
    PASSED, INPROCESS, ERROR1, ERROR2, ERROR3;
}
Run Code Online (Sandbox Code Playgroud)

并需要将其转换为以下内容;

public enum Simple {
    DONE, RUNNING, ERROR;
}
Run Code Online (Sandbox Code Playgroud)

所以首先PASSED- > DONEINPROCESS- > RUNNING,但所有错误应该是:ERROR.显然,可以为所有值编写案例,但可能有更好的解决方案?

java enums

25
推荐指数
3
解决办法
3万
查看次数

Spring Security循环bean依赖

我正在研究Vaadin spring应用程序.我唯一能说的是,用户的身份验证/授权必须通过查询数据库来完成jdbcTemplate.如何解决这个问题?我正在使用Spring Boot 1.4.2.RELEASE.

Description:
The dependencies of some of the beans in the application context form a cycle:
???????
|  jdbcAccountRepository defined in file [repositories\JdbcAccountRepository.class]
?     ?
|  securityConfiguration.WebSecurityConfig (field services.JdbcUserDetailsServicessecurity.SecurityConfiguration$WebSecurityConfig.userDetailsService)
?     ?
|  jdbcUserDetailsServices (field repositories.JdbcAccountRepository services.JdbcUserDetailsServices.repository)
???????
Run Code Online (Sandbox Code Playgroud)

原始代码如下所示:

AccountRepository:

public interface AccountRepository {
    void createAccount(Account user) throws UsernameAlreadyInUseException;
    Account findAccountByUsername(String username);
}
Run Code Online (Sandbox Code Playgroud)

JdbcAccountRepository:

@Repository
public class JdbcAccountRepository implements AccountRepository {

    private final Logger LOGGER = LoggerFactory.getLogger(this.getClass());

    private final JdbcTemplate jdbcTemplate;
    private final PasswordEncoder passwordEncoder;

    @Autowired …
Run Code Online (Sandbox Code Playgroud)

java spring spring-security spring-jdbc vaadin

23
推荐指数
5
解决办法
3万
查看次数