在许多projects.If Mybatis的orm中采用MyBatis,可以快速地将基于Spring框架的应用程序转换为基于Quarkus框架的应用程序。
发布于 2020-09-28 19:20:48
Quarkus问题板内部有一个扩展建议:https://github.com/quarkusio/quarkus/issues/1958
你可以在它上面用+1反应来表示你的兴趣并跟随它。
甚至有一个公关为它提供支持,但几个月来似乎没有取得任何进展。
发布于 2021-10-10 12:15:57
当然,您可以将Mybatis集成到quarkus系统中。
quarkus-mybatis 0.0.1第一版于2020年10月发布。最新版本的quarkus-mybatis 0.0.9在Jun 2021上发布。
许多公司在他们的技术堆栈中使用Quarkus,包括Backbase,Bit,JustChunks.Vodafone希腊用Quarkus取代了Spring Boot。
演示:
使用https://code.quarkus.io/创建新的Quarkus项目
将quarkus-mybatis扩展添加到您的项目中。在这里,我使用Maven进行依赖项管理。
Maven
<dependency>
<groupId>io.quarkiverse.mybatis</groupId>
<artifactId>quarkus-mybatis</artifactId>
<version>0.0.9</version>
</dependency>数据源配置:
application.properties
quarkus.datasource.db-kind = h2
quarkus.datasource.username = sa
# quarkus.datasource.password =
quarkus.datasource.jdbc.url = jdbc:h2:mem:test
quarkus.mybatis.initial-sql=schema.sqlschema.sql:
create table users
(
id integer not null,
firstName varchar(255) not null,
lastName varchar(255) not null,
emailId varchar(255) not null,
primary key(id)
);创建用户模型:
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public class User {
private long id;
private String firstName;
private String lastName;
private String emailId;
}创建用户MyBatis存储库:
@Mapper
public interface UserRepository {
@Select("select * from users")
public List<User> findAll();
@Select("SELECT * FROM users WHERE id = #{id}")
public User findById(long id);
@Delete("DELETE FROM users WHERE id = #{id}")
public int deleteById(long id);
@Insert("INSERT INTO users(id, firstName, lastName,emailId) " +
" VALUES (#{id}, #{firstName}, #{lastName}, #{emailId})")
public int insert(User user);
@Update("Update users set firstName=#{firstName}, " +
" lastName=#{lastName}, emailId=#{emailId} where id=#{id}")
public int update(User user);
}端点:
@GET
@Path("/{id}")
@Produces(MediaType.APPLICATION_JSON)
public User getUser(@PathParam("id") Long id) {
return userResource.findById(id);
}
@PUT
@Consumes(MediaType.APPLICATION_JSON)
public void updateUser(User user) {
userResource.update(user);
}
@POST
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public void addUser(User user) {
userResource.insert(user);
}
@DELETE
@Path("/{id}")
public void deleteUser(@PathParam("id") Long id) {
userResource.deleteById(id);
}
}构建应用程序jar文件: mvn clean包
启动应用程序: java -jar quarkus-run.jar
https://stackoverflow.com/questions/64099047
复制相似问题