Spring根据XML配置文件 p名称空间注入属性

Posted Advancing Swift

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring根据XML配置文件 p名称空间注入属性相关的知识,希望对你有一定的参考价值。

要生成对象并通过名称空间注入属性的类 代码如下:

package com.swift;

public class User {
    private String userName;
    
    public void setUserName(String userName) {
        this.userName = userName;
    }
    public String fun() {
        return "User‘s fun is ready."+this.userName;
    }
}

XML配置文件写法如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- IoC 控制反转 SpringSpring根据XML配置文件生成对象 -->
<bean id="user" class="com.swift.User" p:userName="peach"></bean>
</beans>
p:userName="peach"
p:后是属性的变量名 后面是赋值
约束是
xmlns:p="http://www.springframework.org/schema/p"

生成对象及属性值调用方法,代码如下:

package com.swift;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

@WebServlet("/test")
public class TestIOC extends HttpServlet {
    private static final long serialVersionUID = 1L;
    public TestIOC() {
        super();
    }
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.getWriter().append("Served at: ").append(request.getContextPath());
        @SuppressWarnings("resource")
        //就是下边这几句了
        ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
        User user=(User) context.getBean("user");
        String userInfo=user.fun();
        response.getWriter().println();
        response.getWriter().append(userInfo);
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }

}

 



以上是关于Spring根据XML配置文件 p名称空间注入属性的主要内容,如果未能解决你的问题,请参考以下文章

Spring使用p名称空间配置属性

Spring入门到进阶 - Spring Bean管理 XML方式

Spring根据XML配置文件注入属性

Spring根据XML配置文件注入对象类型属性

day38 12-Spring的Bean的属性的注入:名称空间p

Spring p名称空间配置属性