1.引入依赖:
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-agroal</artifactId>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-jdbc-mysql</artifactId>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-spring-data-jpa</artifactId>
</dependency>
2.实体对象:
@Entity(name = "x_user")
public class XUser {
<span class="hljs-meta">@Id</span>
<span class="hljs-keyword">private</span> Long id;
<span class="hljs-meta">@Column</span>
<span class="hljs-meta">@NotNull(message = "名称不能为空")</span>
<span class="hljs-keyword">private</span> String name;
<span class="hljs-meta">@Column</span>
<span class="hljs-meta">@NotNull(message = "年龄不能为空")</span>
<span class="hljs-keyword">private</span> Integer age;
<span class="hljs-meta">@JsonbDateFormat(value = "yyyy-MM-dd HH🇲🇲ss")</span>
<span class="hljs-meta">@Column</span>
<span class="hljs-meta">@NotNull(message = "生日不能为空")</span>
<span class="hljs-keyword">private</span> LocalDateTime birthday;</code></pre>
3.配置数据库连接:
quarkus.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC
quarkus.datasource.driver=com.mysql.cj.jdbc.Driver
quarkus.datasource.username=root
quarkus.datasource.password=123456
quarkus.datasource.min-size=8
quarkus.datasource.max-size=8
4.直接使用数据库连接池进行操作数据库:
@Inject
AgroalDataSource dataSource;
@Path("save")
@POST
@Cut
public Object save(@Valid XUser xUser) {
try {
Connection connection = dataSource.getConnection();
PreparedStatement preparedStatement = connection.prepareStatement("insert into x_user values(?,?,?,?)");
preparedStatement.setLong(1, LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8")));
preparedStatement.setString(2, xUser.getName());
preparedStatement.setInt(3, xUser.getAge());
preparedStatement.setObject(4, xUser.getBirthday());
int count = preparedStatement.executeUpdate();
if (count < 1) {
return "fail";
}
} catch (SQLException e) {
e.printStackTrace();
}
return "ok";
}
5.使用jpa操作数据库连接池:
public interface UserMapper extends CrudRepository<XUser, Long> {
}
@Inject
UserMapper userMapper;
@Path("list")
@GET
@Cut
public Object list() {
return userMapper.findAll();
}
本文由 GY 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为:
2021/11/19 15:21