当前位置 : 主页 > 编程语言 > java >

基于xml的Spring配置二(Spring 配置非自定义Bean)

来源:互联网 收集:自由互联 发布时间:2023-02-04
以上在xml 中配置的Bean都是自己定义的,例如: UserDaolmpl,UserServicelmpl。但是,在实际开发中有些功能类并不是我们自己定义的,而是使用的第三方jar包中的,那么,这些Bean要想让Sprin

以上在xml 中配置的Bean都是自己定义的,例如: UserDaolmpl,UserServicelmpl。但是,在实际开发中有些功能类并不是我们自己定义的,而是使用的第三方jar包中的,那么,这些Bean要想让Spring进行管理,也需要对其进行配置。

配置非自定义的Bean需要思考如下两个问题:

  • 被配置的Bean的实例化方式是什么?无参构造、有参构造、静态工厂方式还是实例工厂方式;
  • 被配置的Bean是否需要注入必要属性。例如:数据库的四个必备属性。
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.49</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.2.9</version> </dependency>// 手动配置方式 不由spring管理 DruidDataSource druidDataSource = new DruidDataSource(); druidDataSource.setDriverClassName(); druidDataSource.setUrl(); druidDataSource.setUsername(); druidDataSource.setPassword();<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> <property name="url" value="jdbc:mysql://127.0.0.1:3306/databaseName"></property> <property name="username" value="root"></property> <property name="password" value="123456"></property> </bean>

配置非自定义 Bean-connection

// 手动配置方式 不由spring管理 Class.forName("com.mysql.jdbc.Driver"); Connection connection = DriverManager.getConnection("", "", "");<bean id="clazz" class="java.lang.Class" factory-method="forName"> <constructor-arg name="className" value="com.mysql.jdbc.Driver"></constructor-arg> </bean> <bean id="connection" class="java.sql.DriverManager" factory-method="getConnection" scope="prototype"> <constructor-arg name="url" value="jdbc:mysql://127.0.0.1:3306/databaseName"></constructor-arg> <constructor-arg name="user" value="root"></constructor-arg> <constructor-arg name="password" value="123456"></constructor-arg> </bean>

配置非自定义 Bean-Date

String currentDate = "2022-11-11 11:11:11"; SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date parse = dateFormat.parse(currentDate);<bean id="simpleDateFormate" class="java.text.SimpleDateFormat" > <constructor-arg name="pattern" value="yyyy-MM-dd HH:mm:ss"></constructor-arg> </bean> <bean id="date" factory-bean="simpleDateFormate" factory-method="parse"> <constructor-arg name="source" value="2022-11-11 11:11:11"></constructor-arg> </bean>

配置非自定义 Bean-SqlSessionFactory

<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.9</version></dependency><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId></dependency>
上一篇:prometheus+grafana可视化实时jvm监控工具
下一篇:没有了
网友评论