java线程中使用mysql连接查询数据库

在一个一直运行的类中,由于匹配到特定的任务就需要做特定的事,这个步骤我打算直接在当前类中创建一个线程new Thread().start();做操作,然后通过线程的构造函数把数据库连接对象jdbcTemplate传过去直接查数据库对结果做处理,这样做符号规范吗,或者有没有什么更好的方法

不建议这样做,一般不符合开发规范,如果这样的话,你想想在业务量多的情况下,多个线程如果不控制,数据库连接会将数据库服务器爆掉的,会影响业务的
常规做法:数据库连接池(durid了解一下),据某些统计哈,真正用来做查询的资源不超过整个查询数据库的生命周期的30%,大部分时间都用开创建连接关闭连接等操作,如果这个时候建立数据库连接池的话,可以有效的将这部分时间释放掉
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-09-20
这个不符合企业级开发规范,线程调起是个异步的过程,你根本不知道未来的结果会怎么样。
而且事务也不好控制,执行的结果可想而知。你可以使用接口的方式去处理
第2个回答  2019-09-19
其实就是异步线程操作,数据库这里连接池不用我说了,关键是new Thread这一步你也需要自定义一个线程池,防止内存溢出,然后就是线程的安全问题。没有什么规范,只有安全
第3个回答  2019-09-16
你可以测试一下执行的时间。
看看瓶颈在哪里,可能是数据库的操作sql语句的问题。
这个和多线程应该没有太大的关系。本回答被网友采纳
相似回答