SSM整合流程(注解版)
SSM整合流程(注解版)
一、注解
注解的作用:替换配置文件中繁琐的配置 ,目的可以:提高开发效率。 使用步骤: 1、把对应的注解放在对应位置上。
//以实体类为例 @Component() public class User { private String id; private String name; private String password; private Integer age;
2、告知Spring框架在哪一个位置使用了注解
//在applicationContext.xml文件中配置 <!-- 告知Spring在哪个位置使用了注解 --> <context:component-scan base-package="com.baizhi.entity"></context:component-scan>
常用注解:
-
1、@Component 可以创建简单对象
使用位置:书写在类的上边
注意:如何获取简单对象?Spring默认提供的ID的该类类名的首字母小写
-
2、@Autowired 给属性进行自动注入
前提条件:Spring工厂中已经拥有该实现类的对象
-
3、@Service 创建Service的类对象 4、@Transactional 给对应的方法添加事务;也可以放在类上,给类中所有的方法添加事务,并采用默认属性 前提条件:激活@Transactional 注解 5、@Controller 自动创建Action对象 默认的ID类名是首字母小写 6、@Scope() 指定创建对象的次数
2、开发步骤(注解版)
环境搭建:
<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </context-param> <!-- struts2 的核心过滤器 --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- Spring工厂的监听 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
1、建表
2、写实体类对象
3、定义DAO接口
4、Mapper文件实现DAO接口
5、在Spring配置文件中配置Mybatis的相关内容信息
6、定义Service接口
7、实现Service接口
@Service //创建Service实现类对象 @Transactional //使用在类上,给所有的方法添加对应的事务,采用默认的事务属性。如果是查询,可以单独配置,局部配置大于全局配置 public class UserServiceImpl implements UserService{ //为属性进行对应的自动注入,不需要提供set方法 @Autowired private UserDAO userdao; @Override public void register(User user) { userdao.save(user); } }
8、为Service添加声明式事务
<!-- 引入控制事务的相关代码 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"></property> </bean> <!-- 激活事务 --> <tx:annotation-driven transaction-manager="transactionManager"></tx:annotation-driven>
9、开发Action
@Controller //创建Action类对象 在配置文件中通过类名首字母小写获取 @Scope("prototype") //创建的是单例还是多例(控制创建的次数) public class UserAction { @Autowired private UserService userService; private User user; public String register(){ userService.register(user); return "index"; }
10、配置action的相关信息
11、告知Spring框架在哪个包下使用了注解
<context:component-scan base-package="com.baizhi.*"></context:component-scan>