All Projects → mybatis → Mybatipse

mybatis / Mybatipse

Licence: epl-1.0
Eclipse plugin adding support for MyBatis SQL Mapper Framework.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Mybatipse

Mybatis Generator Plugin
Mybatis Generator 代码生成插件拓展,增加:查询单条数据插件(SelectOneByExamplePlugin)、MySQL分页插件(LimitPlugin)、数据Model链式构建插件(ModelBuilderPlugin)、Example Criteria 增强插件(ExampleEnhancedPlugin)、Example 目标包修改插件(ExampleTargetPlugin)、批量插入插件(BatchInsertPlugin)、逻辑删除插件(LogicalDeletePlugin)、数据Model属性对应Column获取插件(ModelColumnPlugin)、存在即更新(UpsertPlugin)、Selective选择插入更新增强插件(SelectiveEnhancedPlugin)、Table增加前缀插件(TableSuffixPlugin)、自定义注释插件(CommentPlugin)、增量插件(IncrementsPlugin)、查询结果选择性返回插件(SelectSelectivePlugin)、乐观锁插件(OptimisticLockerPlugin)、LombokPlugin等拓展。
Stars: ✭ 1,038 (+232.69%)
Mutual labels:  mybatis, plugin
Firebasepushnotificationplugin
Firebase Push Notification Plugin for Xamarin iOS and Android
Stars: ✭ 307 (-1.6%)
Mutual labels:  plugin
Coffeescript Sublime Plugin
Syntax highlighting and checking, commands, shortcuts, snippets, compilation and more.
Stars: ✭ 296 (-5.13%)
Mutual labels:  plugin
Jdt Codemining
Eclipse plugin for JDT Java CodeMining
Stars: ✭ 306 (-1.92%)
Mutual labels:  eclipse
Validate
A simple jQuery plugin to validate forms.
Stars: ✭ 298 (-4.49%)
Mutual labels:  plugin
Manong Ssm
基于SSM框架的Java电商项目
Stars: ✭ 306 (-1.92%)
Mutual labels:  mybatis
Lsp4j
A Java implementation of the language server protocol intended to be consumed by tools and language servers implemented in Java.
Stars: ✭ 293 (-6.09%)
Mutual labels:  eclipse
Red
RED - Robot Editor
Stars: ✭ 310 (-0.64%)
Mutual labels:  eclipse
Super Progressive Web Apps
SuperPWA helps to convert your WordPress website into Progressive Web Apps instantly. PWA (Progressive Web Apps) demo at : https://superpwa.com and Plugin :
Stars: ✭ 304 (-2.56%)
Mutual labels:  plugin
Lemarket
基于Java SSM框架和layui构建的手机商城系统(包含前后台)
Stars: ✭ 302 (-3.21%)
Mutual labels:  mybatis
Intellij Elm
Elm language support for IntelliJ, WebStorm, PhpStorm and PyCharm (JetBrains)
Stars: ✭ 305 (-2.24%)
Mutual labels:  plugin
Smartshape2d
A 2D Terrain Tool for Godot 3.2
Stars: ✭ 285 (-8.65%)
Mutual labels:  plugin
Vimpyter
Edit your Jupyter notebooks in Vim/Neovim
Stars: ✭ 308 (-1.28%)
Mutual labels:  plugin
Jetty.project
Eclipse Jetty® - Web Container & Clients - supports HTTP/2, HTTP/1.1, HTTP/1.0, websocket, servlets, and more
Stars: ✭ 3,260 (+944.87%)
Mutual labels:  eclipse
Guns
Guns基于SpringBoot 2,致力于做更简洁的后台管理系统,完美整合springmvc + shiro + mybatis-plus + beetl!Guns项目代码简洁,注释丰富,上手容易,同时Guns包含许多基础模块(用户管理,角色管理,部门管理,字典管理等10个模块),可以直接作为一个后台管理系统的脚手架!
Stars: ✭ 3,327 (+966.35%)
Mutual labels:  mybatis
Nord Jetbrains
An arctic, north-bluish clean and elegant JetBrains IDE UI and editor color theme.
Stars: ✭ 293 (-6.09%)
Mutual labels:  plugin
Speech recognition
A Flutter plugin to use speech recognition on iOS & Android (Swift/Java)
Stars: ✭ 302 (-3.21%)
Mutual labels:  plugin
Pydev
Python IDE for Eclipse
Stars: ✭ 306 (-1.92%)
Mutual labels:  eclipse
Chartjs Plugin Streaming
Chart.js plugin for live streaming data
Stars: ✭ 310 (-0.64%)
Mutual labels:  plugin
Grafana Diagram
A Grafana plugin to visualize metrics in a diagram using flow charts, gantt charts, sequence diagrams, or class diagrams
Stars: ✭ 310 (-0.64%)
Mutual labels:  plugin

MyBatipse : Eclipse plugin for MyBatis

MyBatis is a popular SQL Mapper framework.
And MyBatipse is an Eclipse plug-in which provids content assists and validations when editing MyBatis related files.

Features

XML Editor Enhancements

