JavaEE第一次作业

Caroline ·
更新时间:2024-11-11
· 684 次阅读

问题1、完成例题1.3spring入门程序。修改根包为edu.javaee.spring
(这里跟着视频做的,没有修改根包)

UserDao.java(接口类)

package com.itheima.ioc; public interface UserDao { public void say(); }

UserDaoImpl.java

package com.itheima.ioc; public class UserDaoImpl implements UserDao { @Override public void say() { System.out.println("userDao say hello World"); } }

TestIoc.java

package com.itheima.ioc; import org.springframework.beans.factory.BeanFactory; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class TestIoc { public static void main(String[] args) { //1,初始化spring容器,加载配置文件 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); //2,通过容器获取userDao实例 UserDao userDao = (UserDao) applicationContext.getBean("userDao"); //3,调用实例方法 userDao.say(); } }

运行结果:

在这里插入图片描述
问题2、spring的优点是什么?
1、轻量:基础版本只有2MB
2、解耦方便:通过控制反转,实现松散耦合,对象们给出他们的依赖,而不是通过创建或查找对象的依赖
3、支持AOP:通过面向切面编程,实现业务逻辑和系统服务分开,方便的实现对程序进行权限拦截、运行监控等功能
4、支持声明式事务:spring提供事务管理接口,实现本地事务和全局事务的管理
5、异常处理:提供异常处理接口,把hibernate或者jdbc的异常转为一致的unchecked异常
6、利于测试,Spring支持Junit,可以通过注解配置,方便测试
7、易于集成其他优秀框架,Spring内部提供了对各种优秀框架的支持
8、降低J2EE API的使用难度,Spring对J2EE开发中非常难用的API,都提供了封装,使用这些API的难度大大降低

问题3、spring的Ioc和DI的概念理解?
Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。
DI—Dependency Injection,即“依赖注入”:组件之间依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入到组件之中。依赖注入的目的并非为软件系统带来更多功能,而是为了提升组件重用的频率,并为系统搭建一个灵活、可扩展的平台。


作者:zhuzuhezil



javaee

需要 登录 后方可回复, 如果你还没有账号请 注册新账号