小编use*_*654的帖子

JSR-303 @Valid注释不适用于子对象列表

我的主要课程是

public class UserAddressesForm {

    @NotEmpty
    private String firstName;

    @NotEmpty
    private String lastName;

    private List<AddressForm> addresses;

...
setters and getters 

public class AddressForm {

    @NotEmpty
    private String customName;
    @NotEmpty
    private String city;
    @NotEmpty
    private String streetAn;
    @NotEmpty
    private String streetHn;
    @NotEmpty
    private String addressCountry;
    @NotEmpty
    private String postCode;
...
setters and getters
Run Code Online (Sandbox Code Playgroud)

控制器

@RequestMapping(value = "/up", method = RequestMethod.POST)
    public String completeForm(@Valid @ModelAttribute("userAddressesForm") UserAddressesForm userAddressesForm,  
            BindingResult result, HttpServletRequest req)
...
Run Code Online (Sandbox Code Playgroud)

一个JSP页面

<form:form commandName="userAddressesForm" action="registered">
    <table>

        <tr>
            <td class="formLabels"><form:label path="firstName">
                <spring:message …
Run Code Online (Sandbox Code Playgroud)

java spring json spring-mvc jsr

85
推荐指数
4
解决办法
5万
查看次数

如何在<form:input>的属性中使用<spring:message>?

我有JSP代码,如:

<div class="formRow">
    <form:input id="email_email" name="email_email" title="XXXXX"/>" path="email" cssClass="input required email" />
    <form:errors path="email" cssClass="error" />
</div>
Run Code Online (Sandbox Code Playgroud)

我想title用一些工具提示文本设置属性,支持i18n.我该怎么做?

我希望做这样的事情:

<div class="formRow">
    <form:input id="email_email" name="email_email" title="<spring:message code="tooltip.text" />"/>" path="email" cssClass="input required email" />
    <form:errors path="email" cssClass="error" />
</div>
Run Code Online (Sandbox Code Playgroud)

java spring jsp spring-mvc

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

Spring Data JPA.如何从findAll()方法中仅获取ID列表

我有一个非常复杂的模型.实体有很多关系,等等.

我尝试使用Spring Data JPA并准备了一个存储库.

但是当我调用metod findAll()时,对象a的规范有一个性能问题,因为对象非常大.我知道,因为当我调用这样的方法时:

@Query(value = "select id, name from Customer ")
List<Object[]> myFindCustomerIds();
Run Code Online (Sandbox Code Playgroud)

我的表现没有任何问题.

但是当我调用时

List<Customer> findAll(); 
Run Code Online (Sandbox Code Playgroud)

我的表现存在很大问题.

问题是我需要使用Specifications for Customer调用findAll方法,这就是为什么我不能使用返回对象数组列表的方法.

如何编写方法来查找具有Customer实体规范但仅返回ID的所有客户.

像这样:

List<Long> findAll(Specification<Customer> spec);
Run Code Online (Sandbox Code Playgroud)
  • 我不能在这种情况下使用分页.

请帮忙.

spring specifications criteria-api spring-data-jpa

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

如何使用SQL计算表中的列数?

如何使用SQL计算表中的列数?

我正在使用Oracle 11g

请帮忙.吨.

sql oracle

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

如何自动生成创建或修改的时间戳字段?

我的实体类:

@Entity
@Table(name = "user")
public class User implements Serializable {
    private static final long serialVersionUID = 1L;

    @Id
    @SequenceGenerator(name = "USER_ID_GENERATOR", sequenceName = "USER_SEQ")
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "USER_ID_GENERATOR")
    @Column(name = "user_id")
    private long userId;


    @Temporal(TemporalType.DATE)
    private Date created;

    @Temporal(TemporalType.DATE)
    private Date modified;

    //setters and getters...
}
Run Code Online (Sandbox Code Playgroud)

我想在创建或修改对象时自动将CREATED和MODIFIED字段相互补充.CREATED和MODIFIED字段应为TIMESTAMP类型.

我如何实现这一目标?

orm hibernate jpa

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

ProGuard是否支持Java 11?

我试图使用Proguard(6.1.0beta1),但得到了

(Unsupported version number [55.0] (maximum 54.0, Java 10)))
Run Code Online (Sandbox Code Playgroud)

是否有ProGuard的替代品,可以使用Java 11进行管理?

java proguard

7
推荐指数
2
解决办法
2025
查看次数

@Service和@Autowired注释的Java/Spring问题

[春季3.0.5] [jboss 5.1]

我有几个标记为的类@Service,它实现了相同的接口.

例如,

@Service(value="test1") 
public TestImpl1 implements Test {} 
@Service(value="test2") 
public TestImpl2 implements Test {} 
Run Code Online (Sandbox Code Playgroud)

接下来,我有以下结构

