王卫文 發表於 2023-7-10 00:00:00

详解IDEA中便捷内存数据库H2的最简使用方式

<p>
          在idea中做练习或做demo时,有时候需要使用到数据库,但如果自己机子上本来没有安装数据库(全新安装太麻烦或资源有限),也没有可用的远程数据库时,我们可以直接在idea上使用便捷式的内存数据库h2,关于h2更多知识就自己去找一下资料了,接下来主要讲一下如何在idea下的springboot项目中把它用起来!</p>
<p>
          首先在idea中新建一个空的maven项目,编辑项目pom.xml文件,增加springboot和最基础的数据访问相关jar包依赖:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlightersql" id="highlighter_655307">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                        <div class="line number8 index7 alt1">
                                                                8</div>
                                                        <div class="line number9 index8 alt2">
                                                                9</div>
                                                        <div class="line number10 index9 alt1">
                                                                10</div>
                                                        <div class="line number11 index10 alt2">
                                                                11</div>
                                                        <div class="line number12 index11 alt1">
                                                                12</div>
                                                        <div class="line number13 index12 alt2">
                                                                13</div>
                                                        <div class="line number14 index13 alt1">
                                                                14</div>
                                                        <div class="line number15 index14 alt2">
                                                                15</div>
                                                        <div class="line number16 index15 alt1">
                                                                16</div>
                                                        <div class="line number17 index16 alt2">
                                                                17</div>
                                                        <div class="line number18 index17 alt1">
                                                                18</div>
                                                        <div class="line number19 index18 alt2">
                                                                19</div>
                                                        <div class="line number20 index19 alt1">
                                                                20</div>
                                                        <div class="line number21 index20 alt2">
                                                                21</div>
                                                        <div class="line number22 index21 alt1">
                                                                22</div>
                                                        <div class="line number23 index22 alt2">
                                                                23</div>
                                                        <div class="line number24 index23 alt1">
                                                                24</div>
                                                        <div class="line number25 index24 alt2">
                                                                25</div>
                                                        <div class="line number26 index25 alt1">
                                                                26</div>
                                                        <div class="line number27 index26 alt2">
                                                                27</div>
                                                        <div class="line number28 index27 alt1">
                                                                28</div>
                                                        <div class="line number29 index28 alt2">
                                                                29</div>
                                                        <div class="line number30 index29 alt1">
                                                                30</div>
                                                        <div class="line number31 index30 alt2">
                                                                31</div>
                                                        <div class="line number32 index31 alt1">
                                                                32</div>
                                                        <div class="line number33 index32 alt2">
                                                                33</div>
                                                        <div class="line number34 index33 alt1">
                                                                34</div>
                                                        <div class="line number35 index34 alt2">
                                                                35</div>
                                                        <div class="line number36 index35 alt1">
                                                                36</div>
                                                        <div class="line number37 index36 alt2">
                                                                37</div>
                                                        <div class="line number38 index37 alt1">
                                                                38</div>
                                                        <div class="line number39 index38 alt2">
                                                                39</div>
                                                        <div class="line number40 index39 alt1">
                                                                40</div>
                                                        <div class="line number41 index40 alt2">
                                                                41</div>
                                                        <div class="line number42 index41 alt1">
                                                                42</div>
                                                        <div class="line number43 index42 alt2">
                                                                43</div>
                                                        <div class="line number44 index43 alt1">
                                                                44</div>
                                                        <div class="line number45 index44 alt2">
                                                                45</div>
                                                        <div class="line number46 index45 alt1">
                                                                46</div>
                                                        <div class="line number47 index46 alt2">
                                                                47</div>
                                                        <div class="line number48 index47 alt1">
                                                                48</div>
                                                        <div class="line number49 index48 alt2">
                                                                49</div>
                                                        <div class="line number50 index49 alt1">
                                                                50</div>
                                                        <div class="line number51 index50 alt2">
                                                                51</div>
                                                        <div class="line number52 index51 alt1">
                                                                52</div>
                                                        <div class="line number53 index52 alt2">
                                                                53</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="sql plain">&lt;?xml version=</code><code class="sql string">"1.0"</code> <code class="sql plain">encoding=</code><code class="sql string">"utf-8"</code><code class="sql plain">?&gt;</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="sql plain">&lt;project xmlns=</code><code class="sql string">"http://maven.apache.org/pom/4.0.0"</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="sql spaces">     </code><code class="sql plain">xmlns:xsi=</code><code class="sql string">"http://www.w3.org/2001/xmlschema-instance"</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="sql spaces">     </code><code class="sql plain">xsi:schemalocation=</code><code class="sql string">"http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"</code><code class="sql plain">&gt;</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;modelversion&gt;4.0.0&lt;/modelversion&gt;</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                         </div>
                                                                <div class="line number7 index6 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;groupid&gt;org.example&lt;/groupid&gt;</code>
