{"id":16307,"date":"2024-03-15T12:42:40","date_gmt":"2024-03-15T12:42:40","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/"},"modified":"2025-08-07T01:54:03","modified_gmt":"2025-08-07T01:54:03","slug":"how-to-invoke-a-stored-procedure-in-hibernate","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/","title":{"rendered":"How to invoke a stored procedure in Hibernate?"},"content":{"rendered":"<p>To call a stored procedure in Hibernate, you need to follow these steps:<\/p>\n<ol>\n<li>Create an entity class that maps the result set of a stored procedure.<\/li>\n<li>Define the SQL query statement for stored procedures in the Hibernate configuration file.<\/li>\n<li>Create a Query object using the Session object of Hibernate, and then set the parameters for the stored procedure.<\/li>\n<li>Call the setResultTransformer method of the Query object to transform the result set into entity class objects.<\/li>\n<li>Execute a stored procedure using the list method of the Query object and retrieve the result set.<\/li>\n<\/ol>\n<p>Here is an example code:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-comment\">\/\/ \u521b\u5efa\u5b9e\u4f53\u7c7b<\/span>\r\n<span class=\"hljs-meta\">@Entity<\/span>\r\n<span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title class_\">Employee<\/span> {\r\n    <span class=\"hljs-meta\">@Id<\/span>\r\n    <span class=\"hljs-keyword\">private<\/span> Long id;\r\n    <span class=\"hljs-keyword\">private<\/span> String name;\r\n    <span class=\"hljs-comment\">\/\/ \u5176\u4ed6\u5c5e\u6027\u548cgetter\/setter\u65b9\u6cd5<\/span>\r\n}\r\n\r\n<span class=\"hljs-comment\">\/\/ \u5728Hibernate\u914d\u7f6e\u6587\u4ef6\u4e2d\u5b9a\u4e49\u5b58\u50a8\u8fc7\u7a0b\u7684SQL\u67e5\u8be2\u8bed\u53e5<\/span>\r\n&lt;sql-query name=<span class=\"hljs-string\">\"callProcedure\"<\/span>&gt;\r\n    &lt;![CDATA[\r\n    CALL <span class=\"hljs-title function_\">your_procedure_name<\/span><span class=\"hljs-params\">(:param1, :param2)<\/span>\r\n    ]]&gt;\r\n&lt;\/sql-query&gt;\r\n\r\n<span class=\"hljs-comment\">\/\/ \u8c03\u7528\u5b58\u50a8\u8fc7\u7a0b<\/span>\r\n<span class=\"hljs-type\">String<\/span> <span class=\"hljs-variable\">sql<\/span> <span class=\"hljs-operator\">=<\/span> <span class=\"hljs-string\">\"callProcedure\"<\/span>;\r\n<span class=\"hljs-type\">Query<\/span> <span class=\"hljs-variable\">query<\/span> <span class=\"hljs-operator\">=<\/span> session.getNamedQuery(sql);\r\nquery.setParameter(<span class=\"hljs-string\">\"param1\"<\/span>, value1);\r\nquery.setParameter(<span class=\"hljs-string\">\"param2\"<\/span>, value2);\r\nquery.setResultTransformer(Transformers.aliasToBean(Employee.class));\r\nList&lt;Employee&gt; employees = query.list();\r\n<\/code><\/pre>\n<p>Please remember to replace &#8220;your_procedure_name&#8221; in the configuration file with the actual name of your stored procedure. Additionally, depending on the parameter types of the stored procedure, you may need to use different overloads of the setParameter method to set the parameter values.<\/p>\n<p>These are the basic steps for calling a stored procedure using Hibernate. You can adjust and expand them according to your actual needs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To call a stored procedure in Hibernate, you need to follow these steps: Create an entity class that maps the result set of a stored procedure. Define the SQL query statement for stored procedures in the Hibernate configuration file. Create a Query object using the Session object of Hibernate, and then set the parameters for [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[453,1402,299,1404,1403],"class_list":["post-16307","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-development","tag-guide","tag-programming","tag-technology","tag-tutorial"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to invoke a stored procedure in Hibernate? - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Learn about how to invoke a stored procedure in hibernate?. Comprehensive guide with examples and best practices.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to invoke a stored procedure in Hibernate?\" \/>\n<meta property=\"og:description\" content=\"Learn about how to invoke a stored procedure in hibernate?. Comprehensive guide with examples and best practices.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T12:42:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-07T01:54:03+00:00\" \/>\n<meta name=\"author\" content=\"Sophia Anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sophia Anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/\"},\"author\":{\"name\":\"Sophia Anderson\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30\"},\"headline\":\"How to invoke a stored procedure in Hibernate?\",\"datePublished\":\"2024-03-15T12:42:40+00:00\",\"dateModified\":\"2025-08-07T01:54:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/\"},\"wordCount\":173,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"Development\",\"guide\",\"programming\",\"technology\",\"tutorial\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/\",\"name\":\"How to invoke a stored procedure in Hibernate? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T12:42:40+00:00\",\"dateModified\":\"2025-08-07T01:54:03+00:00\",\"description\":\"Learn about how to invoke a stored procedure in hibernate?. Comprehensive guide with examples and best practices.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to invoke a stored procedure in Hibernate?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30\",\"name\":\"Sophia Anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g\",\"caption\":\"Sophia Anderson\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/sophiaanderson\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to invoke a stored procedure in Hibernate? - Blog - Silicon Cloud","description":"Learn about how to invoke a stored procedure in hibernate?. Comprehensive guide with examples and best practices.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/","og_locale":"en_US","og_type":"article","og_title":"How to invoke a stored procedure in Hibernate?","og_description":"Learn about how to invoke a stored procedure in hibernate?. Comprehensive guide with examples and best practices.","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T12:42:40+00:00","article_modified_time":"2025-08-07T01:54:03+00:00","author":"Sophia Anderson","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Sophia Anderson","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/"},"author":{"name":"Sophia Anderson","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30"},"headline":"How to invoke a stored procedure in Hibernate?","datePublished":"2024-03-15T12:42:40+00:00","dateModified":"2025-08-07T01:54:03+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/"},"wordCount":173,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["Development","guide","programming","technology","tutorial"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/","name":"How to invoke a stored procedure in Hibernate? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T12:42:40+00:00","dateModified":"2025-08-07T01:54:03+00:00","description":"Learn about how to invoke a stored procedure in hibernate?. Comprehensive guide with examples and best practices.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-invoke-a-stored-procedure-in-hibernate\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to invoke a stored procedure in Hibernate?"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30","name":"Sophia Anderson","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g","caption":"Sophia Anderson"},"url":"https:\/\/www.silicloud.com\/blog\/author\/sophiaanderson\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/16307","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=16307"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/16307\/revisions"}],"predecessor-version":[{"id":49859,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/16307\/revisions\/49859"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=16307"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=16307"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=16307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}