SSH全注解式开发

第一步:引入注解的jar包 struts2-convention-plugin-2.3.16.3.jar

struts2的注解

Struts2:替换掉struts.xml文件

在Action类的上面放上:

替换掉struts.xml里面的namespace: @Namespace("") 例如:namespace: @Namespace("/test")

在namespace下面放上@ParentPackage("struts-default") 指定父包

在程序要执行的方法上或者execute()方法上放上@Action(value="这里面放的是之前struts.xml的action的name值,也是请求对应的页面地址action里面的值")

案例:@Action(value="query",results={@Result(name="success",type="Dispatcher",location="/welcome.jsp")})

如果返回值是success 则result里面的name可以不写,如果跳转是Dispatcher ,可以不写type,如果有参数要传递,可以加param

Spring的注解:

Action、service、dao三层 在spring.xml配置的bean都可以不要了

SSH全注解式开发_第1张图片

关于事务的也可以删掉,但不可以删掉事务管理器

SSH全注解式开发_第2张图片

然后在下面添加

 

<context:component-scanbase-package="com.bjpowernode.*">context:component-scan>

    

    <tx:annotation-driventransaction-manager="transactionManager"/>

开始深入到dao、service、action类里面去写spring的注解

Dao层:(直接在实现类上写,接口上不写)

    在class上放上@Repository(" ")

例如:@Repository("studentDao")

    给class的域属性添加@Aurowired自动注入 这里一般都是注入sessionFactory

例如:@Autowired

    private SessionFactorysessionFactory;

service

    Spring IOC部分

    class上放上@Service("")

例如:@Service("studentService")

    class的域属性上放上注入注解标签

    @Resource

    @Autowired

    这两种都可以,

Action层:

    action类的上面放上@Component表示它是spring的组件

    class的域属性上放上@Autowiredspring通过type来自动注入

注意:如果在注入域属性的时候使用byName的方式

    则写法应该这样写

    @Autowired

    @Qualifier("studentService")//byName方式自动注入

    private IStudentServiceservice;

    这里引号里面放的是所要引入域属性类的注解里面的名字。

Spring事务的注解(加在service)

    在新增、修改、删除的方法上放上 @Transactional(isolation=Isolation.DEFAULT,propagation=Propagation.REQUIRED)注解标签。

    isolation=Isolation.DEFAULT,propagation=Propagation.REQUIRED时,表示都是默认值,括号里面也可以不写。即@Transactional()

    删除的方法需要加一个readOnly=true,如下

    @Transactional(readOnly=true)//加上它效率会更高

Hibernate的注解

    替换的是映射文件 .hbm.xml,因此删掉.hbm.xml文件

    在实体类的上面放上@Entity表示此类是实体类

    注意:如果table默认和类名一样,则table标签可以不写

    id上放上

@Id

    @GeneratedValue(generator="xxx")//使用hibernate内置的生成策略

    @GenericGenerator(name="xxx",strategy="native")//生成器

    指定生成策略和生成器

    至此Springstruts2hibernate的注解就配置完了,剩下来的就是要改某一些地方,

     spring.xml中将

    改成

    至此SSH的注解式就全部改完了。

    附上案例地址:

    链接:http://pan.baidu.com/s/1o8DgTuE 密码:qnpj 这个demo使用 的jdk是1.7的 tomcat是6.0的

你可能感兴趣的:(SSH/SSM)