小编aki*_*aki的帖子

使用@Query,使用hibernate更新spring数据jpa中的boolean值

我有spring-data和hibernate配置并运行.我可以使用spring-data保存记录但由于某种原因,我无法运行将更新表中所有布尔字段的查询.

我试过这个:

@Query("update Content v set v.published = false where v.division = :division and v.section = :section")
void unPublishContent(@Param("division") String division, 
                         @Param("section") String section);
Run Code Online (Sandbox Code Playgroud)

我也试过这个:

 @Query("update Content v set v.published = 0 where v.division = :division and v.section = :section")
void unPublishContent(@Param("division") String division, 
                         @Param("section") String section);
Run Code Online (Sandbox Code Playgroud)

参数division和section正在实现,但表中没有变化.

ps我也在使用mysql数据库.

hibernate spring-data spring-data-jpa

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

从控制台应用程序使用带有hibernate的spring-data-jpa时如何进行延迟加载

我有一个小的控制台应用程序,我使用spring-data-jpa和hibernate.在独立控制台应用程序中使用spring-data-jpa及其存储库时,我真的无法弄清楚如何延迟初始化集合.这是我的一些代码:

@Entity
public class User {
...
    @OneToMany(cascade=CascadeType.ALL)
    @JoinColumn(name="USER_ORDER_ID")
    private Set<Order> orders = new HashSet<Order>();
...
}
Run Code Online (Sandbox Code Playgroud)

库:

public interface UserRepository extends PagingAndSortingRepository<User, Long> {

    public ArrayList<User> findByFirstNameIgnoreCase(String firstName);
}
Run Code Online (Sandbox Code Playgroud)

服务impl:

@Service
@Repository
@Transactional
public class UserServiceImpl implements UserService {
    @Autowired
    private UserRepository userRepository;

public ArrayList<User> findByFirstNameIgnoreCase(String firstName) {
    ArrayList<User> users = new ArrayList<User>();
    users = userRepository.findByFirstNameIgnoreCase(firstName);
    return users;
}
Run Code Online (Sandbox Code Playgroud)

我的主要方法:

...
user = userRepository.findByFirstNameIgnoreCase("john").get(0);
orders = user.getOrders();
for (Order order : orders) {
  LOGGER.info("getting orders: " + order.getId());
} …
Run Code Online (Sandbox Code Playgroud)

hibernate spring-data-jpa

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

安装tarball的木偶食谱

我想通过使用木偶配方来安装apache maven,但我找不到任何关于如何执行此操作的示例.有人可以帮忙吗?Apache maven打包为tar.gz文件.我正在为木偶使用一个独立的设置.

installation recipe tar puppet

9
推荐指数
1
解决办法
6630
查看次数

在jsp中迭代PagedListHolder

如何在JSP中处理PagedListHolder?

在我的控制器中我有这个:

PagedListHolder<Logo> pagedListHolder = new PagedListHolder<Logo>(listLogo);
pagedListHolder.setPageSize(2);
Run Code Online (Sandbox Code Playgroud)

在我的jsp中:

<c:forEach items="${pagedListHolder}" var="listHolderItem">
Run Code Online (Sandbox Code Playgroud)

但它不起作用.JSTL无法遍历pagedListHolder;

#

更新的想法,我明白了:

为了处理PagedListHolder列表,您需要从PagedListHolder返回列表.这是你如何做到的:

PagedListHolder<Logo> pagedListHolder = new PagedListHolder<Logo>(listLogo);
pagedListHolder.setPageSize(2);

List<Logo> pagedListLogo = pagedListHolder.getPageList();

model.addAttribute("pagedListLogo", pagedListLogo);
Run Code Online (Sandbox Code Playgroud)

在你的jsp中:

<c:forEach items="${pagedListLogo}" var="logo">
...
Run Code Online (Sandbox Code Playgroud)

瞧,它有效.:)

spring jsp jstl spring-mvc

6
推荐指数
1
解决办法
4806
查看次数

每当创建对象时执行方法

我想知道在创建对象时如何在java中执行方法.

例如:

public class Person {
    private String name;
    private int age;
    private Date dateCreated;

    public setName(String name){
    ...
    }
    ... some other methods ...

    public setDateCreated(){
         this.dateCreated = new Date();
}
Run Code Online (Sandbox Code Playgroud)

我真的希望我的setDateCreated()方法在创建时对每个对象执行.

java

0
推荐指数
1
解决办法
109
查看次数