小编Mas*_*erV的帖子

Cassandra Java Driver- QueryBuilder API与PreparedStatements

Cassandra的Datastax Java驱动程序(cassandra-driver-core 2.0.2)支持PreparedStatementsQueryBuilder API.使用一个优于另一个的任何特定优势?缺点是什么?

文档:http://www.datastax.com/documentation/developer/java-driver/2.0/common/drivers/reference/driverReference_r.html

除了以编程方式编写查询之外,上述doc没有说明使用QueryBuilder API而不是PreparedStatements,这没有多大优势(在我的书中).

请分享您的想法和经验.谢谢.

java prepared-statement cassandra datastax-java-driver cassandra-2.0

14
推荐指数
1
解决办法
8422
查看次数

有一个带注释的抽象控制器类 - Spring MVC是否有意义

在Spring MVC驱动的容器中有一个带注释的(@Controller)抽象类是否有意义,基本上希望将大多数可重用的方法(例如异常处理程序)放在Abstract类中并使用基类扩展它,这样就可以了必须重复相同的样板代码.例如.

抽象控制器类:

    @Controller
    abstract class AbstractExternalController {

    @ExceptionHandler(NoSuchRequestHandlingMethodException.class)
    @ResponseStatus(value = HttpStatus.NOT_FOUND)
    public @ResponseBody ResponseModel handleNotFoundException() {
            final ResponseModel response = new ErrorModel();
            response.setStatus("404");
                response.setMessage("Resource Not Found");
                return response;
             } 
...

    }
Run Code Online (Sandbox Code Playgroud)

基础控制器类

@Controller
class ExternalControllerXXX extends AbstractExternalController  {

...
}
Run Code Online (Sandbox Code Playgroud)

java spring abstract-class controller spring-mvc

11
推荐指数
1
解决办法
6052
查看次数

使用Hibernate Validator(JSR 303)与其他框架(ESAPI,Apache Commons等)进行输入验证

我查看了各种输入验证框架,包括用于JSR 303 bean验证的Hibernate Validator impl,以及ESAPI验证器接口及其DefaultValidator实现.

ESAPI输入验证围绕通过ESAPI.properties文件进行正则表达式模式匹配.

ESAPI路线:

ESAPI.properties:

Validator.SafeString=[A-Za-z0-9]{0,1024}$
Run Code Online (Sandbox Code Playgroud)

Java类:

ESAPI.validator().isValidInput("Name","darthvader", "SafeString", 255, false)
Run Code Online (Sandbox Code Playgroud)

Hibernate Validator/Spring MVC路由

Hibernate涉及使用各种约束注释来注释bean(@NotNull,@ Size,@ Min,@ Pattern,@ Valid等).并将Spring MVC与验证规则集成在一起.

@RequestMapping(value = "/appointments", method = RequestMethod.POST)
public String add(@Valid User user, BindingResult result) {
    ....
}
Run Code Online (Sandbox Code Playgroud)

看起来像使用Hibernate Validator/Spring MVC提供与正则表达式匹配等相似的功能.使用ESAPI库比Hibernate验证器api 有什么优势吗?也许对于SQL注入/ XSS或那种性质的东西?针对ESAPI输入验证框架的开箱即用的XSS/SQL注入安全性?使用其中一个的任何真正优势.提前致谢.

回答我自己的问题: 我想我已经找到了自己的解决方案.使用Hibernate/Spring MVC可以提供非常强大的bean验证功能.Hibernate提供安全注释,例如@SafeHtml,@ Pattern等.基本上我们可以设置一组复合注释来提供bean验证.http://docs.jboss.org/hibernate/validator/5.0/reference/en-US/html_single/

validation sql-injection spring-mvc hibernate-validator esapi

5
推荐指数
2
解决办法
3473
查看次数

Java内存使用 - 原语

Algorithms第4版引用以下内容

"例如,如果你的计算机上有1GB的内存(10亿字节),你一次就不能在内存中容纳超过3200万个int值或1600万个double值."

int - 4个字节

3200万x 4 = 1.28亿字节

帮助我理解,为什么我们不能适应32万个int值,上面的128万字节大约是1GB或10亿字节的总内存消耗的1/10.

java memory algorithm primitive

5
推荐指数
1
解决办法
832
查看次数