我想制作一个spring-boot启动器,所以我需要获取应用程序main-class的包名。 我怎么才能得到它? 有时,您可以使用侦听器进行spring引导,但必须在application.properties中进行配置。
答案 0 :(得分:0)
通过这种方法,您可以获得当前类的包。
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection("Data Source=(LocalDB)\\v11.0;AttachDbFilename=|DataDirectory|\\Database.mdf;Integrated Security=True");
try
{
cn.Open();
SqlCommand cmd = new SqlCommand("create table Employee (empno int,empname varchar(50),salary money);", cn);
cmd.ExecuteNonQuery();
lblAlert.Text = "SucessFully Connected";
cn.Close();
}
catch (Exception eq)
{
lblAlert.Text = eq.ToString();
}
}
答案 1 :(得分:0)
您可以使用以下事实:主类可能会用@SpringBootApplication
进行注释,然后在Spring Context中搜索该类。实现类似的东西:
@Service
public class ApplicationFinder {
@Autowired private ApplicationContext context;
public String findBootClass() {
Map<String, Object> candidates = context.getBeansWithAnnotation(SpringBootApplication.class);
return candidates.isEmpty() ? null : candidates.values().toArray()[0].getClass();
}
}
一旦有了类名,就可以对其进行字符串切片以提取包。
答案 2 :(得分:0)
import org.springframework.boot.autoconfigure.AutoConfigurationPackages;
import org.springframework.context.ApplicationContext;
AutoConfigurationPackages.get(context.getAutowireCapableBeanFactory())