SSH学习小记(2)——注解配置
来源:互联网 发布:zeppelin 修改端口 编辑:程序博客网 时间:2024/05/16 11:41
1、先开启Spring的注解扫描,比如要使用@Autowired就要现在Spring容器中声明AutowiredAnnotationBeanPostProcessor的Bean
<bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor "/>
使用@Required也类似。我们可以直接在beans.xml配置如下语句
<context:component-scan base-package="pack.pack"/>
它会自动注入所有的processor,就可以使用各种注解了。
(部分参考自http://www.cnblogs.com/doudouxiaoye/p/5681518.html)
2、注解示例如下
@Controller("baseAction")@Scope("prototype")public class BaseAction<T> extends ActionSupport implementsRequestAware,SessionAware,ApplicationAware,ModelDriven<T> { @Resource protected CategoryService categoryService; @Resource protected AccountService accountService;
@Controller和@Service原理相同,只是便于区分该类所属的层。”baseAction”是定义在spring容器里的id,类里面的成员前加@Resource,此注解默认通过名字来注入bean。
3、POJO类的数据库映射和表与表之间的关系也可以通过注解来配置
@Entity@Table(name = "account", catalog = "shop")public class Account implements java.io.Serializable {
@Entity表示这是一个实体类,需要映射到数据库中,@Table配置了表的信息,表名account,catalog为数据库的名字
之后是关于字段的配置
@Id @GeneratedValue @Column(name = "id", unique = true, nullable = false) public Integer getId() { return this.id; }
写在get方法前面,这段注解表示id是主键,字段名为id,不可重复,不能为空。
4、其实这些注解配置都能通过hibernate的逆向工程自动生成。
打开MyEclipse的DB Browser在里面连接到数据库,即可通过此来进行逆向。
5、需要手动去设置的是表与表之间的关联,因为hibernate逆向工程自动生成的关系注解往往不是最合适的。
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "account")public Set<Category> getCategories() { return this.categories; }
这是Account类对Category的一对多配置,cascade表示级联,CascadeType.ALL表示增删改查的时候都会级联,fetch表示抓取策略,LAZY表示即时加载,即当Account加载时,Category不会马上加载,mappedBy=”account”表示Account这个类通过Category里的account成员变量来被维护的,也就是说Account放弃维护关系。
@ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name = "account_id") public Account getAccount() { return this.account; }
这是多的一方,EAGER表示立即加载,当查询Category时,会立马加载Account,@JoinColumn表明外键account_id
- SSH学习小记(2)——注解配置
- SSH学习小记(1)——整合原理
- 菜鸟学SSH(十七)——基于注解的SSH将配置精简到极致
- 菜鸟学SSH(十七)——基于注解的SSH将配置精简到极致
- SSH与SSM学习之Spring09——Spring使用注解配置
- SSH与SSM学习之Spring17——Spring中AOP之使用注解配置
- SSH与SSM学习之Spring23——Spring事务之注解配置方式管理事务
- OpenCV学习小记(一)——环境配置
- SSH:Hibernate框架(Hibernate注解配置)
- 注解配置 ssh
- 注解配置 ssh
- SSH注解的配置
- SSH注解配置
- SSH注解配置
- ssh注解配置
- 用注解配置ssh
- JAVA学习——纯注解搭建SSH框架 一
- springBoot学习之注解小记
- PHP学习笔记(持续更新)
- js/JQUERY json数组除去重复对象
- oracle函数集中总结
- DES加密与解密 &&Url编码与解码的实现
- 测鬼记(上)——上班(五)
- SSH学习小记(2)——注解配置
- 百度地图的集成
- CSS之伪元素和伪类
- Excel调用已有数据利用已经录入的项快速的生成下拉列表
- 奥威Power-BI For金蝶用友标准BI解决方案-销售综合分析
- BZOJ1008【HNOI2008】越狱 <补集转换>
- 如何下载RPM及其依赖
- Excel更改引用方式在绝对引用与相对引用之间快速切换
- HDU4027 Can you answer these queries? (线段树)