zoukankan      html  css  js  c++  java
  • ssh 注解(annotation)

    Struts2注解

    @Action(value="login",results={ @Result(name="login",type="redirectAction",params={"actionName","index","namespace","/","code","1001"}), @Result(name="success",type="redirectAction",params={"actionName","home","namespace","/"})} ) public String login() { Map<String, Object> session = ActionContext.getContext().getSession(); User user1 = us.findByUser(user); if (user1!=null) { session.put("user", user1); return "success"; }else { code = "1001"; return "error"; } }

     hibernate注解

      导入hibernate-entitymanager-4.2.0.Final.jar包

    @Entity     
    @Table(name="t_user")     
    @Cache(usage=CacheConcurrencyStrategy.READ_WRITE)     
    public class User {     
      
         private int id;     
         private String username;     
         private String password;     
           
         @Id     
         @GeneratedValue(strategy=GenerationType.IDENTITY)     
         public int getId() {     
                  return id;     
         }     
        //名字相同不用写
        @Column(name="username")     
            public String getUsername() {     
                        return username;     
            }  
    一对多和多对一  
    
    User.java     
           
          @OneToMany(mappedBy="user")     
          public Set<Address> getAddressSet() {     
                     return addressSet;     
          }     
               
    Address.java     
         
          @ManyToOne     
          @JoinColumn(name="userid")     
          public User getUser() {     
                     return user;     
          }     
      

    mappedBy="user"→代表放弃关系维护;

    java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z错误解决方法:

    打开javaee.jar: D:myeclipseCommonpluginscom.genuitec.eclipse.j2eedt.core_10.5.0.me201207171805datalibrarysetEE_5javaee.jar;

    找到persistence文件,删除

    多对多  
    
    Student.java     
         
         @ManyToMany(mappedBy="students")     
         public Set<Teacher> getTeachers() {     
                  return teachers;     
         }     
              
    Teacher.java           
         
         @ManyToMany     
         @JoinTable(name="t_student_teacher",     
         joinColumns=@JoinColumn(name="studentid"),     
         inverseJoinColumns=@JoinColumn(name="teacherid"))
         @orderBy("id desc")
         public Set<Student> getStudents() {     
                  return students;     
         }  
    uuid生成id
            @Id
        @GenericGenerator(name="myuuid",strategy="uuid")
        @GeneratedValue(generator="myuuid")
        public String getId() {
            return id;
        }    
    一对一  
    
    User.java     
         
             @OneToOne     
             @PrimaryKeyJoinColumn     
              public Card getCard() {     
                           return card;     
              }     
         
      Card.java     
         
       @Id     
        @GeneratedValue(generator="pkGenerator")     
        @GenericGenerator(name = "pkGenerator",strategy =  
         "foreign",parameters={@Parameter(name = "property", value = "user")})      
         public int getId() {     
                  return id;     
         }     
         @OneToOne(mappedBy="card")     
         @PrimaryKeyJoinColumn     
         public User getUser() {     
                  return user;     
         }  
    排除不进行持久化操作的属性  
    
    @Transient     
    public int getAge() {     
                   return age;     
    }  

     Spring annotation

    Bean的注解

    @Component

    @Service

    @Repository

    @Controller

    或者JSR 330  用 @Named

    @Repository
    @Scope("prototype")
    @Lazy(true)
    public class MysqlDao implements IUDao{
    
    }

    IOC Annotation

    @Autowired(spring) 先byname,没找到就byType 自动注入

    @Inject(JSR 330)

    @Resource(JSR 250)@Resource 默认按 byName 自动注入罢

    //required=false有就注入,没有接不注入,inject,resource没有这属性
    //不用写set方法了
        @Autowired(required=false)
        private IUDao mysqlDao;

     AOP Annotation

    applicationContext.xml
     <!-- AOP注解 -->
          <aop:aspectj-autoproxy/>  
    @Controller
    @org.aspectj.lang.annotation.Aspect
    public class Aspect {
        @Pointcut("execution(* dao..*.*(..))")
        public void  pointcut() {
        }
        @Before("pointcut()")
        public void  before() {
            System.out.println("前置通知》》》");
        }
        @AfterReturning(value="pointcut()",returning="val")
        public void afterreturn(Object val) {
            System.out.println("后置通知" +val);
        }
        @AfterThrowing(value="pointcut()",throwing="ex")
        public void     exception(Exception ex) {
            System.out.println("异常通知"+ ex.getClass().getName());
        }
        @After("pointcut()")
        public void after() {
            System.out.println("最终通知");
        }
    }
  • 相关阅读:
    《信息安全系统设计基础》实验中的问题总结
    20145233计算机病毒实践7之动态分析3
    20145233计算机病毒实践3之静态分析3
    20145233计算机病毒实践5之动静态分析
    20145233计算机病毒实践2之静态分析
    20145233计算机病毒实践1之静态工具介绍
    20145233计算机病毒实践十
    20145233计算机病毒实践九之IDA的使用
    20145233韩昊辰小组 课程设计中期检查
    20145233《网络对抗》Exp9 Web安全基础实践
  • 原文地址:https://www.cnblogs.com/fudapeng/p/3831556.html
Copyright © 2011-2022 走看看