我已经按照一些基本指南设置了Spring Roo,并且进行了设置,可以使用Roo的标准格式(例如this Youtube video)从Web浏览器访问数据库中的数据。现在,我想从Java代码访问该数据,以便可以将其“注入”到网站其他页面的视图中。怎么做?

编辑:这就是我访问数据的方式:从控制器(或任何类,实际上),我使用this注释以及此属性定义:

@PersistenceContext
private EntityManager manager;


然后,我可以使用以下查询访问数据:

List<Announcement> results = manager.createQuery("from Announcement a where a.id = :id").setParameter("id", new Long(1)).getResultList();


这将为您提供一个Announcement类型的列表(这只是我创建的实体)。当然,此查询只会产生一个结果(如果数据库没有ID为1的条目,则为零)。感谢Micha提供此解决方案。

最佳答案

您可以使用@PersistenceContext批注在应用程序中获取JPA EntityManager实例。使用EntityManager您可以查询数据库(如此处的showed)。由于您使用的是Roo,因此entityManagerFactory bean和事务支持应该已经包含在bean配置文件中。

您还可以使用Spring数据repositories来访问数据。

也许this video可以帮助您。

10-04 21:52
查看更多