要写Spring代码,那jar包肯定是少不了的,这里用Maven进行管理,下面是Maven的坐标

<dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>5.2.0.RELEASE</version></dependency></dependencies>

当坐标写完之后,进行写我们的pojo类,这里是一个Hello类

package com.zhiying.pojo;public class  Hello{private String str;public String getStr() {return str;}public void setStr(String str) {this.str = str;}@Overridepublic String toString() {return "Hello{" +"str='" + str + '\'' +'}';}
}

然后在resource里写一个xml的配置文件,这里命名为Beans.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/beanshttps://www.springframework.org/schema/beans/spring-beans.xsd"><!--使用Spring创建对象,在Spring中这些都称为Bean--><bean id="hello" class="com.zhiying.pojo.Hello"><!--这里是用的value,如果是引用的话是ref--><property name="str" value="Hello Spring"/></bean></beans>

然后是测试了

import com.zhiying.pojo.Hello;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class MyTest {public static void main(String[] args) {//获取Spring的上下文对象ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");//我们的对象都是在Spring中管理的,我们要使用直接到里面取即可Hello hello = (Hello) context.getBean("hello");System.out.println(hello.toString());}
}

测试结果:

这样做我们就不用去改代码了,如果需要改需求,只需要改配置文件即可,所谓的IoC也就是对象由Spring创建、管理和装配

下面来练习一个ref的注入

首先是Dao层

package com.zhiying.dao;public interface UserDao {public void getUser();
}
package com.zhiying.dao;public class UserDaoImpl implements UserDao {public void getUser() {System.out.println("this is a user");}
}

然后是Service层

package com.zhiying.service;import com.zhiying.dao.UserDao;public interface UserService {public void setUserDao(UserDao userDao);public void getUser();
}
package com.zhiying.service;
import com.zhiying.dao.UserDao;public class UserServiceImpl implements UserService {UserDao userDao;public void setUserDao(UserDao userDao) {this.userDao = userDao;}public void getUser() {userDao.getUser();}
}

然后是Beans.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/beanshttps://www.springframework.org/schema/beans/spring-beans.xsd"><bean id="userDaoImpl" class="com.zhiying.dao.UserDaoImpl"/><!--这里进行了注入,所以UserServiceImpl需要有set方法--><bean id="userServiceImpl" class="com.zhiying.service.UserServiceImpl"><!--应用Spring中创建好的对象--><property name="userDao" ref="userDaoImpl"/></bean></beans>

最后是测试


import com.zhiying.service.UserService;
import com.zhiying.service.UserServiceImpl;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class MyTest {public static void main(String[] args) {ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");UserService userService = (UserServiceImpl) context.getBean("userServiceImpl");userService.getUser();}
}

结果如下:

Spring写第一个程序HelloSpring相关推荐

  1. 【一起学Java第二期】JDK的安装使用用记事本写第一个程序

    文章目录 前言 一.Java开发环境的准备 1.如何使用Java 二.如何获取JDK 1.去Oracle官网下载JDK 2.如何验证安装成功 3.用记事本写第一个程序 三.JVM.JRE.JDK.跨平 ...

  2. java写一个外网访问的接口_Java程序员如何入门?教你写第一个程序

    大家都知道,Java是一门面向对象的编程语言,不仅吸收了C++的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大.简单易用. 另外,Java允许程序员以优雅的思维方 ...

  3. SpringMVC用注解写第一个程序HelloSpringMVC

    比起刚刚用xml配置开发的第一个程序HelloSpringMVC简单多了,当然在实际开发中也是用注解开发的,这里还是先给出一个HelloController,但是这里不用实现Controller接口了 ...

  4. 小白自学笔记——JAVA基础 1.3写第一个程序

    这次程序的编写使用文本文档,用CMD运行. 第一个程序 新建一个文本文框,命名为HelloWorld.java.(注意打开后缀) 用记事本打开文件 输入程序: class HelloChina{ pu ...

  5. python写电脑程序_【初学者教程】在电脑上安装Python,写第一个程序

    欢迎来到Python的世界 1.存在Python 2和Python 3两个版本,我该用哪个? 强烈建议用Python 3.2020年1月1日起官方就不再维护Python 2了,2已经过时. 2.下载P ...

  6. SpringMVC写第一个程序HelloSpringMVC

    SpringMVC也就是把我们之前的MVC架构用Spring封装了一下,其核心在Controller,首先我们实现springframework提供的Controller接口写一个HelloContr ...

  7. android如何写第一个程序,第一个Android应用程序

    **文章摘要 ** 1.熟悉第一个Android应用程序的创建,以及创建过程中的各个文件夹的意义. 2.熟悉Android界面之间的跳转方式. 一.关于开发工具: 1.开发工具(Eclipse.And ...

  8. 使用 Eigen 库写第一个程序

    一.使用 Eigen 库时编译器设置 使用 Eigen 库之前需要下载库文件,并进行简单的设置. 下载地址: http://eigen.tuxfamily.org/index.php?title=Ma ...

  9. Scala 写第一个程序HelloWorld

    idea安装scala插件 Settings--Plugins--搜索Scala,进行安装 下载scala-2.12.8.zip并解压 https://www.scala-lang.org/downl ...

最新文章

  1. bzoj 4871: [Shoi2017]摧毁“树状图”
  2. 怎样才能正确的挑选和建立关键词词库?
  3. 安卓一键新机_安卓福音!微信终于推出这个功能,再也不用羡慕iPhone
  4. python编写程序的一般步骤-Python:开发_基本流程
  5. mysql怎么让一个存储过程定时执行
  6. android百度地图开发之自动定位所在位置与固定位置进行驾车,步行,公交路线搜索...
  7. php win2003 下载,64位windows2003iis安装包|《win2003 iis安装包》64位完整版附安装PHP教材...
  8. linux expr格式,计算2-expr命令举例
  9. 字符串数组排序,如果可以保证前一个字符的末尾与后一个字符的开头相同,返回1,否则返回-1...
  10. 解决java.lang.IllegalArgumentException: No converter found for return value of type
  11. 无人驾驶插秧机智能辅助系统_北斗年会 | 智慧农业:插秧“神器”大显身手——雷科防务致力于高精度无人驾驶插秧机前装应用...
  12. 【Typecho插件-前端-播放器】BiliVid -- 好用的Bilibili视频链接解析播放器
  13. n1盒子救砖_斐讯N1盒子刷机救砖教程
  14. 《理财市场情绪监测系统》代码实现【1】之行业词库
  15. php应用CPU使用率100%解决思路
  16. dispatch_queue_create创建源码分析
  17. 法国计算机高等工程师学院排名,法国人工智能专业大学排名(2020年USNEWS)_快飞留学...
  18. JavaScript《一》
  19. python把PDF转换成图片
  20. IISscanner暴力破解IIS网站目录

热门文章

  1. PHP消息通信机制测试代码
  2. 【转】Android-Input 按键字符映射文件输入设备配置文件
  3. LeetCode 63. Unique Paths II
  4. 迭代DOM集合的几种方法
  5. 【数据结构基础复习】二叉树的非递归遍历(二)
  6. 谈谈软件工程与计算机科学的区别
  7. Lucene应用开发揭秘 上线啦!((更新程度:完毕))
  8. elasticsearch】org.elasticsearch.bootstrap.StartupException: java.lang.NullPointerException
  9. 【Scala】Scala语言的介绍以及循环的定义(while,for,break,九九乘法表的计算代码)
  10. 接口对前后端和测试的意义