Quyết định di chuyển một trong các dự án của tôi từ iBatis sang MyBatis và gặp phải sự cố khi chèn.MyBatis 3.0.1 chèn vấn đề
mapper xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="bap.persistance.interfaces.ArticleMapper">
<insert id="insertTestA">
insert into test_a (cookie) values('tomek pilot');
</insert>
</mapper>
mapper java file:
public interface ArticleMapper {
void insertTestA();
}
thực hiện ánh xạ:
String resource = "bap/persistance/MyBatis_xml/MyBatisConfig.xml";
....
...
public void createArticle(Article article) throws IOException {
Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory sqlSessionFactory =
new SqlSessionFactoryBuilder().build(reader);
SqlSession session = sqlSessionFactory.openSession();
try{
ArticleMapper mapper = session.getMapper(ArticleMapper.class);
mapper.insertTestA();
} catch(Exception e){
e.printStackTrace();
} finally{
session.close();
}
return article.getId();
}
...
... line omitted for brevity.
bảng được sử dụng:
CREATE TABLE test_a
(
cookie text
)
WITH (OIDS=FALSE);
Tôi đang cố gắng chạy ứng dụng này với mybatis 3.0.1, mùa xuân 3.0.3, postgresql 8.3 (sử dụng postgresql-8.4-701.jdbc3.jar)
Tôi tin rằng tất cả thiết lập boilerplate được thiết lập đúng cách (tôi có thể thực hiện một lựa chọn đối với một bảng tốt.
Tôi đã thử nghiệm INSER bằng tay và nó hoạt động tốt (insert into test_a (cookie) values('some stuff');
)
Đối với một số lý do chèn không thực hiện và không có vết đống xuất hiện :-(
gợi ý Bất kỳ sẽ được đánh giá cao nhất: -)
... có ai đủ tốt để tạo thẻ cho 'MyBatis' không? Tôi chỉ không có danh tiếng để làm điều đó ;-) – vector
tắt chủ đề Tôi biết, nhưng tôi phải đề nghị các plugin guân mybatis, nó làm giảm mã tấm nồi hơi và quản lý phiên SQL cho bạn. Nó đá !! http://code.google.com/p/mybatis/wiki/Guice – Andy