</div>
                                                                <div class="line number8 index7 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;artifactid&gt;microservice-simple-provider-</code><code class="sql color2">user</code><code class="sql plain">&lt;/artifactid&gt;</code>
</div>
                                                                <div class="line number9 index8 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;version&gt;1.0-snapshot&lt;/version&gt;</code>
</div>
                                                                <div class="line number10 index9 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;packaging&gt;jar&lt;/packaging&gt;</code>
</div>
                                                                <div class="line number11 index10 alt2">
                                                                         </div>
                                                                <div class="line number12 index11 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;parent&gt;</code>
</div>
                                                                <div class="line number13 index12 alt2">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;artifactid&gt;spring-boot-starter-parent&lt;/artifactid&gt;</code>
</div>
                                                                <div class="line number14 index13 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;groupid&gt;org.springframework.boot&lt;/groupid&gt;</code>
</div>
                                                                <div class="line number15 index14 alt2">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;version&gt;2.4.2&lt;/version&gt;</code>
</div>
                                                                <div class="line number16 index15 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;/parent&gt;</code>
</div>
                                                                <div class="line number17 index16 alt2">
                                                                         </div>
                                                                <div class="line number18 index17 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;properties&gt;</code>
</div>
                                                                <div class="line number19 index18 alt2">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;project.build.sourceencoding&gt;utf-8&lt;/project.build.sourceencoding&gt;</code>
</div>
                                                                <div class="line number20 index19 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;java.version&gt;1.8&lt;/java.version&gt;</code>
</div>
                                                                <div class="line number21 index20 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;/properties&gt;</code>
</div>
                                                                <div class="line number22 index21 alt1">
                                                                         </div>
                                                                <div class="line number23 index22 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;dependencies&gt;</code>
</div>
                                                                <div class="line number24 index23 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;dependency&gt;</code>
</div>
                                                                <div class="line number25 index24 alt2">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;!</code><code class="sql comments">--springboot的web项目起步依赖--&gt;</code>
</div>
                                                                <div class="line number26 index25 alt1">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;groupid&gt;org.springframework.boot&lt;/groupid&gt;</code>
</div>
                                                                <div class="line number27 index26 alt2">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;artifactid&gt;spring-boot-starter-web&lt;/artifactid&gt;</code>
</div>
                                                                <div class="line number28 index27 alt1">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;version&gt;2.4.2&lt;/version&gt;</code>
</div>
                                                                <div class="line number29 index28 alt2">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;/dependency&gt;</code>
</div>
                                                                <div class="line number30 index29 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;dependency&gt;</code>
</div>
                                                                <div class="line number31 index30 alt2">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;!</code><code class="sql comments">--springboot的jpa数据访问组件起步依赖--&gt;</code>
</div>
                                                                <div class="line number32 index31 alt1">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;groupid&gt;org.springframework.boot&lt;/groupid&gt;</code>
</div>
                                                                <div class="line number33 index32 alt2">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;artifactid&gt;spring-boot-starter-data-jpa&lt;/artifactid&gt;</code>
