idea构建第一个Spring框架的应用

目录

1.点击 New Project ,选择Maven,然后一直正常配置就OK了,不多说(前提是你的Maven仓库啥的都配置好了)

2. 接下来就是配置pom.xml文件了,来使用maven描述依赖包,(版本啥的要注意)

3.然后我们还是以入门必备的hello world例子来构建项目

4.log4j的配置(log4j--log for java(java的日志))

5.关于一个idea的小警告


首先废话不多说:摆出Spring的官方框架图:(现在看不懂没关系,我暂时也没懂,先入手在走着瞧😅)

 我选择使用Maven来管理我的项目

1.点击 New Project ,选择Maven,然后一直正常配置就OK了,不多说(前提是你的Maven仓库啥的都配置好了)

2. 接下来就是配置pom.xml文件了,来使用maven描述依赖包,(版本啥的要注意)

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>MavenSpring02</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.3.26.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
    </dependencies>

</project>

3.然后我们还是以入门必备的hello world例子来构建项目

在src/main/java下新建一个hello包,在里面建立三个类,内容分别如下

这里要说说明一下Spring的两种实现方法:

第一种:注解实现,其中三个文件的代码如下

MessageService.java

package hello;

import org.springframework.stereotype.Component;

@Component
public class MessageService {
    public MessageService() {
        System.out.println("MessageService.....");
    }
    public String getMessage() {
        return "hello world";
    }
}

MessagePrinter.java

package hello;


import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

@Component
public class MessagePrinter {
    public MessagePrinter() {
        System.out.println("MessagePrinter....");
    }

    private MessageService messageService;
    @Autowired
    public void setMessageService(MessageService messageService) {
        this.messageService = messageService;
    }

    public void printMessage() {
        System.out.println(this.messageService.getMessage());
    }
}

MainSpring.java

package hello;


import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.ComponentScan;
@ComponentScan
public class MainSpring {
    public static void main(String[] args) {
        ApplicationContext applicationContext=new AnnotationConfigApplicationContext(MainSpring.class);
        MessagePrinter messagePrinter = applicationContext.getBean(MessagePrinter.class);
        messagePrinter.printMessage();
    }
}

(说明:注解@Component表示的类表明此类是服从Spring容器管理,即对象的创建是由容器完成的,不需程序员使用new关键字来自行创建,而是用@Autowried修饰的方法,表示由容器自动构建对象的依赖关系,也不需要我们自己管理对象之间的关系)

第二种:使用 applicationContext.xml (约定俗成的命名,创建方法如下图)文件配置

然后再applicationContext.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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--
    bean元素:描述当前对象需要由Spring管理
    id属性:标识对象,未来可以在应用程序中根据id访问对象
    class属性:被管理对象的全类名
    -->
    <bean id="service" class="hello.MessageService"></bean>
    <bean id="printer" class="hello.MessagePrinter">
        <!--
        property元素:设置当前类的属性
        name属性:设置属性名
        ref属性:设置属性类
        -->
        <property name="messageService" ref="service"></property>
    </bean>
</beans>

使用此方法构建Spring项目可以省去类里面的注解,然后将MainSpring.java修改成如下代码:

package hello;

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

@ComponentScan
public class MainSpring {
    public static void main(String[] args) {
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
        MessagePrinter messagePrinter = applicationContext.getBean(MessagePrinter.class);
        messagePrinter.printMessage();
    }
}

4.log4j的配置(log4j--log for java(java的日志))

根据名字也就知道配置它有啥作用了

首先pom.xml中配置log4j依赖的包,然后在官网查得配置内容如下:

网址:https://docs.spring.io/spring/docs/4.3.26.RELEASE/spring-framework-reference/htmlsingle/

不难看出,我之前的pom.xml配置就是依据这个配置,然后我们子啊resources文件夹下新建一个log4j.properties文件,复制粘贴官网的简单例子:

log4j.rootCategory=INFO, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %t %c{2}:%L - %m%n
log4j.category.org.springframework.beans.factory=DEBUG

之后,再次运行程序,便可观察到如下执行过程了

5.关于一个idea的小警告

在创建applicationContext.xml后,使用idea会出现黄色部分的小警告

解决方法:

END--------觉得有用就赏个赞呗! good luck!

 

 

 

发布了56 篇原创文章 · 获赞 73 · 访问量 6431
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 撸撸猫 设计师: 设计师小姐姐

分享到微信朋友圈

×

扫一扫,手机浏览