问题标签 [mybatis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hibernate - 有点不同的 GWT/GXT 持久化方法
我是 GWT/GXT 的新手,我正在为我未来的应用程序寻找最佳的持久性方式。我正在考虑这样做的许多变体,所以我决定在这里画一个图表:
所以我的结论是:
1)JPA/Hibernate 是最好的持久性框架,但它讨厌与 GWT 合作,特别是与 GXT 合作
2)JDBC 它只是一个例如笑话 :)
3) MyBatis 确实是从 db 获取数据的好工具,它快速、高效并且具有在 Hibernate 中没有的巨大可能性,但编写映射器是有史以来最糟糕的事情。
4) Dozzer 是服务器和用户资源的杀手。您必须编写大量样板代码,而它只是复制数据(有时很多)。不要不惜一切代价使用它!!!想象一下运行 100 个会话并且每个 bean 请求都必须使用 Dozzer 的服务器。
5) DTO - 类似情况。它是样板文件,它只是将一种数据类型转换为另一种数据类型。没有认真的数据处理。明智地使用服务器资源。
6)吉利德正在复制休眠豆状态。它可能很危险(只是从少数评论中听到),难以配置和与其他 IoC 框架集成(在我的例子中是 Guice)。
7)不要在客户端将POJO转化为BeanModel。JavaScript 真的很慢,它会减慢整个客户端的速度。
8)对我来说,也许对你来说的最佳实践:在图表上找到从 DB 到客户端 BaseModel bean 的最短路径。
9) MyBatis 允许将查询结果映射到 BaseModel bean(已测试),因此它们不需要多次转换,您根本不必关心它。唯一的事情是编写正确的映射。
这是我个人的意见,但我想知道你的意见。如果我错了,请解释我并给出缺点论点。我真的很想使用 Hibernate,或者您可能知道另一个 ORM 或类似于 MyBatis 框架,它可以让我直接映射到 BeanModel。
出于我的目的,我将开发应用程序,该应用程序将为我生成 BaseModel 样式的域类,其中包含映射器、验证器、编辑器、高级搜索面板、DAO、服务和 GWT-RPC 类。最好的解决方案是开发自己的脚手架:D。你怎么看待这件事?
spring - Spring和Mybatis多数据源设置
我的应用程序使用 Spring3+MyBatis3。我正在尝试为其设置多个数据源。设置如下:
在日志中,我发现了这条消息:
我用谷歌搜索并查看了 mybatis 手册,但找不到如何使用 mybatis 设置多个数据源的方法。有任何想法吗?
java - 为 MyBatis (iBatis) 设置 Schema
我正在调用SqlSession.openSession(Connection)
MyBatis。连接是一个 MySQL 数据库,并且没有在 URL 中指定模式(例如 jdbc:mysql://localhost)。我想在 MyBatis 中设置一个“默认模式”,用于执行映射查询,但我不知道如何。有人知道吗?
java - Inserting child objects in MyBatis
I have a very simple object graph that I want to store in a database using MyBatis. If I make a brand new object graph (a BatisNode with two details), how do I write code to be sure the child objects are created? Here are the details:
Schema:
Mapper:
java - MyBatis 中的映射组合
我在 MyBatis for Java 中的映射遇到了一些问题,希望能得到一些帮助。我的班级结构如下:
我的表看起来像这样 - 即它是从类结构中去规范化的。
我的工作插入语句能够使用 (bar.x, bar.y) 参数进行反规范化。
所以,问题:
当我执行我的选择时,我希望结果对象是一个引用 Bar 的 Foo 实例。
我认为我不能使用类型处理程序,因为它适用于单个列,并且关联似乎没有意义,因为“Bar”不是通过外键关系在数据库中显式表示的实体。
谁能告诉我推荐的方法吗?
谢谢!
java - 在 MyBatis 3/Java 上从缓存中反序列化对象的问题
所以我正在使用 MySQL/MyBatis3/Tomcat 做一个附带项目。我目前正致力于在 MyBatis 中开启缓存。当我第一次尝试打开缓存时,由于我的对象没有实现 Serializable,我遇到了异常。因此,在使用我试图缓存的对象实现 Serializable 之后;它似乎缓存得很好。
但; 当我在同样的情况下第二次点击我的 servlet,并且对象映射器尝试从缓存中反序列化我的对象时,我得到以下堆栈跟踪:
我不明白的另一件事是:
为什么它甚至试图加载类开始?它只需要转换为可序列化。值得注意的是,当我没有打开缓存时;一切都按预期工作。
mybatis - uuid 自定义类型处理程序 mybatis
我想管理一个带有 VARCHAR 主键的表,在映射的 java 对象中应该是一个 UUID。
我有我的sql-map-config.xml
:
user.xml
就像这样:
无论如何,我得到了这个例外:
似乎我的类型处理程序从未被调用(我让它记录了一下,但从不打印任何东西)。有什么不对?谢谢。
java - MyBatis 列映射
我正在使用 MyBatis 3.0.3 并且遇到问题:数据库中的某些列的名称带有下划线,这些列应该映射到实体属性(当然是在 camelCase 中)
不幸的是,我看不到任何方法可以明确地解决这个问题(就像在 JPA 中所做的那样 - @Column(name = "first_name"))。我可以在 select-clause 中为这些列创建别名(sush as first_name as firstName 等),但这看起来也很蹩脚。
有任何想法吗?谢谢。
java - MyBatis java和MySql局部变量
我是 Java 世界的新手。我对简单查询有疑问:
当我尝试使用 mybatis 运行它时,它就失败了:
如果我删除这一行:
那么一切都好。我究竟做错了什么?是jdbc还是mybatis的问题?如何在 mybatis 中使用 mysql @variables?有人有在 mybatis 中使用 MySql 局部变量的例子吗?
java - MyBatis 的 (iBatis) Abator 在哪个州?有没有其他工具?
我偶然发现了 Abator @ http://ibatis.apache.org/docs/tools/abator/,它有望成为 myBatis (iBatis) 映射文件的代码生成器。看起来很有希望,但我找不到有关项目状态的任何信息或任何下载链接。
有人知道,如果 Abator 仍在积极开发中吗?有继任者吗?