利用IDEA创建一个spring程序

打开File--new project,左边选择spring一栏,

右边勾选spring,下方的勾选springConfig.xml也要选上,会自动生成spring的配置文件

jar文件这里选择download即可,当然也可以灵活选择

webApplication 也勾选上

然后下一步,取好项目名称选择好文件夹后,下一步。我这里是download,所以它会帮我下载jar包

 

完成后项目目录结构如下,spring配置文件,web的配置文件都有,jar包也非常齐全。

 

下面是代码,创建了一个接口,然后实现类里重写了这个方法。配置文件里创建了实现类的bean实例,取名为beanA。

测试代码里初始化spring容器,加载spring配置文件。通过容器去获取PersonDao的实例,实例名称是beanA ,配置文件里已经写好beanA 是实现类

然后调用add,打印语句。这里PersonDao对象传入的是实现类的对象。

注意:这个例子其实不算特别好,第一次接触的人可能会纠结在父类和子类的问题,写法上搞不清楚。大家可以把测试类的PersonDao直接换成PersonImp,一样的结果,记住它要告诉你的是框架来帮助我们创建对象。我在下面写了第二个例子

 

package spring.ioc;

public interface PersonDao {
    public  void add();
}
package spring.ioc;

public class PersonImp implements PersonDao {
    public void add()
    {
        System.out.println("实现类的add执行了");
    }
}
复制代码
package spring.ioc;

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

public class personImpTest {
    @Test
   public void test1(){
        String xmlPath = "spring-config.xml";
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath);
        PersonDao personDao = (PersonDao) applicationContext.getBean("beanA");
        personDao.add();
    }
}
复制代码
  <bean id="beanA" class="spring.ioc.PersonImp"/>

 

例子二:我直接创建了一个类,没有采用父类子类的方式,可能新人更容易接受点。好好体会下框架帮助我们创建对象这句话

复制代码
package spring.ioc;

public class People {
    private  String name;
    public String getName() {
        System.out.println("name"+name);
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}
复制代码
  String xmlPath = "spring-config.xml";
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath);
        People people = (People) applicationContext.getBean("beanB");
        people.getName();
  <bean id="beanB" class="spring.ioc.People">
        <property name="name" value="Jack"/>
    </bean>

 

 

测试:我们用spring自带的junit进行测试,暂时用不上网页。记得class选择你的测试类,不然会报no testClass之类的错误。

 

最后,我们一开始创建项目的时候,勾上了webapplication,然而我们也没用到网页。

我们可以直接创建sprIng项目,不勾选web,编写代码进行测试,结果也是一样的,下面是我的测试结果,左侧没有网页目录

posted @   DDD-SagerKing  阅读(469)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示
主题色彩