1、因为spring容器的一些机制,在读取配置文件进行数据库的配置等等是很有必要的,所以我们要考虑配置文件的的读取方式以及各个方式的实用性

2、配置文件的读取方式我这里介绍2种,目的是掌握这2种就可以很好的应用了

3、这里我的properies配置文件如下:

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/m_model?useUnicode=true&characterEncoding=utf8
username=root
password=root

4、第一种读取方式:一种采用bean的配置方式,一种是标签的形式

  1)bean的配置方式(推荐使用这种方式)

  <bean id="propertyPlaceholderConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<!-- 如果是单个文件可以按照注释的方式来配置 -->
<!-- <property name="location" value="classpath:conf/spring-config.properties"/> -->
<property name="locations">
<array>
<value>classpath:conf/spring-config.properties</value>
</array>
</property>
</bean> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</bean>

  2)标签的配置方式

   <context:property-placeholder location="classpath:conf/spring-config.properties"/>

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</bean>

问题:这里我遇到了读取配置处错的问题:

会出现乱码的情况,然后我找了一些处理方式
  (1)修改properties针对字符的配置

url=jdbc:mysql\://localhost\:3306\/m_model?useUnicode=true&amp;characterEncoding=utf8

  (2)加入读取配置时进行文件编码

<context:property-placeholder location="classpath:conf/spring-config.properties" file-encoding="UTF-8"/>  

这两种方式我都试过了,目前还不知道什么原因导致的乱码问题。有大神可以指教一下
指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!

5、是用util:properties便签来实现的,这种方式就是单纯的来读取配置文件

<util:properties id="config" location="classpath:conf/spring-config.properties"/>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="#{config.driver}"/>
<property name="url" value="#{config.url}"/>
<property name="username" value="#{config.username}"/>
<property name="password" value="#{config.password}"/>
</bean>

注意:这里是采用#{id.属性}来实现具体的读取,上面是直接$(属性来实现的)

6、这两种方式是针对于xml配置xml赋值的方式来实现,在使用过程中也可以使用通过标签的方式给具体的java代码赋值,便于管理

@Value("#{config.username}")
private String userName;

这种方式也可以用来装配具体的属性,便于合理管理相关配置

最新文章

  1. mongo virtual
  2. GitHub的用法:到GitHub上部署项目
  3. HDU 2274 Magic WisKey
  4. subline 快捷键
  5. asp.net 回发或回调参数无效的各种情况分析及解决办法
  6. Hbase中rowkey设计原则
  7. mysql 新建用户
  8. 安装配置Apache
  9. js数组与字符串的相互转换方法
  10. memcachedd基础
  11. mac osx 升级yosemite后java出错的解决
  12. (转)Android中截取当前屏幕图片
  13. 9个杀手级 JVM 编程语言
  14. [刷题]算法竞赛入门经典 3-7/UVa1368 3-8/UVa202 3-9/UVa10340
  15. SpringBoot的Profile文件
  16. vue 模板如何解析
  17. iOS10个实用小技巧(总有你不知道的和你会用到的)
  18. VC动态调用DLL
  19. bzoj 4930: 棋盘
  20. 关于jsp页面中时间显示问题

热门文章

  1. fastcgi+lighttpd+c语言 实现搜索输入提示
  2. python:常用模块二
  3. 模拟,找次品硬币,Counterfeit Dollar(POJ 1013)
  4. 【[HAOI2016]找相同字符】
  5. 【洛谷P3959】[NOIP2017] 宝藏
  6. 【洛谷P3807】(模板)卢卡斯定理
  7. Android学习笔记_59_清除sdcard缓存
  8. c的三个内存分配函数(malloc,realloc,calloc)
  9. how to create a custom form for sharepoint list
  10. spring入门(一) 根据xml实例化一个对象