Auto-completion

  • Mapper namespace : Calculated from the path.
    autocomplete namespaceautocomplete namespace

  • Java class/Type alias : Propose Java classes and Type Aliases (translucent icons). Camelcase match is supported. [1] [2]
    autocomplete class autocomplete class

  • Java property : Propose properties of the parent java class. Nested properties are supported.
    autocomplete property autocomplete property

  • Statement ID : If corresponding mapper interface exists, propose the method name as a statement ID.
    autocomplete statement id

  • Reference to resultMap/select/sql : Propose ID of the referenced resultMap/select/sql. External reference is supported (blue icons).
    autocomplete reference

  • Parameter properties : #{} and ${} in select/insert/udpate/delte statements. Also works in some attributes.
    autocomplete properties autocomplete properties 2

  • javaType, jdbcType, typeHandler in #{}
    autocomplete jdbcType

  • Result elements in resultMap/collection/association : Generates elements for the parent java class properties.
    autocomplete results

  • setting name and value in XML config.
    autocomplete setting autocomplete setting

  • [1] For better performance, classes in the application libraries (loaded as JARs) are listed only when at least one package segment is specified.

  • [2] There is a limitation for the type alias support. Basically, if type aliases are registered using Java API, they are not automatically detected. As a workaround, you can register type aliases in MyBatipse's preference. See the Configuration section.

Hyperlinks

  • To referenced resultMap/select/sql element. External reference is supported.
    link to external reference
  • From Java mapper interface to XML mapper element.
    link to xml mapper
  • From Java mapper method to XML mapper element.
    link to xml statement
  • From XML statement id to Java mapper method.
    link to java method
  • Result map id or select statement id specified in Java annotation.

Validation

  • Missing TypeAlias, Java class/property.
  • Missing resultMap/select/sql ID.
  • etc.
    refid error problem view

Mapper Declaration View

Java Editor Enhancements

Auto-completion

  • Parameter properties : #{} and ${} in select/insert/udpate/delte annotations. autocomplete properties in java
  • Return type properties in @Result
    autocomplete return type properties in java
  • keyProperty in @Options and @SelectKey
    autocomplete return type properties in java
    autocomplete return type properties in java
  • javaType, jdbcType, typeHandler in #{} : See the XML example.
  • Reference to resultMap in @ResultMap and resultMap attribute of @Arg
    autocomplete resultmap annotation
  • select attribute of @Arg, @Many and @One
    autocomplete select

Quick Assist

Put the cursor on the statement method name and press cmd + 1 (or ctrl + 1) to trigger Quick Assist.

  • You can add @Param to method parameters.
    param-annotation1
    param-annotation2
  • You can copy annotation statement into the clipboard. param-annotation1
  • You can move annotation statement to XML mapper.
    move-statement
  • You can move @Results annotation to <resultMap /> in XML mapper.
    move-resultmap

Validation

  • @ResultMap : invalid resultMap ID.
  • select attribute of @One or @Many : invalid statement ID.

Rename Refactoring

  • Renaming resultMap/statement/sql ID updates its references in Java and XML mappers.
  • In XML mapper, right click -> Refactor -> Rename MyBatis element. param-annotation1
  • In Java mapper, right click -> MyBatis Refactor -> Rename MyBatis element. param-annotation1
  • Renaming a Java mapper method also updates its references.

Miscellaneous

  • Wizard to create a new XML mapper file.
    wizard-xml-mapper

  • Smart-copy menu in Console View to copy SQL statement in an executable form. For example, if you select and copy the following debug output ...
    smart-copy-console
    ... and the following statement is copied to the clipboard (be sure to include the first ==> and <== in the selection as the image above).

    insert into users values(2, 'User2')
    

Configuration

XML mapper location

  • MyBatipse searches XML mapper files under your project's Source Folder. To make a directory Source Folder, right click the directory in the package explorer and choose Build Path -> Use as Source Folder from the menu.

MyBatis Nature

  • By default, each file is validated when it's saved, but you would want to validate the XML mapper when the related Java classes are updated as well. For that purpose, MyBatipse provides a custom nature MyBatis Nature.
    To add the nature, right click the project in the package explorer and choose Configure -> Add MyBatis Nature from the menu.
    nature

Annotation Processing

  • To validate annotation value, you need to enable annotation processing. Open Project -> Properties and select Java Compiler -> Annotation Processing in the left column. Check both Enable annotation processing and Enable processing in editor.

Type Alias

  • Type alias are automatically detected if they are registered using XML config file (both mybatis and mybatis-spring config is supported).
    If you register type aliases in Java code, MyBatipse cannot detect them. As a workaround, you can register custom type aliases in the project setting (Open Project -> Properties menu and select MyBatipse from the left column).
    type aliases
    For example, with the above settings:
    • The first entry registers all the classes in com.example.domain package as type aliases. You can use wildcard to specify multiple packages (e.g. com.example.*.domain).
    • The second entry registers the single class domain.Person.
    • The third entry registers the single class domain.SomeLongNamedBean under the alias SomeBean.
    • Note that, in any case, MyBatipse respects @Alias annotation if it exists.

Java 8 -parameters compiler option support

  • If 'Store information about method parameters' option is enabled in the Java Compiler -> Classfile Generation setting, MyBatipse proposes the declared method parameter names.
    xml proposal order

Tips

  • To move MyBatis proposals to the top of the XML proposal list, quit Eclipse and open the following file in the workspace: .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.xml.ui.prefs Find the line started with xml_content_assist_default_page_sort_order= and insert net.harawata.mybatis.proposalCategory.xml\u0000 right after the equal sign.
    xml proposal order

Installation

There are several ways to install MyBatipse.

  • Drag this button drag-to-install button from browser to your Eclipse workbench (i.e. window).
  • Choose Eclipse Marketplace... in Help menu of your Eclipse and search MyBatipse.
  • Choose Install New Software... in Help menu and enter the following URL.
    http://dl.bintray.com/harawata/eclipse
  • For offline installation, see here.

Bugs, questions, suggestions, etc.

Please use the issue tracker.

License

MyBatipse is licensed under Eclipse Public License 1.0.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].