为了账号安全,请及时绑定邮箱和手机立即绑定

如何查询 mysql 数据库中的特定实体

如何查询 mysql 数据库中的特定实体

千万里不及你 2022-12-28 16:11:38
我想弄清楚如何查询 mysql 数据库中的特定歌曲。我的想法是通过 ID 查找歌曲,因此如果我传递 ID,一首歌曲应该出现在浏览器窗口中。public class Song {private int id = 0;private String title;private String artist;private String album;private int released;public Song() {}public Song(int id, String title, String artist, String album, int released) {    this.id = id;    this.title = title;    this.artist = artist;    this.album = album;    this.released = released;}@Id@Column(name = "songID")@GeneratedValue(strategy = GenerationType.IDENTITY)public Integer getId() {    return id;}SongWebService.java    @GET    @Path("/{id}")    @Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })public Response getSongById() {     Object song = null;    try {        em.getTransaction().begin();                    song = em.createQuery("SELECT s FROM Song s WHERE s.songID = :id", Song.class).getSingleResult();        em.getTransaction().commit();     } catch (NoResultException e) {        Response.noContent().build();    } catch (Exception ex) {        ex.printStackTrace();        em.getTransaction().rollback();    } finally {        em.close();    }    return Response.ok(song).build();}
查看完整描述

1 回答

?
慕雪6442864

TA贡献1812条经验 获得超5个赞

创建一个查询对象并设置参数值,然后获取单行


TypedQuery<Song> query =  em.createQuery("SELECT s FROM Song s WHERE s.songID = :id", Song.class);

query.setParameter(1, id); //not sure what id 

Song song = query.getSingleResult();


查看完整回答
反对 回复 2022-12-28
  • 1 回答
  • 0 关注
  • 109 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信