SpringBoot-Java的配置方式


  • SpringBoot 默認使用 Servlet3.0 可以沒有 web.xml
  • 沒有任何的 xml
  • 如果我們想要做一些自定義的配置
  • 比如數據庫相關的配置,該如何配置
  1. 可以使用 Java 的配置方式

配置的演變

  • Spring1.0 時代:Spring 的配置都是使用 xml 的方式
  • Spring2.0 時代:引入了 注解,並未完全替代 xml
  • Spring 3.0 及以后:3.0 以后 Spring 的注解已經非常的完善了

Java的配置

  • SpringBoot 當中 Java的配置方式主要靠 Java類 和一些 注解 代替 xml
注解名稱 作用
@Configuration 標記一個類,作為 配置類,代替 xml 文件
@Bean 標記在方法上,將方法的返回值,加入到 Bean容器,代替 <bean> 標簽
@value 屬性值注入,也就是設置值
@PropertySource 指定 讀取 那個,外部屬性配置文件
  • 創建一個配置文件 jdbc.properties,內容如下:
jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/springboot?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
jdbc.username=root
jdbc.password=root

  • 引入 druid 數據庫連接池依賴
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid</artifactId>
    <version>1.1.10</version>
</dependency>
  • 創建 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;
    }
}
  • 然后在控制器當中進行測試
  • 測試代碼如下:
/**
 * @author: BNTang
 **/
@Controller
public class HelloController {

    @Autowired
    private DataSource dataSource;

    @RequestMapping("hello")
    @ResponseBody
    public String hello(){
        return "hello Java Config" + dataSource;
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM