相关 知识 >>>

相关 练习 >>>

实现要求:

在图书管理系统中,学生管理模块、书籍管理模块和借还书管理模块等其他模块,相互配合协作,促使系统的运行流畅。定义三个模块,使用<import>标签完成分模块配置开发,模拟实现学生借书和还书的过程,将结束输出到控制台。

要求如下:

  • 定义学生管理模块、书籍管理模块和借还书管理模块。
  • 使用<import>标签完成分模块配置开发

实现步骤:

在com.zn.demo.student包下创建Student类,添加stuId属性和stuName属性

package com.zn.mhys.demo.student;

public class Student {
private String stuId;
private String stuName;
public String getStuId() {
return stuId;
}
public void setStuId(String stuId) {
this.stuId = stuId;
}
public String getStuName() {
return stuName;
}
public void setStuName(String stuName) {
this.stuName = stuName;
} }

在com.zn.demo.student包下创建applicationContext-student.xml配置文件,注册Student类到容器

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd "> <bean id="student" class="com.zn.mhys.demo.student.Student"></bean> </beans>

在com.zn.demo.book包下创建Book类,添加bookId属性和bookName属性

package com.zn.mhys.demo.book;

public class Book {
private String bookId;
private String bookName;
public String getBookId() {
return bookId;
}
public void setBookId(String bookId) {
this.bookId = bookId;
}
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
} }

在com.zn.demo.book包下创建applicationContext-book.xml配置文件,注册Book类到容器。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd "> <bean id="book" class="com.zn.mhys.demo.book.Book"></bean> </beans>

在com.zn.demo.service包下创建BorrowAndReturnService类,声明borrowBook()方法和returnBook()方法

package com.zn.mhys.demo.service;

import com.zn.mhys.demo.book.Book;
import com.zn.mhys.demo.student.Student; public class BorrowAndReturnService {
public void borrowBook(Student student,Book book){
System.out.println("学生编号:"+student.getStuId()+",学生姓名:"+student.getStuName()
+",借阅书名:"+book.getBookName()+",编号:"+book.getBookId()+"的书名");
}
public void returnBook(Student student,Book book){
System.out.println("学生编号:"+student.getStuId()+",学生姓名:"+student.getStuName()
+",归还书名:"+book.getBookName()+",编号:"+book.getBookId()+"的书名");
}
}

在com.zn.demo.service包下创建applicationContext-service.xml配置文件,注册BorrowAndReturnService类到容器

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.2.xsd "> <!-- 2.1.4 -->
<import resource="com/zn/mhys/demo/book/applicationContext-book.xml"/>
<import resource="com/zn/mhys/demo/student/applicationContext-student.xml"/>
<import resource="com/zn/mhys/demo/service/applicationContext-service.xml"/> </beans>

在src目录下创建applicationContext.xml配置文件,引入3个模块的配置文件 在com.zn.demo.test包下创建Test测试类

package com.zn.mhys.demo.test;

import java.sql.Connection;

import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.io.ClassPathResource; import com.zn.mhys.demo.book.Book;
import com.zn.mhys.demo.service.BorrowAndReturnService;
import com.zn.mhys.demo.service.JdbcService;
import com.zn.mhys.demo.student.Student; public class Test { public static void main(String[] args) { ClassPathResource resource = new ClassPathResource("applicationContext.xml");
XmlBeanFactory context = new XmlBeanFactory(resource); // 2.1.4
Student student = (Student)context.getBean("student");
student.setStuId("003");
student.setStuName("杨明金");
Book book = (Book)context.getBean("book");
book.setBookId("130006");
book.setBookName("spring企业级开发");
BorrowAndReturnService bars = (BorrowAndReturnService) context.getBean("service");
bars.borrowBook(student, book);
bars.returnBook(student, book); } }

