No, a single database connection should not be used for concurrent requests. You should create a connection pool (basically a set of reusable connections), take a connection from the pool as needed, and then release it to the pool.
Don't do it yourself!
Since you have Tomcat, you can configure a JDBC data source and then use JNDI to get a reference to this data source. A data source will provide you with connections, without you having to create connections by yourself. Tomcat will pool (activate, maintain and dispose) connections under the hood.
Alternatively, you can use a custom connection pooler like c3p0, but I strongly advice you to use the facilities provided by your server.
If, for any reason, you have to deploy your product within a few minutes (so you have no time to set-up a data source), then you better open and close connections for every request - which is wasteful - rather than sharing a single connection across all requests.