Я вижу, что этот вопрос много. Да, Tomcat 7 автоматически отменяет регистрацию, но это ДЕЙСТВИТЕЛЬНО контролирует ваш код и хорошую практику кодирования? Конечно, вы хотите знать, что у вас есть правильный код, чтобы закрыть все ваши объекты, отключить потоки пула подключений к базе данных и избавиться от всех предупреждений.
Вот как я это делаю.
Шаг 1: зарегистрируйте прослушиватель
web.xml
<listener>
<listener-class>com.mysite.MySpecialListener</listener-class>
</listener>
Шаг 2: Внедрить слушателя
com.mysite.MySpecialListener.java
public class MySpecialListener implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent sce) {
// On Application Startup, please…
// Usually I'll make a singleton in here, set up my pool, etc.
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
// On Application Shutdown, please…
// 1. Go fetch that DataSource
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource datasource = (DataSource)envContext.lookup("jdbc/database");
// 2. Deregister Driver
try {
java.sql.Driver mySqlDriver = DriverManager.getDriver("jdbc:mysql://localhost:3306/");
DriverManager.deregisterDriver(mySqlDriver);
} catch (SQLException ex) {
logger.info("Could not deregister driver:".concat(ex.getMessage()));
}
// 3. For added safety, remove the reference to dataSource for GC to enjoy.
dataSource = null;
}
}
Пожалуйста, не стесняйтесь комментировать и / или добавить ...
Если вы откроете пункт меню File-> Source Control-> Find In Source Control-> Changesets ... (вы должны быть в Source Control Explorer, чтобы это было доступно). Откроется диалоговое окно «Найти наборы изменений». Затем вы можете выполнить поиск наборов изменений по дате в заданной исходной папке.
Обратной стороной является то, что затем вам нужно щелкнуть кнопку сведений для каждого набора изменений, чтобы увидеть, какие файлы были изменены (двойной щелчок закрывает диалоговое окно).
Если вы ищете изменений, это может быть лучшим способом. Это позволит более интерактивный поиск. Если вы пытаетесь распечатать отчет для прочтения другими (или для документации по изменениям), то лучше использовать командную строку, показанную Алексом.
tf history -noprompt -server:http://tfsserver:8080/tfs/DefaultCollection $/TeamProjectName/path
-version:D2006-12-01T01:01:01Z~D2006-12-13T20:00:00Z -recursive
-format:detailed -login:DOMAIN\name,password"
, измените даты в флаге версии на то, что вам нужно, и вы получите то, что хотите.