spring学习 (二)
作者:互联网
1.建立 单纯的一个 spring项目
idea 建立项目选择Spring ,待建立完成之后 ,在WEB-INF 下面建立一个lib文件夹 ,将原本的lib转移到这里 ,添加配置
lib中放入各个需要的jar包
2.建立好自己的 Spring-config.xml 默认名字为 applicationContext.xml
为了能够在启动时 ,就能够初始化spring ioc容器 ,必须要在 web.xml
中设置好监听器 默认的applicationContext.xml 应该在src的直接目录下 ,如果不在 (或者名字不是默认的名字 ) 则必须要配置路径 告诉 其所在位置
配置路径时,可以配置多个applicationContext.xml ,如上图所示
《
切记 !!!
你所配置的 applicationContext.xml一定格式要正确 ,否则在 运行 tomcat服务器时 服务会跑不起来 在这里浪费了大量时间
》
此时没有其他问题(例如jar包没有导入完整) 的话,配置tomcat服务器,你就能正确的运行了
3.简单的使用spring 模拟mvc的工作情况
建立dao层,service 层 ,控制层 。
《注意此处要配置好servlet》
在applicatioContext.xml 注入 bean
这里使用了set方法注入的方式,也可以使用 构造器注入 ,但是一定要有无参构造方法
由于上述的配置,只是在spirng的ioc容器中得到了 这些对象,但是 web(tomcat) 的容器中并没有,此时如果运行 就会 报空指针错误。所以要将 ioc容器与web容器连接起来
重写servlet 中的init() 方法
@Override
//初始化时 将获取 springioc容器中的对象
public void init(ServletConfig config) throws ServletException {
super.init(config);
ApplicationContext context =new ClassPathXmlApplicationContext("applicationContext-Dao.xml");
studentService = (IStudentService)context.getBean("StudentServiceImpl");
System.out.println(studentService);
}
连接完成之后,
中的IStudentService studentService;
就被注入了,可以使用获得对应的信息
protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
String name = studentService.queryStudentById();
System.out.println(studentService);
request.setAttribute("name",name);
request.getRequestDispatcher("res.jsp").forward(request,response);//重定向
}
使用转发重定向到 res.jsp页面中即可
- 结果
现在我们试着跑一下猫猫
res.jsp
终于能够成功跑起来了~~~~~~~~~
标签:xml,applicationContext,容器,spring,学习,servlet,studentService 来源: https://blog.csdn.net/Hqxcsdn/article/details/88533640