</div>
                                                                <div class="line number34 index33 alt1">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;version&gt;2.3.1.release&lt;/version&gt;</code>
</div>
                                                                <div class="line number35 index34 alt2">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;/dependency&gt;</code>
</div>
                                                                <div class="line number36 index35 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;dependency&gt;</code>
</div>
                                                                <div class="line number37 index36 alt2">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;!</code><code class="sql comments">--自动构建h2嵌入式或内存数据库的依赖--&gt;</code>
</div>
                                                                <div class="line number38 index37 alt1">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;groupid&gt;com.h2database&lt;/groupid&gt;</code>
</div>
                                                                <div class="line number39 index38 alt2">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;artifactid&gt;h2&lt;/artifactid&gt;</code>
</div>
                                                                <div class="line number40 index39 alt1">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;version&gt;1.4.200&lt;/version&gt;</code>
</div>
                                                                <div class="line number41 index40 alt2">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;/dependency&gt;</code>
</div>
                                                                <div class="line number42 index41 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;/dependencies&gt;</code>
</div>
                                                                <div class="line number43 index42 alt2">
                                                                         </div>
                                                                <div class="line number44 index43 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;build&gt;</code>
</div>
                                                                <div class="line number45 index44 alt2">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;plugins&gt;</code>
</div>
                                                                <div class="line number46 index45 alt1">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;plugin&gt;</code>
</div>
                                                                <div class="line number47 index46 alt2">
                                                                        <code class="sql spaces">        </code><code class="sql plain">&lt;groupid&gt;org.springframework.boot&lt;/groupid&gt;</code>
</div>
                                                                <div class="line number48 index47 alt1">
                                                                        <code class="sql spaces">        </code><code class="sql plain">&lt;artifactid&gt;spring-boot-maven-plugin&lt;/artifactid&gt;</code>
</div>
                                                                <div class="line number49 index48 alt2">
                                                                        <code class="sql spaces">        </code><code class="sql plain">&lt;version&gt;2.4.2&lt;/version&gt;</code>
</div>
                                                                <div class="line number50 index49 alt1">
                                                                        <code class="sql spaces">      </code><code class="sql plain">&lt;/plugin&gt;</code>
</div>
                                                                <div class="line number51 index50 alt2">
                                                                        <code class="sql spaces">    </code><code class="sql plain">&lt;/plugins&gt;</code>
</div>
                                                                <div class="line number52 index51 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">&lt;/build&gt;</code>
</div>
                                                                <div class="line number53 index52 alt2">
                                                                        <code class="sql plain">&lt;/project&gt;</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
          然后在classpath路径范围内增加建表sql脚本文件和数据初始化文件:</p>
<p>
        <img title="详解IDEA中便捷内存数据库H2的最简使用方式" alt="详解IDEA中便捷内存数据库H2的最简使用方式" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/ac357ef64467302413523235686ce0ea.jpg"></p>
<p>
        <img title="详解IDEA中便捷内存数据库H2的最简使用方式" alt="详解IDEA中便捷内存数据库H2的最简使用方式" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/0028152fde67257cd17c011ed04d8709.jpg"></p>
<p>
          接着再添加springboot项目配置文件application.yml,并添加jpa、datasource和h2的主要配置项:</p>
<p>
        <img title="详解IDEA中便捷内存数据库H2的最简使用方式" alt="详解IDEA中便捷内存数据库H2的最简使用方式" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/bdecf9e6f6501dac18a43b769f924b9c.jpg"></p>
<p>
          最后再为项目添加一个springboot启动类,即可将应用跑起来,并进行h2内存数据库的连接了:</p>
<p>
        <img title="详解IDEA中便捷内存数据库H2的最简使用方式" alt="详解IDEA中便捷内存数据库H2的最简使用方式" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/5acc64da24ab89df85812572a602a0ef.jpg"></p>
<p>
        <img title="详解IDEA中便捷内存数据库H2的最简使用方式" alt="详解IDEA中便捷内存数据库H2的最简使用方式" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/2e3ce9ca5d8606461ed31de8f6d85547.jpg"></p>
