SpringBoot 默认使用
Servlet3.0
可以没有web.xml
没有任何的 xml 如果我们想要做一些自定义的配置 比如数据库相关的配置,该如何配置可以使用
Java
的配置方式
配置的演变
Spring1.0 时代:Spring 的配置都是使用
xml
的方式 Spring2.0 时代:引入了注解
,并未完全替代xml
Spring3.0
及以后:3.0 以后 Spring 的注解已经非常的完善了
Java的配置
SpringBoot 当中 Java的配置方式主要靠
Java类
和一些注解
代替xml
注解名称 | 作用 |
---|---|
@Configuration | 标记一个类,作为 |
@Bean | 标记在方法上,将方法的返回值,加入到 |
@value | 属性值注入,也就是设置值 |
@PropertySource | 指定 |
代码语言:text复制创建一个配置文件
jdbc.properties
,内容如下:
jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/springboot?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT+8&useSSL=false
jdbc.username=root
jdbc.password=root
代码语言:html复制引入
druid
数据库连接池依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.10</version>
</dependency>
代码语言:java复制创建
JdbcConfig
配置类 引入jdbc.properties
代码如下:
/**
* @author: BNTang
*/
@Configuration
@PropertySource("classpath:jdbc.properties")
public class JdbcConfig {
@Value("${jdbc.driverClassName}")
private String driverClassName;
@Value("${jdbc.url}")
private String url;
@Value("${jdbc.username}")
private String username;
@Value("${jdbc.password}")
private String password;
@Bean
public DataSource dataSource(){
DruidDataSource dataSource = new DruidDataSource();
dataSource.setDriverClassName(driverClassName);
dataSource.setUrl(url);
dataSource.setUsername(username);
dataSource.setPassword(password);
return dataSource;
}
}
代码语言:java复制然后在控制器当中进行测试 测试代码如下:
/**
* @author: BNTang
**/
@Controller
public class HelloController {
@Autowired
private DataSource dataSource;
@RequestMapping("hello")
@ResponseBody
public String hello(){
return "hello Java Config" dataSource;
}
}
然后找到启动类,启动项目 在浏览器中访问:http://localhost:8080/hello
我正在参与2023腾讯技术创作特训营第二期有奖征文,瓜分万元奖池和键盘手表