J2EE实验报告7Spring的IOC.docx
- 文档编号:27246906
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:11
- 大小:16.79KB
J2EE实验报告7Spring的IOC.docx
《J2EE实验报告7Spring的IOC.docx》由会员分享,可在线阅读,更多相关《J2EE实验报告7Spring的IOC.docx(11页珍藏版)》请在冰豆网上搜索。
J2EE实验报告7Spring的IOC
J2EE实验报告
学号
姓名
班级
上课地点
教师
上课时间
实验八Spring的IOC
1.实验目的
、掌握Spring框架的建立步骤;
、掌握Spring的Ioc注入方式:
传值注入和构造注入;
、掌握Spring的静态工厂注入方式;
、掌握Spring的实例工厂注入方式。
2.实验环境
MyEclipse
WindowXP
MySQL
4.教师批改意见
签字:
日期:
成绩
实验内容
1功能描述
、掌握Spring框架的建立步骤;
、掌握Spring的Ioc注入方式:
传值注入和构造注入;
、掌握Spring的静态工厂注入方式;
、掌握Spring的实例工厂注入方式。
2实验步骤
搭建Spring框架
(0)新建webproject项目,项目名称自定义(我取名为EX_Ioc);
(1)将spring需要的jar包拷贝到______下;
(2)在src下新建文件
xmlns="" xmlns: xsi="" xmlns: p="" xmlns: aop="" xsi: schemaLocation=" ">
注入普通类及属性
(1)在src下新增包,在该包下新建类:
packageclassPerson{
privateStringname;
publicvoidsayHello(){
"hello,iam"+name);
}
//省略getset方法
}
(2)在文件中添加配置
--frist配置简单类及属性-->
(3)编写测试代码
在src下新增包,在该包下新建类:
packageclassMyTest{
publicstaticvoidmain(String[]args){
ApplicationContextapc=new______("");
Personperson=(______)("______");
();
}
}
(4)运行测试代码,查看结果。
配置类及使用bean--传值注入
(1)在src下新增包,在该包下新建接口、和类、、、
packageinterfaceIPerson{
publicvoiduserAxe();
}
packageinterfaceIAxe{
publicvoidchop();
}
packageclassChineseimplementsIPerson{
privateIAxeaxe;
publicvoiduseAxe(){
();
}
}
packageclassAmericanimplementsIPerson{
privateIAxeaxe;
publicvoiduseAxe(){
();
}
}
packageclassSteelAxeimplementsIAxe{
publicvoidchop(){
"steelAxeisquick!
!
!
");
}
}
packageclassStoneAxeimplementsIAxe{
publicvoidchop(){
"stoneAxeisslow!
!
!
");
}
}
(2)在文件中添加配置
--second配置类及使用bean-->
(3)编写测试代码
修改类:
packageclassMyTest{
publicstaticvoidmain(String[]args){
ApplicationContextapc=new______("");
//second配置类及使用bean
Chinesechinese=(Chinese)("____");
();
Americanamerican=(American)("____");
();
}
}
(4)运行测试代码,查看结果。
配置类及使用bean--构造注入
(1)在包下,新建类
packageclassFranceimplementsIPerson{
privateIAxeaxe;
privateIAxeaxe2;
privateStringname;
publicFrance(){
}
publicFrance(IAxeaxe,IAxeaxe2,Stringname){
=axe;
=axe2;
=name;
}
publicvoiduseAxe(){
();
();
}
}
(2)在文件中添加配置
(3)编写测试代码
修改类:
packageclassMyTest{
publicstaticvoidmain(String[]args){
ApplicationContextapc=new______("");
//构造注入
Francefrance=(France)("_____");
();
}
}
(4)运行测试代码,查看结果。
静态工厂注入
(1)在src下新增包,在该包下新建类、、和接口
packageinterfaceIBeing{
publicvoid___________;
}
packageinterfaceDogimplementsIBeing{
privateStringname;
publicvoidsayHello(){
"Hello,iamdog!
Mynameis:
"+name);
}
}
packageinterfaceCatimplementsIBeing{
privateStringname;
publicvoidsayHello(){
"Hello,iamcat!
Mynameis:
"+name);
}
}
packageclassFactory{
publicstaticIBeinggetBeing(Stringtype){
if("____")){
returnnewDog();
}else{
returnnewCat();
}
}
}
(2)在文件中添加配置
--静态工厂生成bean-->
(3)编写测试代码
修改类:
packageclassMyTest{
publicstaticvoidmain(String[]args){
ApplicationContextapc=new______("");
//静态工厂生成bean
Dogdog=(Dog)("____");
();
Catcat=(Cat)("____");
();
}
}
(4)运行测试代码,查看结果。
实例工厂注入
(1)在src下新增包,在该包下新建类、、和接口
packagefourth;
publicinterfaceIPerson{
publicvoid______________();
}
packagefourth;
publicinterfaceChineseimplementsIPerson{
privateStringname;
publicvoidsayHello(){
"Hello,iamchinese!
Mynameis:
"+name);
}
}
packagefourth;
publicinterfaceAmericanimplementsIPerson{
privateStringname;
publicvoidsayHello(){
"Hello,iamamerican!
Mynameis:
"+name);
}
}
packageclassFactory{
publicIPersongetPerson(Stringtype){
if("____")){
returnnewChinese();
}else{
returnnew________;
}
}
}
(2)在文件中添加配置
--实例工厂构造bean-->
(3)编写测试代码
修改类:
packageclassMyTest{
publicstaticvoidmain(String[]args){
ApplicationContextapc=new______("");
//实例工厂生成bean
Chinesechn=___________;
();
Americaname=___________;
();
}
}
(4)运行测试代码,查看结果。
3心得体会
不得放空
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- J2EE 实验 报告 Spring IOC