<p>
          注意:自动创建的h2内存数据库的管理地址就是我们在application.yml中配置的h2.console.path地址,进入管理页后如下图所示:</p>
<p>
        <img title="详解IDEA中便捷内存数据库H2的最简使用方式" alt="详解IDEA中便捷内存数据库H2的最简使用方式" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/2b170b457d21422508e6b992e2a4d834.jpg"></p>
<p>
          这样我们的应用就相当于自带了一个便捷式内存数据库了!</p>
<p>
          现在我们来为项目做一个最简单的h2内存数据库的使用样例——为h2数据库中的user表增加对应的实体类user.java、基于jpa的数据访问对象userrepository.java和api层控制类usercontroller.java:</p>
<p>
        user.java类:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlightersql" id="highlighter_676614">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                        <div class="line number8 index7 alt1">
                                                                8</div>
                                                        <div class="line number9 index8 alt2">
                                                                9</div>
                                                        <div class="line number10 index9 alt1">
                                                                10</div>
                                                        <div class="line number11 index10 alt2">
                                                                11</div>
                                                        <div class="line number12 index11 alt1">
                                                                12</div>
                                                        <div class="line number13 index12 alt2">
                                                                13</div>
                                                        <div class="line number14 index13 alt1">
                                                                14</div>
                                                        <div class="line number15 index14 alt2">
                                                                15</div>
                                                        <div class="line number16 index15 alt1">
                                                                16</div>
                                                        <div class="line number17 index16 alt2">
                                                                17</div>
                                                        <div class="line number18 index17 alt1">
                                                                18</div>
                                                        <div class="line number19 index18 alt2">
                                                                19</div>
                                                        <div class="line number20 index19 alt1">
                                                                20</div>
                                                        <div class="line number21 index20 alt2">
                                                                21</div>
                                                        <div class="line number22 index21 alt1">
                                                                22</div>
                                                        <div class="line number23 index22 alt2">
                                                                23</div>
                                                        <div class="line number24 index23 alt1">
                                                                24</div>
                                                        <div class="line number25 index24 alt2">
                                                                25</div>
                                                        <div class="line number26 index25 alt1">
                                                                26</div>
                                                        <div class="line number27 index26 alt2">
                                                                27</div>
                                                        <div class="line number28 index27 alt1">
                                                                28</div>
                                                        <div class="line number29 index28 alt2">
                                                                29</div>
                                                        <div class="line number30 index29 alt1">
                                                                30</div>
                                                        <div class="line number31 index30 alt2">
                                                                31</div>
                                                        <div class="line number32 index31 alt1">
                                                                32</div>
                                                        <div class="line number33 index32 alt2">
                                                                33</div>
                                                        <div class="line number34 index33 alt1">
                                                                34</div>
                                                        <div class="line number35 index34 alt2">
                                                                35</div>
                                                        <div class="line number36 index35 alt1">
                                                                36</div>
                                                        <div class="line number37 index36 alt2">
                                                                37</div>
                                                        <div class="line number38 index37 alt1">
                                                                38</div>
                                                        <div class="line number39 index38 alt2">
                                                                39</div>
                                                        <div class="line number40 index39 alt1">
                                                                40</div>
                                                        <div class="line number41 index40 alt2">
                                                                41</div>
                                                        <div class="line number42 index41 alt1">
                                                                42</div>
                                                        <div class="line number43 index42 alt2">
                                                                43</div>
                                                        <div class="line number44 index43 alt1">
                                                                44</div>
                                                        <div class="line number45 index44 alt2">
                                                                45</div>
                                                        <div class="line number46 index45 alt1">
                                                                46</div>
                                                        <div class="line number47 index46 alt2">
                                                                47</div>
                                                        <div class="line number48 index47 alt1">
                                                                48</div>
                                                        <div class="line number49 index48 alt2">
                                                                49</div>
                                                        <div class="line number50 index49 alt1">
                                                                50</div>
                                                        <div class="line number51 index50 alt2">
                                                                51</div>
                                                        <div class="line number52 index51 alt1">
                                                                52</div>
                                                        <div class="line number53 index52 alt2">
                                                                53</div>
                                                        <div class="line number54 index53 alt1">
                                                                54</div>
                                                        <div class="line number55 index54 alt2">
                                                                55</div>
                                                        <div class="line number56 index55 alt1">
                                                                56</div>
                                                        <div class="line number57 index56 alt2">
                                                                57</div>
                                                        <div class="line number58 index57 alt1">
                                                                58</div>
                                                        <div class="line number59 index58 alt2">
                                                                59</div>
                                                        <div class="line number60 index59 alt1">
                                                                60</div>
                                                        <div class="line number61 index60 alt2">
                                                                61</div>
                                                        <div class="line number62 index61 alt1">
                                                                62</div>
                                                        <div class="line number63 index62 alt2">
                                                                63</div>
                                                        <div class="line number64 index63 alt1">
                                                                64</div>
                                                        <div class="line number65 index64 alt2">
                                                                65</div>
                                                        <div class="line number66 index65 alt1">
                                                                66</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="sql plain">package com.example.models;</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                         </div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="sql plain">import com.fasterxml.jackson.annotation.jsonignoreproperties;</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                         </div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="sql plain">import javax.persistence.*;</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="sql plain">import java.math.bigdecimal;</code>