public SomeClass { 
@Autowired 
@Qualifier("test1") 
Test test1; 
@Autowired 
@Qualifier("test2") 
Test test2; 
Run Code Online (Sandbox Code Playgroud)

我得到一个例外(在部署时)

10:36:58,277 ERROR [[/test-web]] Servlet /test-web threw load() 
exception 
org.springframework.beans.factory.NoSuchBeanDefinitionException: No 
unique bean of type [pl.tests] is defined: expected single matching 
bean but found 2: [test1, test2] 
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.doReso lveDependency(DefaultListableBeanFactory.java: 
796) 
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.resolv eDependency(DefaultListableBeanFactory.java: 
703) 
        at 
org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostPro cessor 
$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java: 
474) 
Run Code Online (Sandbox Code Playgroud)

有谁知道如何解决这个问题?

T.

java spring annotations javabeans

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

为什么这个hibernate模板bulkUpdate不起作用

Oracle 10g,Hibernate 3.4

此更新(基于long user.userId值)正确完成:

getHibernateTemplate().bulkUpdate("update Address address set address.preferred = 1 where address.user.userId = ?", 1l);
Run Code Online (Sandbox Code Playgroud)

这个(基于String user.language值)抛出一个异常ORA-00971: missing SET keyword:

getHibernateTemplate().bulkUpdate("update Address address set address.preferred = 1 where address.user.language = ?", "en");
Run Code Online (Sandbox Code Playgroud)

谁知道为什么?

java oracle spring hibernate

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

如何使用 SimpleMailMessage 格式化文本?

我的电子邮件内容文本是

String text = "Hey, You are create a new Account! Best, MyTeam";
Run Code Online (Sandbox Code Playgroud)

如何将文本格式化为:

嘿,

您正在创建一个新帐户!

最好的,我的团队

java email spring velocity

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

如何提取"查找或创建"方法来抽象类?(Spring Data Jpa)

我正在使用Spring Data JPA,我有一堆像这样的存储库:

public interface CustomerRepository extends JpaRepository<Customer, Long> {}
Run Code Online (Sandbox Code Playgroud)

在存储库下我有服务,其中很多需要实现方法findOrCreate(String name),如下所示:

@Override
    @Transactional
    public List<Customer> findOrCreate(final String name) {
        checkNotNull(name);
        List<Customer> result = this.customerRepository.findByName(name);
        if (result.isEmpty()) {
            LOGGER.info("Cannot find customer. Creating a new customer. [name={}]", name);
            Customer customer = new Customer(name);
            return Arrays.asList(this.customerRepository.save(customer));
        }
        return result;
    }
Run Code Online (Sandbox Code Playgroud)

我想将方法​​提取到抽象类或某个地方,以避免为每个服务,测试等实现它.

抽象类可以是这样的:

public abstract class AbstractManagementService<T, R extends JpaRepository<T, Serializable>> {

    protected List<T> findOrCreate(T entity, R repository) {
        checkNotNull(entity);
        checkNotNull(repository);

        return null;
    }

}
Run Code Online (Sandbox Code Playgroud)

问题在于,由于我需要在创建新对象之前按名称查找对象作为字符串.当然接口JpaRepository不提供此方法.

我怎么解决这个问题?

最好的祝福

java spring jpa spring-data

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

MyBatis - 如何创建w动态WHERE子句

该服务获取一个包含三个值列表的未知对象[column,operator,value]例如,EMAIL - like - "TEST"

基于结果列表来构建我有的WHERE子句但我也能够构建如下的条件(例如)

WHERE(电子邮件,如'test'和user_id <> 5)或(trans_id <100 AND session_id> 500)

有谁可以帮我怎么做?

java ibatis mybatis

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

如何在动态查询中保护自己免受SQL注入?

我的应用程序获取对数据库的String对象查询.例如String query = EMAIL like '% test%' and USER_NAME like '% user%'.查询是动态构建的,我不知道它的结构,所以我无法利用PrepareStatement.有谁知道在这种情况下防止SQL注入的方式?

数据库:Oracle
语言:Java 1.6

请帮忙.

java sql oracle sql-injection

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

Spring/Webflow验证问题

验证问题

当方法"注册"时我会运行验证

在webflow中:...

<transition on="registered" to="registeredAction" bind="true" validate="true" />
Run Code Online (Sandbox Code Playgroud)

...

我的模型看起来像这样:

class User {
private String name;
private String surname;
...
private List <address> addresses;
...
public void validateRegistered (ValidationContext context) {
Context.getMessageContext MessageContext messages = ();

if (name == null) {
messages.addMessage (new MessageBuilder (.) error (). source ("name".) code (MessageCodes.Error.REQUIRED.) build ());
}
}
Run Code Online (Sandbox Code Playgroud)

在Address类中

Class Address {

private String street;
private String city;

public void validateRegistered (ValidationContext context) {
Context.getMessageContext MessageContext messages = ();

if (street == …
Run Code Online (Sandbox Code Playgroud)

java validation spring spring-webflow

2
推荐指数
1
解决办法
5211
查看次数