使用Intellij编写Spring Hello World
2024-09-06 09:49:15
编写基于Intellij2016.3与Java SDK1.8
下载Spring最新jar包:
http://repo.spring.io/release/org/springframework/spring
和Spring依赖的日志组件包
http://commons.apache.org/proper/commons-logging/
1、新建一个Module
上图如果选择不完整的话,可以如下添加依赖添加确实的jar包。
2、添加依赖
经测试,一个简单的HelloWorld程序也需要依赖如下5个包:
3、编写测试文件
HelloWorld.java
package com.xiya; /**
* Created by N3verL4nd on 2017/3/4.
*/
public class HelloWorld {
private String message; public void setMessage(String message) {
this.message = message;
} public String getMessage() {
return message;
}
}
MainApp.java
package com.xiya; import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; /**
* Created by N3verL4nd on 2017/3/4.
*/
public class MainApp {
public static void main(String[] args) {
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("beans.xml");
HelloWorld test = (HelloWorld) applicationContext.getBean("HelloWorld");
System.out.println(test.getMessage());
}
}
4、编写beans配置文件(src目录下)
<?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 id="HelloWorld" class="com.xiya.HelloWorld">
<property name="message" value="Spring Hello World!" />
</bean>
</beans>
一下对程序运行并没有影响,它的作用估计是方便查找xml文件之间的关系吧
运行,报错:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at org.springframework.context.support.AbstractApplicationContext.<init>(AbstractApplicationContext.java:161)
at org.springframework.context.support.AbstractApplicationContext.<init>(AbstractApplicationContext.java:225)
at org.springframework.context.support.AbstractRefreshableApplicationContext.<init>(AbstractRefreshableApplicationContext.java:88)
at org.springframework.context.support.AbstractRefreshableConfigApplicationContext.<init>(AbstractRefreshableConfigApplicationContext.java:58)
at org.springframework.context.support.AbstractXmlApplicationContext.<init>(AbstractXmlApplicationContext.java:61)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:136)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
at com.xiya.MainApp.main(MainApp.java:11)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 13 more Process finished with exit code 1
原因是少加入commons-logging-1.2包
添加方法同上。
测试:
最新文章
- 盘点销售一体机 打印POS一体的设备。 打印,盘点,销售PDA(手持终端)+移动销售POS软件
- python 使用__neg__和__iter__
- Bpmx实施经验
- [转]Vs解决方案的目录结构设置和管理
- iOS实现图像素描效果
- i春秋——春秋争霸write up
- java(课程设计之记事本界面部分代码公布)
- hihocoder #1179 : 永恒游戏 暴力
- VC禁止在任务管理器中结束本进程
- eclipse 常见问题及解决
- get方式中文乱码问题
- ORACLE 如何查询被锁定表及如何解锁释放session
- HDU-1233-还是畅通工程(并查集)
- Mac下安装cscope和ctags
- android CheckBox与监听
- 剑指Offer 22. 从上往下打印二叉树 (二叉树)
- SpringMVC运行流称总结(DispatcherServlet-doDispatch)
- Linux下的shell与make
- 常用docker
- 完美原创:centos7.1 从源码升级安装Python3.5.2