web高级编程实验1
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
<?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-beans3.0.xsd">
} private static void pay(String account) { // TODO Auto-generated method stub } } User package com.tutorialspoint; public class User { private String name; private int account; public void setName(String name){ this.name = name; } public void setAccount(int account){ this.account = account; } public String getName(){ return name; } public int getAccount(){ return account; } }
南昌航空大Baidu Nhomakorabea实验报告
2016 年 3 月 26 日 课程名称:Spring 实验名称:Spring环境配置 学号: 13201510 姓名: 刘英庭 同组人: 指导教师评定: 签名: 1、 实验目的 1、 掌握Spring框架的基本结构; 2、 掌握Spring框架的基本用法; 3、 掌握Spring配置文件的编写方法; 4、 理解Spring框架中IOC、DI、容器等核心概念。 2、 实验要求 1、 根据实验步骤中提出的要求,使用Eclipse编写相应的Java程 序; 2、 根据实验步骤中提出的要求,使用Eclipse编译、运行自己所 编写的Java程序; 3、 根据编译与运行过程中所获得的错误信息修改程序直至获得 正确的结果; 4、 记录实验中遇到的各类问题并以及解决办法。 3、 实验步骤 1. 简述Spring的发展历史。 简单来说,Spring就是一个轻量级的控制反转(IoC)和面向切面 (AOP)的容器框架。
2. Spring由哪些模块组成?它们分别有些什么作用? 1.controller 控制器 2. View 视图 3. Service 服务类 4. Dao 数据库操作 5. Model 存储对象 3. 解释以下概念:IoC、DI。
IoC(Inversion of Control,控制倒转)。 DI(Dependency Injection,依赖注入) 4. 仿照本章中实例,使用Spring编写一个公交卡充值程序。 MainApp package com.tutorialspoint; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class MainApp { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml"); User obj = (User) context.getBean("User"); System.out.println("公交车充值系统 " ); System.out.println("你的姓名是 " + obj.getName()); System.out.println("你的余额 " + obj.getAccount()); try (BufferedReader reader = new BufferedReader( new InputStreamReader(System.in))){ System.out.println("请输入你要充值的金额"); String account = reader.readLine(); int b = Integer.parseInt(account); obj.setAccount(obj.getAccount()+b); System.out.println("你现在的余额是 " + obj.getAccount()); } catch (IOException e) { }
<bean id="User" class="com.tutorialspoint.User"> <property name="name" value="大腾"/> <property name="account" value="100"/> </bean> </beans> 5. 你是如何理解Spring的? 而对IOC来讲,IOC就是说对象本身的创建不依赖应用本身,而是依赖 于外部容器,如果没有IOC那么我们在我们的业务类,要调用DAO的方 法,那么不得不做的一个动作就是创建一个DAO的实现类的实例,而创 建这个对象本身是跟业务无关的,而这样违反了“高内聚,低耦合”,使 类与类的联系非常紧密了。 即使不用new,使用工厂模式,使用单利模式,也跟上面说的效果是一 样的,而Spring本身就是一个大工厂,他帮我们造对象,帮我们管理 bean对象,它帮我们注入我们所需的bean对象,这样对于以后的维护来 讲,变的更为方便,也把与业务本身无关的东西提取出来了。体现了低 耦合。 而AOP本身就是一种思想,意为面向切面编程,而Spring对AOP做了部 分实现,(举例说明)如果没有AOP,比如我们开发的系统中有发邮 件,写日志,可想而知,系统中发邮件,写日志绝对的不是在一个地方 用到,那么怎么办,肯定是在业务中写着重复的代码,而且干着与业务 无关的事情,也就是说让发邮件,写日志跟业务一起混合在一起,那么 这样肯定是不合理的。 因此Spring提供了AOP,在你想写日志的方法给你切开,加入日志的操 作,刚刚说spring是大工厂,那么对于spring的AOP来讲,我更加喜欢把 它比喻成化妆师,只有你让spring帮你化妆,就能达到你意想不到的效 果,总的来讲spring的AOP技术,他帮我们做很多与业务无关的操作, 让业务层次更加清晰。