一、字符串被替换
//jdbc.properties
driver = com.mysql.cj.jdbc.Driver
url = jdbc:mysql://localhost:3306/example
username = root
password = 123456
@Configuration
@PropertySource("classpath:jdbc.properties")
public class DataSourceConfig {
@Value("${driver}")
private String driver;
@Value("${url}")
private String url;
@Value("${username}")
private String username;
@Value("${password}")
private String password;
@Bean("dataSource")
public DataSource getDataSource() throws PropertyVetoException {
ComboPooledDataSource dataSource = new ComboPooledDataSource();
System.out.println(driver+url+username+password);//打印
dataSource.setDriverClass(driver);
dataSource.setJdbcUrl(url);
dataSource.setUser(username);
dataSource.setPassword(password);
return dataSource;
}
@Bean("jdbcTemplate")
public JdbcTemplate getJdbcTemplate() throws PropertyVetoException, SQLException {
return new JdbcTemplate(getDataSource());
}
}
执行测试,发现用户名root被替换成了计算机名(迷惑)
将username改为user又执行正确了,取名的时候得详细一些。
SpringMVC 配置完成后访问不了Controller
<!--springmvc.xml-->
<bean id="mvcHelloController" class="Controller.MvcHelloController" />
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/mvcHello">mvcHelloController</prop>
</props>
</property>
</bean>
<!-- <mvc:annotation-driven/>-->
<!-- <context:component-scan base-package="Controller"/>-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/view/" />
<property name="suffix" value=".jsp" />
</bean>
<!--web.xml-->
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
检查好了所有的东西,最后在Tomcat LocalHost Log中发现了报错信息
class org.springframework.web.servlet.DispatcherServlet cannot be cast to class jakarta.servlet.Servlet
因为我使用了最新的Tomcat10,换回Tomcat9就万事如意了,暂时还不知道为啥。