```
feat(playwright): 添加浏览器配置类并集成Playwright 新增BrowserConfig配置类,用于创建和管理Playwright实例。 移除DesktopApplication中冗余的UI示例代码和旧版PlaywrightService。 添加FtbCrawlNetBase接口及其实现类FtbCrawlNetMt,用于执行Cookie拦截逻辑。更新PlatformSelectionView以支持美团平台的连接功能,并通过SpringContext获取爬虫服务。 调整module-info.java以开放和导出新增模块包路径,确保Spring能够正确注入依赖。 ```
This commit is contained in:
44
src/main/java/com/fantaibao/config/SpringContext.java
Normal file
44
src/main/java/com/fantaibao/config/SpringContext.java
Normal file
@@ -0,0 +1,44 @@
|
||||
package com.fantaibao.config;
|
||||
|
||||
import org.springframework.beans.BeansException;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.ApplicationContextAware;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class SpringContext implements ApplicationContextAware {
|
||||
|
||||
|
||||
private static ApplicationContext applicationContext;
|
||||
|
||||
@Override
|
||||
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
|
||||
SpringContext.applicationContext = applicationContext;
|
||||
}
|
||||
|
||||
public static ApplicationContext getApplicationContext() {
|
||||
assertApplicationContext();
|
||||
return applicationContext;
|
||||
}
|
||||
|
||||
public static <T> T getBean(String beanName) {
|
||||
assertApplicationContext();
|
||||
try {
|
||||
return (T) applicationContext.getBean(beanName);
|
||||
} catch (Exception e) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static <T> T getBean(Class<T> beanName) {
|
||||
assertApplicationContext();
|
||||
return (T) applicationContext.getBean(beanName);
|
||||
}
|
||||
|
||||
private static void assertApplicationContext() {
|
||||
if (SpringContext.applicationContext == null) {
|
||||
throw new RuntimeException("applicaitonContext属性为null,请检查是否注入了SpringContextHolder!");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user