I agree with others that solving TSP with DFJ constraint for subtour elimination does not require implementing a column generation-type algorithm. Instead, you need to implement a cutting plane algorithm or a branch & cut (B&C) algorithm. In the former, you start with the assignment problem formulation, solve the problem, and add the necessary DFJ cuts for the violated subtour elimination constraints. Then, you solve the resulting new problem (commonly, known as the master problem). This process is repeated until no subtour elimination constraint is violated. This process could be time-consuming as you are solving the master problem from scratch every time. The latter approach could enhance the performance as you are solving a MIP formulation using the branch and bound technique, but adding the DFJ cuts for the violated subtour elimination constraints whenever you found a new integer incumbent within the branch and bound tree.
From the implementation perspective, you can implement the cutting plane approach using a simple for loop within a programming language. The B&C approach is more tricky as it requires using the callbacks in CPLEX. In older versions of CPLEX, you should use the lazy constraint callback, but you might use the generic callback in the more recent versions. I've not come across any available example for either approach on the web, but you might find it with some luck. Alternatively, you might consult the benders ATSP example within the CPLEX example repository (the corresponding list for each programming language is available from here). The example is discussing how to solve the asymmetric TSP using B&C, but adding benders decomposition-type constraint, instead. Changing the code to accommodate for DFJ cuts would be relatively easy from there. You should keep in mind that finding the violated subtour elimination constraints for TSP is equivalent to a graph connectivity problem.