</div>
                                                                <div class="line number7 index6 alt2">
                                                                         </div>
                                                                <div class="line number8 index7 alt1">
                                                                        <code class="sql plain">@jsonignoreproperties(value = {</code><code class="sql string">"hibernatelazyinitializer"</code><code class="sql plain">})</code>
</div>
                                                                <div class="line number9 index8 alt2">
                                                                        <code class="sql plain">@entity</code>
</div>
                                                                <div class="line number10 index9 alt1">
                                                                        <code class="sql keyword">public</code> <code class="sql plain">class </code><code class="sql color2">user</code> <code class="sql plain">{</code>
</div>
                                                                <div class="line number11 index10 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">@id</code>
</div>
                                                                <div class="line number12 index11 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">@generatedvalue(strategy = generationtype.auto)</code>
</div>
                                                                <div class="line number13 index12 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">private long id;</code>
</div>
                                                                <div class="line number14 index13 alt1">
                                                                         </div>
                                                                <div class="line number15 index14 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">@</code><code class="sql keyword">column</code>
</div>
                                                                <div class="line number16 index15 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">private string username;</code>
</div>
                                                                <div class="line number17 index16 alt2">
                                                                         </div>
                                                                <div class="line number18 index17 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">@</code><code class="sql keyword">column</code>
</div>
                                                                <div class="line number19 index18 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">private string </code><code class="sql keyword">name</code><code class="sql plain">;</code>
</div>
                                                                <div class="line number20 index19 alt1">
                                                                         </div>
                                                                <div class="line number21 index20 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">@</code><code class="sql keyword">column</code>
</div>
                                                                <div class="line number22 index21 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">private </code><code class="sql keyword">integer</code> <code class="sql plain">age;</code>
</div>
                                                                <div class="line number23 index22 alt2">
                                                                         </div>
                                                                <div class="line number24 index23 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">@</code><code class="sql keyword">column</code>
</div>
                                                                <div class="line number25 index24 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">private bigdecimal balance;</code>
</div>
                                                                <div class="line number26 index25 alt1">
                                                                         </div>
                                                                <div class="line number27 index26 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql plain">long getid() {</code>
</div>
                                                                <div class="line number28 index27 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql keyword">return</code> <code class="sql plain">id;</code>
</div>
                                                                <div class="line number29 index28 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number30 index29 alt1">
                                                                         </div>
                                                                <div class="line number31 index30 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql plain">void setid(long id) {</code>
</div>
                                                                <div class="line number32 index31 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">this.id = id;</code>
</div>
                                                                <div class="line number33 index32 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number34 index33 alt1">
                                                                         </div>
                                                                <div class="line number35 index34 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql plain">string getusername() {</code>
</div>
                                                                <div class="line number36 index35 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql keyword">return</code> <code class="sql plain">username;</code>
</div>
                                                                <div class="line number37 index36 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number38 index37 alt1">
                                                                         </div>
                                                                <div class="line number39 index38 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql plain">void setusername(string username) {</code>
</div>
                                                                <div class="line number40 index39 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">this.username = username;</code>
</div>
                                                                <div class="line number41 index40 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number42 index41 alt1">
                                                                         </div>
                                                                <div class="line number43 index42 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql plain">string getname() {</code>
</div>
                                                                <div class="line number44 index43 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql keyword">return</code> <code class="sql keyword">name</code><code class="sql plain">;</code>
</div>
                                                                <div class="line number45 index44 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number46 index45 alt1">
                                                                         </div>
                                                                <div class="line number47 index46 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql plain">void setname(string </code><code class="sql keyword">name</code><code class="sql plain">) {</code>
</div>
                                                                <div class="line number48 index47 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">this.</code><code class="sql keyword">name</code> <code class="sql plain">= </code><code class="sql keyword">name</code><code class="sql plain">;</code>
</div>
                                                                <div class="line number49 index48 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number50 index49 alt1">
                                                                         </div>
                                                                <div class="line number51 index50 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql keyword">integer</code> <code class="sql plain">getage() {</code>
</div>
                                                                <div class="line number52 index51 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql keyword">return</code> <code class="sql plain">age;</code>
</div>
                                                                <div class="line number53 index52 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number54 index53 alt1">
                                                                         </div>
                                                                <div class="line number55 index54 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql plain">void setage(</code><code class="sql keyword">integer</code> <code class="sql plain">age) {</code>
</div>
                                                                <div class="line number56 index55 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">this.age = age;</code>
</div>
                                                                <div class="line number57 index56 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number58 index57 alt1">
                                                                         </div>
                                                                <div class="line number59 index58 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql plain">bigdecimal getbalance() {</code>
</div>
                                                                <div class="line number60 index59 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql keyword">return</code> <code class="sql plain">balance;</code>
</div>
                                                                <div class="line number61 index60 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number62 index61 alt1">
                                                                         </div>
                                                                <div class="line number63 index62 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql plain">void setbalance(bigdecimal balance) {</code>
</div>
                                                                <div class="line number64 index63 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql plain">this.balance = balance;</code>
</div>
                                                                <div class="line number65 index64 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number66 index65 alt1">
                                                                        <code class="sql plain">}</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        userrepository.java类:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlightersql" id="highlighter_387681">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                        <div class="line number8 index7 alt1">
                                                                8</div>
                                                        <div class="line number9 index8 alt2">
                                                                9</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="sql plain">package com.example.dao;</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                         </div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="sql plain">import com.example.models.</code><code class="sql color2">user</code><code class="sql plain">;</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="sql plain">import org.springframework.data.jpa.repository.jparepository;</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="sql plain">import org.springframework.stereotype.repository;</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                         </div>
                                                                <div class="line number7 index6 alt2">
                                                                        <code class="sql plain">@repository</code>
</div>
                                                                <div class="line number8 index7 alt1">
                                                                        <code class="sql keyword">public</code> <code class="sql plain">interface userrepository extends jparepository&lt;</code><code class="sql color2">user</code><code class="sql plain">, long&gt; {</code>
</div>
                                                                <div class="line number9 index8 alt2">
                                                                        <code class="sql plain">}</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        usercontroller.java类:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlightersql" id="highlighter_548417">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                        <div class="line number8 index7 alt1">
                                                                8</div>
                                                        <div class="line number9 index8 alt2">
                                                                9</div>
                                                        <div class="line number10 index9 alt1">
                                                                10</div>
                                                        <div class="line number11 index10 alt2">
                                                                11</div>
                                                        <div class="line number12 index11 alt1">
                                                                12</div>
                                                        <div class="line number13 index12 alt2">
                                                                13</div>
                                                        <div class="line number14 index13 alt1">
                                                                14</div>
                                                        <div class="line number15 index14 alt2">
                                                                15</div>
                                                        <div class="line number16 index15 alt1">
                                                                16</div>
                                                        <div class="line number17 index16 alt2">
                                                                17</div>
                                                        <div class="line number18 index17 alt1">
                                                                18</div>
                                                        <div class="line number19 index18 alt2">
                                                                19</div>
                                                        <div class="line number20 index19 alt1">
                                                                20</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="sql plain">package com.example.controller;</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                         </div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="sql plain">import com.example.dao.userrepository;</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="sql plain">import com.example.models.</code><code class="sql color2">user</code><code class="sql plain">;</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="sql plain">import org.springframework.beans.factory.annotation.autowired;</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="sql plain">import org.springframework.web.bind.annotation.getmapping;</code>
</div>
                                                                <div class="line number7 index6 alt2">
                                                                        <code class="sql plain">import org.springframework.web.bind.annotation.pathvariable;</code>
</div>
                                                                <div class="line number8 index7 alt1">
                                                                        <code class="sql plain">import org.springframework.web.bind.annotation.restcontroller;</code>
</div>
                                                                <div class="line number9 index8 alt2">
                                                                         </div>
                                                                <div class="line number10 index9 alt1">
                                                                        <code class="sql plain">@restcontroller</code>
</div>
                                                                <div class="line number11 index10 alt2">
                                                                        <code class="sql keyword">public</code> <code class="sql plain">class usercontroller {</code>
</div>
                                                                <div class="line number12 index11 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql plain">@autowired</code>
</div>
                                                                <div class="line number13 index12 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">private userrepository userrepository;</code>
</div>
                                                                <div class="line number14 index13 alt1">
                                                                         </div>
                                                                <div class="line number15 index14 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">@getmapping(</code><code class="sql string">"/{id}"</code><code class="sql plain">)</code>
</div>
                                                                <div class="line number16 index15 alt1">
                                                                        <code class="sql spaces">  </code><code class="sql keyword">public</code> <code class="sql color2">user</code> <code class="sql plain">findbyid(@pathvariable long id) {</code>
</div>
                                                                <div class="line number17 index16 alt2">
                                                                        <code class="sql spaces">    </code><code class="sql color2">user</code> <code class="sql plain">oneuser = this.userrepository.getone(id);</code>
</div>
                                                                <div class="line number18 index17 alt1">
                                                                        <code class="sql spaces">    </code><code class="sql keyword">return</code> <code class="sql plain">oneuser;</code>
</div>
                                                                <div class="line number19 index18 alt2">
                                                                        <code class="sql spaces">  </code><code class="sql plain">}</code>
</div>
                                                                <div class="line number20 index19 alt1">
                                                                        <code class="sql plain">}</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
          最后的项目结构如图所示:</p>
<p>
        <img title="详解IDEA中便捷内存数据库H2的最简使用方式" alt="详解IDEA中便捷内存数据库H2的最简使用方式" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/cbb814cd4362c75e018a8978d55a55eb.jpg"></p>
<p>
          来看一下效果:</p>
<p>
        <img title="详解IDEA中便捷内存数据库H2的最简使用方式" alt="详解IDEA中便捷内存数据库H2的最简使用方式" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/e4ed422377fc11f53f100b4c14941453.jpg"></p>
<p>
        到此这篇关于详解idea中便捷内存数据库h2的最简使用方式的文章就介绍到这了,更多相关idea内存数据库h2内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!</p>
<p>
        原文链接:https://www.cnblogs.com/xuruiming/p/14493257.html</p>
頁: [1]
查看完整版本: 详解IDEA中便捷内存数据库H2的最简使用方式