美文网首页Java学习笔记
IDEA使用数据库的正确姿势

IDEA使用数据库的正确姿势

作者: Angeladaddy | 来源:发表于2016-12-22 01:07 被阅读10618次

    众所周知,Eclipse可以根据数据表自动创建实体类,IDEA自然也有此功能,今晚试着用了一下,有一些地方还是小卡了一下,所以记录下来以便后读:

    1. 设置database
    点击这个按钮打开数据库面板

    然后点 加号-datasource-MySql,设置数据库连接

    数据库连接

    这一步和我们生成实体类没有关系,只是作为我们查看数据方便,我觉得可以代替navcat或者workbench了,直接在idea李连接数据库不要太酸爽。

    Paste_Image.png

    2.. 打开Persistence面板
    位置是View-Tool Windows- Persistence

    我在这一步卡了一下,找不到Persistence选项,百度知这是由于没有配置Hibernate(idea用hibernate实现数据库映射,和你工程用不用hibernate没有关系,所以这个一定是要安装的)。这个选项一般在新建工程的时候有提供,但是我建立的是springboot项目,没有提示

    右键工程,Modules-点右边的加号,添加JPA(注意不是spring data jpa)

    会下载一些jar包到工程里,完毕后再次打开View-Tool Windows就能看到Persistence了,选择打开。

    在persistence面板中右键你的工程,按上面选择,将会打开import database schema面板 箭头所示特别注意

    上面红色箭头所指的文件是要自己建立的,其实就是idea用的hibernate的配置文件,放在resources文件夹下,我贴出来:

    persistence.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
                 http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
    
        <!--必须要有name属性,不能为空 -->
        <persistence-unit name="monodevJPA" transaction-type="RESOURCE_LOCAL">
            <mapping-file>com/monodev/mvcstudy/repository/UserEntity.xml</mapping-file>
            <class>com.monodev.mvcstudy.repository.UserEntity</class>
    
    
            <!--厂商的特定属性 -->
            <properties>
                <!--配置Hibernate方言 -->
                <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" />
                <!--配置数据库驱动 -->
                <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" />
                <!--配置数据库用户名 -->
                <property name="hibernate.connection.username"/>
                <!--配置数据库密码 -->
                <property name="hibernate.connection.password"/>
                <!--配置数据库url -->
                <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/sampledb" />
                <!--设置外连接抓取树的最大深度 -->
                <property name="hibernate.max_fetch_depth" value="3" />
                <!--自动输出schema创建DDL语句 -->
                <property name="hibernate.hbm2ddl.auto" value="update" />
            </properties>
        </persistence-unit>
    
    </persistence>
    

    这样就可以了,点击确定后将在你制定的位置生成数据库对应的实体类,还有对应的xml文件;然后就可以编写service了

    Paste_Image.png

    什么?实体类自动映射数据库表?那当我什么都没说。。。

    相关文章

      网友评论

        本文标题:IDEA使用数据库的正确姿势

        本文链接:https://www.haomeiwen.com/subject/zrscvttx.html