当前位置: 首页 > news >正文

中山排名推广/无忧seo博客

中山排名推广,无忧seo博客,俄罗斯网站设计,营销推广主要包括Hibernate是一种Java语言下的对象关系影射解决(ORM,Object Relation Mapping)方案。它是使用LGPL许可证的自由、开源的软件。它为面向对象的领域模型到传统的关系型数据库的影射,提供了一个使用方便的框架。Hibernate也是目前Java…

Hibernate是一种Java语言下的对象关系影射解决(ORM,Object Relation Mapping)方案。它是使用LGPL许可证的自由、开源的软件。它为面向对象的领域模型到传统的关系型数据库的影射,提供了一个使用方便的框架。Hibernate也是目前Java开发中最为流行的数据库持久层框架,现已归JBOSS所有。

它的设计目标是将软件开发人员从大量相同的数据持久层相关编程工作中解放出来。无论是从设计草案还是从一个遗留数据库开始,开发人员都可以采用Hibernate。

Hibernate不仅负责从Java类到数据库表的映射(还包括从Java数据类型到SQL数据类型的映射),还提供了面向对象的数据查询检索机制,从而极大的缩短手动处理SQL和JDBC上的开发时间。

主流的ORM框架有JBoss公司的Hiberate、Oracle公司的TopLink、Apache组织的OJB、Sun公司的JDO。

软件首页:http://hibernate.org/

JDBC

jdbc是一个比较底层的东西,可以灵活的写SQL语句。但由于Java是面向对象的,jdbc没有做到使数据能够面向对象编程,使程序的思考仍停留在SQL语句上。

Hibernate的安装配置

参考:http://blog.csdn.net/chrp99/article/details/8477962

解压获取必须的类库文件。

将下载目录/hibernate.jar和/lib下的hibernate运行时必须的包加入classpath中:需要使用的jar包以及jar包对应含义如上:

(1)配置文件hibernate.cfg.xml和hibernate.properties

这两个文件的作用一样,提供一个即可推荐XML格式

(2)可以在配置文件指定:

数据库的URL、用户名、密码、JDBC驱动类、方言等。

启动时Hibernate会在CLASSPATH里找这个配置文件。

hibernate中字段为空时错的异常

如果实体类中有private double xxproperty;

则会报异常,修改方法:

private Double xxproperty;

原因是在java中不能对double、int等基本数据类型赋值null,但能对封装类赋值null值。

表名的映射

//代表此类参与ORM映射,此注解必须要有
@Entity  
//代表user这个类映射了一个表user50,如果表名和类名一样,此注解可以省略
@Table(name="user50")
public class User {

主键的映射

 //主键,此注解必须要有@Id  //数据库表中主键列名为id,如果实体类属性名和列名相同,此注解可以省略@Column(name="id")  //主键的维护策略@GenericGenerator(name="inc50",strategy="increment")   @GeneratedValue(generator="inc50")private Integer userID;

属性映射成表的字段

//@Column(name="name")//此属性要映射到名为name的列上,若属性名和列名相同,则注解可以省略private String name;

日期类型的映射

 @Column(name="birth")//如果属性是日期格式,可以设置日期的保存规格//time:只保存时间       date:只保存日期         timestamp:(默认)日期+时间@Temporal(TemporalType.DATE)private Date birthday;

表之间的关系是一对一的映射

    //关系属性:告知Passport它的关系属性//mappedBy"对方中映射着外键的关系属性==Passport表中有一个关系属性,名字是person50"@OneToOne(mappedBy="person50")//ALL:增删改都可以级联(cascade)//save-update:增加和更新可以级联//delete:删除可以级联//如果不设置,则增删改都不可以级联//注意:查询例外,不受级联权限的控制,默认级联。@Cascade(value=CascadeType.ALL)private Passport passport50;

 

  //关系属性@OneToOne//JoinColumn:代表是从表,name的值代表:Passport表中外键名为person_id@JoinColumn(name="person_id")//@Cascadeprivate Person person50;


表之间的关系是一对多的映射

user表   1:n order表

     @OneToMany(mappedBy="user")//ALL:增删改都可以级联(cascade)//save-update:增加和更新可以级联//delete:删除可以级联//如果不设置,则增删改都不可以级联//注意:查询例外,不受级联权限的控制,默认级联。@Cascade(value=CascadeType.DELETE)private Set<Order> orders=new HashSet<Order>();
   //关系属性@ManyToOne//JoinColumn:name代表关系属性映射的列@JoinColumn(name="user_id")private User user

表之间的关系 是多对多的映射

//关系属性//EAGER: 查询时关联的数据也同时取出放入内存中,因为在内存里,所以在session外也可以取@ManyToMany(fetch=FetchType.EAGER) //中间表,两个外键: joinColumns=指向自己的外键   inverseJoinColumns=指向对方的外键@JoinTable(name="r_c_s",joinColumns={@JoinColumn(name="stu_id")} ,inverseJoinColumns={@JoinColumn(name="cour_id")})@Cascade(value=CascadeType.ALL)private Set<Course> courses=new HashSet<Course>();
   //关系属性@ManyToMany@JoinTable(name="r_c_s",joinColumns={@JoinColumn(name="cour_id")},inverseJoinColumns={@JoinColumn(name="stu_id")})@Cascade(value=CascadeType.ALL)private Set<Student> students=new HashSet<Student>();

 

最后欢迎大家访问我的个人网站: 1024s

 

 

 

http://www.jmfq.cn/news/4859389.html

相关文章:

  • 广州网站优化服务/百度pc网页版
  • DW做网站下拉列表怎么做/武汉网站快速排名提升
  • 导购网站自己做电商/搜索引擎营销的优势和劣势
  • 潮州网站seo推广/网站推广的策略
  • 企业网站不付服务费应该怎么做/正规软件开发培训学校
  • 西安网站建设联系方式/徐州网站建设方案优化
  • 惠济郑州网站建设/网站策划方案案例
  • 怀化物流网站建设报价/正规的微信推广平台
  • 佛山做外贸网站的公司/互联网营销方法有哪些
  • 智慧团建管理员登录入口/百度关键词优化词精灵
  • wordpress站点前台请求数过多/设计师培训班多少钱
  • 网站建设与网页设计从入门到精通/申请网站域名要多少钱
  • 网站分类标准/东莞疫情最新消息
  • 西安网站设计与建设/网络营销推广的手段
  • 购物网站线下推广方案/单页面seo搜索引擎优化
  • 做外贸那个网站比较好/青岛seo杭州厂商
  • 电子政务与网站建设的经验/会计培训班多少钱
  • 阿里巴巴做网站费用计入/宁波seo网站推广
  • 滕州做网站的多少/互联网广告联盟
  • 哪个网站可以做片头/东莞市优速网络科技有限公司
  • 二级域名怎么做网站备案/阿里云建站
  • 石家庄小程序开发多少钱/seosem是指什么意思
  • php网站开发建设/国家大事新闻近三天
  • 高端品牌网站建设方案/提供seo顾问服务适合的对象是
  • dreamweaver学生用哪个版本/谷歌seo网站优化
  • 自己怎么网上注销公司/郑州seo外包顾问
  • https 网站架设/2021年10月新闻摘抄
  • 做搜狗网站排名软/站长工具最近查询
  • 宜昌网站seo收费/今天株洲最新消息
  • 学做网站教学百度网盘/上海关键词优化的技巧