mybatis基础,mybatis核心配置文件properties元素
peroperties元素
可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递
为dataSource元素配置
1 <properties> 2 <property name="driver" value="com.mysql.jdbc.Driver" /> 3 <property name="url" value="jdbc:mysql://localhost:3306/test" /> 4 <property name="username" value="root" /> 5 <property name="password" value="root" /> 6 </properties>
在properties元素的子元素中配置连接数据库驱动需要的东西
之后在environment元素的dataSource元素中为其动态设置
1 <environment id="development"> 2 <transactionManager type="JDBC" /> 3 <dataSource type="POOLED"> 4 <property name="driver" value="${driver}" /> 5 <property name="url" value="${url}" /> 6 <property name="username" value="${username}" /> 7 <property name="password" value="${password}" /> 8 </dataSource> 9 </environment>
将值设置为${name名称},,
注意:这个name名不是dataSource下property的name名,与它无关,只是名字设置一样,而是上面properties下property的name名
而datasource下的property的name属性不能改变,读取配置文件时需要固定名称。
然而properties的作用并不单单是这样
你可以创建一个资源文件,名为jdbc.properties的文件,将四个连接字符串的数据在资源文件中通过键值对(key=value)的方式放置,不要任何符号,一条占一行
配置文件中的properties元素不再需要子元素了,为其添加一个属性resource,其值为,资源文件的完整包名+资源文件名
1 driver=com.mysql.jdbc.Driver 2 url=jdbc:mysql://localhost:3306/test 3 username=root 4 password=root
1 <properties resource="jdbc.properties"/>
dataSource元素下的property的value还是${uername}这样,不需要改变
这就是properties元素和properties的好处,有需要修改的时候不用修改那么多,只要修改资源文件即可
可以用于底层jdbc运用的资源文件
1 FileInputStream fis=new FileInputStream("C:\\Users\\光奇\\workspace\\mybatis\\src\\main\\resources\\jdbc.properties"); 2 Properties pr=new Properties(); 3 pr.load(fis); 4 Class.forName(pr.getProperty("driver"));
5 conn=DriverManager.getConnection(pr.getProperty("url"),pr.getProperty("username"),pr.getProperty("password"));
同样实现了获得数据库连接