Spring练习,定义三个模块,使用<import>标签完成分模块配置开发,模拟实现学生借书和还书的过程,将结束输出到控制台。的更多相关文章

  1. Python——import与reload模块的区别

     原创声明:本文系博主原创文章,转载或引用请注明出处. 1. 语法不同 import sys reload('sys') 2. 导入特性不同 import 和reload都可以对同一个模块多次加载, ...

  2. python 模块基础 和常用的模块

    模块的定义 一个模块就是以.py结尾的python 文件,用来从逻辑上组织python代码.注意,模块名和变量名一样开头不能用数字,可以是双下划线和字母. 为什么要用模块? 将一些复杂的需要重复使用的 ...

  3. python day 8: re模块补充,导入模块,hashlib模块,字符串格式化,模块知识拾遗,requests模块初识

    目录 python day 8 1. re模块补充 2. import模块导入 3. os模块 4. hashlib模块 5. 字符串格式:百分号法与format方法 6. 模块知识拾遗 7. req ...

  4. day16模块,导入模板完成的三件事,起别名,模块的分类,模块的加载顺序,环境变量,from...import语法导入,from...import *,链式导入,循环导入

    复习 ''' 1.生成器中的send方法 -- 给当前停止的yield发生信息 -- 内部调用__next__()取到下一个yield的返回值 2.递归:函数的(直接,间接)自调用 -- 回溯 与 递 ...

  5. Spring 笔记(三)Bean 装配

    前言 Spring 有两大核心,也就分成两份笔记分别记录. 其一是管理应用中对象之间的协作关系,实现方式是依赖注入(DI),注入依赖的过程也被称为装配(Wiring). 基于 JavaConfig 的 ...

  6. ECMAScript 6教程 (三) Class和Module(类和模块)

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出 原文连接,博客地址为 http://www.cnblogs.com/jasonnode/ .该系列课程是 ...

  7. MyEclipse Spring 学习总结三 SpringMVC

    MyEclipse Spring 学习总结三 SpringMVC 一.SpringMVC原理 1.Springmvc 框架介绍 1)Spring 框架停工了构建Web应用程序的全功能MVC模块.Spr ...

  8. 【死磕 Spring】—– IOC 之解析Bean:解析 import 标签

    原文出自:http://cmsblogs.com 在博客[死磕Spring]----- IOC 之 注册 BeanDefinition中分析到,Spring 中有两种解析 Bean 的方式.如果根节点 ...

  9. Spring的第三天AOP之xml版

    Spring的第三天AOP之xml版 ssm框架 spring  AOP介绍 AOP(Aspect Oriented Programming),面向切面编程.它出来的目的并不是去取代oop,而是对它的 ...

随机推荐

  1. oracle加密encrypt,解密decrypt

    目录 oracle加密encrypt,解密decrypt 加密 解密 oracle加密encrypt,解密decrypt 有的oracle版本没有加解密函数,以下操作可以手动添加 oracle数据使用 ...

  2. Linux基础命令---ntpdate网络时间服务器

    ntpdate ntpdate指令通过轮询指定为服务器参数的网络时间协议(NTP)服务器来设置本地日期和时间,从而确定正确的时间. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS ...

  3. Java Spring 自定义事件监听

    ApplicationContext 事件 定义一个context的起动监听事件 import org.springframework.context.ApplicationListener; imp ...

  4. 编译安装haproxy2.0

    先解决lua环境,(因为centos自带的版本不符合haproxy要求的最低版本(5.3)先安装Lua依赖的包 [root@slave-master lua-5.3.5]# yum install  ...

  5. 使用Modbus批量读取寄存器地址

    使用modbus单点读取地址是轮询可能会导致效率很低,频繁发送读取报文会导致plc响应时间拉长,批量读取可大大减少数据通信的过程,每次读取完成后,在内存中异步处理返回来的数据数组. modbus 功能 ...

  6. pipeline配置前端项目

    vue pipeline { agent { label 'master'} options { timestamps() disableConcurrentBuilds() buildDiscard ...

  7. 编译工具sbt部署

    目录 一.简介 二.部署 三.测试 一.简介 项目构建工具是项目开发中非常重要的一个部分,充分利用好它能够极大的提高项目开发的效率.在学习SCALA的过程中,我遇到了SBT(Simple Build ...

  8. 如何在eclipse jee中检出项目并转换为Maven project

    如何在eclipse jee中检出项目并转换为Maven project,最后转换为Dynamic web project 注意:该文档只针对以下eclipse版本,如图 为了方便,我将我本地的压缩包 ...

  9. 批处理文件 .bat 并行Arcpy脚本提高效率的思路-提升版

    目录 前言 Arcpy脚本 导入库 函数定义 循环实现 批处理(.bat)脚本 前言 我在之前的博客园博客里,阐述了如何编写Arcpy脚本,如何利用Windows bat批处理脚本同时打开多个cmd窗 ...

  10. Google Earth Engine 批量点击RUN任务,批量取消正在上传的任务

    本文内容参考自: https://blog.csdn.net/qq_21567935/article/details/89061114 https://blog.csdn.net/qq_2156793 ...