zoukankan      html  css  js  c++  java
  • idea-plugin-easycode

    1.背景

    在练习使用mybatis-generator时候,无意间看到博文esaycode(代码神器),https://www.jianshu.com/p/e4192d7c6844,试验完,感觉这个工具和mybatis-generator工具类似。
    

    2.使用步骤

    <1>idea安装easy code插件;
    <2>使用idea的database功能,连接到数据库,支持oracle、mysql;
    <3>对应table,使用generate code;
    <4>修改代码,自动生成很难完全满足需求,仍然需要修改(比如使用ojdbc,生成的语法居然是mysql的分页语法,所以这个工具只是帮助做一些简单的任务)
    

    3.测试代码

    3.1工程目录

    3.2配置文件

    datasource.properties

    jdbc.databaseurl=jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.13.44)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=db1)))
    jdbc.driver=oracle.jdbc.driver.OracleDriver
    jdbc.username=admin
    jdbc.password=123
    

    mybatis-config.xml

    <?xmlversion="1.0"encoding="UTF-8"?>
    <!DOCTYPEconfigurationPUBLIC"-//mybatis.org//DTDConfig3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd">
    <configuration>
    <propertiesresource="config/datasource.properties"></properties>
     
    <typeAliases>
    <!--别名方式1,一个一个的配置type中放置的是类的全路径,alias中放置的是类别名
    <typeAliasetype="com.mybatis.demo.Entity.User"alias="UserBean"/>-->
    <!--别名方式2,自动扫描,将JAVA类的类名作为类的类别名-->
    <!--<packagename="com.mybatis.demo.Entity"/>-->
    <typeAliasalias="TaskResultRecord"type="com.common.easycode.entity. Record"/>
    </typeAliases>
     
    <!--配置mybatis运行环境-->
    <environmentsdefault="development">
    <environmentid="development">
    <!--type="JDBC"代表使用JDBC的提交和回滚来管理事务-->
    <transactionManagertype="JDBC"/>
     
    <!--mybatis提供了3种数据源类型,分别是:POOLED,UNPOOLED,JNDI-->
    <!--POOLED表示支持JDBC数据源连接池-->
    <!--UNPOOLED表示不支持数据源连接池-->
    <!--JNDI表示支持外部数据源连接池-->
    <dataSourcetype="POOLED">
    <propertyname="driver"value="${jdbc.driver}"/>
    <propertyname="url"value="${jdbc.databaseurl}"/>
    <propertyname="username"value="${jdbc.username}"/>
    <propertyname="password"value="${jdbc.password}"/>
    </dataSource>
    </environment>
    </environments>
     
     
    <mappers>
    <!--映射文件方式1,一个一个的配置-->
    <mapperresource="mapper/RecordDao.xml"/>
    <!--映射文件方式2,自动扫描包内的Mapper接口与配置文件-->
    <!--<packagename="com.mybatis.demo"/>-->
    </mappers>
     
    </configuration>
    

    pom.xml

    <dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.4.6</version>
    </dependency>
     
    <dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc7</artifactId>
    <version>12.1.0.2</version>
    </dependency>
    
    3.3.测试代码
    publicclassTaskResultRecordService{
     
    publicstaticvoidmain(String[]args){
    /*
    测试easycode
    */
    try{
        Reader reader=Resources.getResourceAsReader("config/mybatis-config.xml");
        SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(reader);
        SqlSession session=sessionFactory.openSession();
        RecordDao recordDao=session.getMapper(RecordDao.class);
        recordDAO.selectById...
    
        session.commit();
    }catch(IOExceptione){
    e.printStackTrace();
    }
    }
    }
    

    4.注意事项

    1.使用ojdbc6的时候出现了: java.lang.ArrayIndexOutOfBoundsException: 9 ;【解决办法】使用ojdbc7
    <dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc7</artifactId>
    <version>12.1.0.2</version>
    </dependency>
    
    
  • 相关阅读:
    springboot 前后端分离开发 从零到整(三、登录以及登录状态的持续)
    鼠标跟随
    sublime_text编辑器下载安装使用
    实现el-dialog的拖拽,全屏,缩小功能
    vue 动态添加路由 require.context()
    Vue JsonView 树形格式化代码插件
    利用vue-gird-layout 制作可定制桌面 (二)
    利用vue-gird-layout 制作可定制桌面 (一)
    通过js 实现 向页面插入js代码并生效,和页面postMessage通讯
    简单实现一个ES5 Vue Dialog 插件
  • 原文地址:https://www.cnblogs.com/leeethan/p/12197424.html
Copyright © 2011-2022 走看看