hibernate注解
@Entity 映射实体类
@Table 映射数句库表
@Entity(name="tableName") - 必须,注解将一个类声明为一个实体bean。
属性:
name - 可选,对应数据库中的一个表。若表名与实体类名相同,则可以省略。
@Table(name="",catalog="",schema="") - 可选,通常和@Entity 配合使用,只能标注在实 体的 class 定义处,表示实体对应的数据库表的信息。
属性:
name - 可选,表示表的名称,默认地,表名和实体名称一致,只有在不一致的情况下才需 要指定表名
catalog - 可选,表示Catalog名称,默认为 Catalog("").
schema - 可选 , 表示 Schema 名称 , 默认为Schema("").
2.属性级别注解
@Id 映射生成主键
@Version 定义乐观锁
@Column 映射表的列
@Transient 定义暂态属性
2.1 与主键相关注解
@Id - 必须,定义了映射到数据库表的主键的属性,一个实体只能有一个属性被映射为主 键,置于 getXxxx() 前。
@GeneratedValue(strategy=GenerationType,generator="") - 可选,用于定义主键生成策略。
属性:
Strategy - 表示主键生成策略,取值有:
GenerationType.AUTO - 根据底层数据库自动选择(默认),若数据库支持自动 增 长类型,则为自动增长。
GenerationType.INDENTITY - 根据数据库的Identity字段生成,支持DB2、MySQL、 MS、SQL Server、SyBase与HyperanoicSQL数据库的Identity 类型主键。
GenerationType.SEQUENCE - 使用Sequence来决定主键的取值,适合Oracle、DB2等 支持Sequence的数据库,一般结合@SequenceGenerator使用。
(Oracle没有自动增长类型,只能用Sequence)
GenerationType.TABLE - 使用指定表来决定主键取值,结合@TableGenerator使用。
如:
@Id
@TableGenerator(name="tab_cat_gen",allocationSize=1)
@GeneratedValue(Strategy=GenerationType.Table)
Generator - 表示主键生成器的名称,这个属性通常和ORM框架相关 , 例如:
Hibernate 可以指定 uuid 等主键生成方式
@SequenceGenerator — 注解声明了一个数据库序列。
属性:
name - 表示该表主键生成策略名称,它被引用在@GeneratedValue中设置的“gernerator”值中。
sequenceName - 表示生成策略用到的数据库序列名称。
initialValue - 表示主键初始值,默认为0.
allocationSize - 每次主键值增加的大小,例如设置成1,则表示每次创建新记录后自动加1,默认为50.
示例 :
@Id
@GeneratedValues(strategy=StrategyType.SEQUENCE)
public int getPk() {
return pk;
}
Hibernate的访问类型为field时,在字段上进行注解声;
访问类型为property时,在getter方法上进行注释声明。
2.2 与非主键相关注解
@Version - 可以在实体bean中使用@Version注解,通过这种方式可添加对乐观锁定的支持
@Basic - 用于声明属性的存取策略:
@Basic(fetch=FetchType.EAGER) 即时获取(默认的存取策略)
@Basic(fetch=FetchType.LAZY) 延迟获取
@Temporal - 用于定义映射到数据库的时间精度:
@Temporal(TemporalType=DATE) 日期
@Temporal(TemporalType=TIME) 时间
@Temporal(TemporalType=TIMESTAMP) 两者兼具
@Column - 可将属性映射到列,使用该注解来覆盖默认值,@Column描述了数据库表中 该字段的详细定义,这对于根据 JPA 注解生成数据库表结构的工具非常有作用。
属性:
name - 可选,表示数据库表中该字段的名称,默认情形属性名称一致
nullable -可选,表示该字段是否允许为null,默认为true
unique - 可选,表示该字段是否是唯一标识,默认为 false
length - 可选,表示该字段的大小,仅对 String 类型的字段有效,默认值255.
insertable -可选,表示在ORM框架执行插入操作时,该字段是否应出现INSETRT 语句中,默认为true
updateable -可选,表示在ORM框架执行更新操作时,该字段是否应该出现在 UPDATE语句中,默认为true. 对于一经创建就不可以更改的字段,该 属性非常有用,如对于birthday字段。
columnDefinition - 可选,表示该字段在数据库中的实际类型。通常ORM框架可以根 据属性类型自动判断数据库中字段的类型,但是对于Date类型仍无法确定数据 库中字段类型究竟是DATE,TIME还是 TIMESTAMP. 此外 ,String的默认映射类型为VARCHAR,如果要将 String 类型映射到特定数据库的 BLOB或TEXT字段类型,该属性非常有用。
示例 :
@Column(name="BIRTH",nullable="false",columnDefinition="DATE")
public String getBithday() {
return birthday;
}
@Transient - 可选,表示该属性并非一个到数据库表的字段的映射,ORM框架将忽略该属性,如果一个属性并非数据库表的字段映射,就务必将其标示为@Transient,否则ORM 框架默认其注解为 @Basic
示例 :
// 根据 birth 计算出 age 属性
@Transient
public int getAge() {
return getYear(new Date()) - getYear(birth);
}
2.3无注解属性的默认值
如果属性为单一类型,则映射为@Basic,
否则,如果属性对应的类型定义了@Embeddable注解,则映射为@Embedded,
否则,如果属性对应的类型实现了Serializable, 则属性被映射为@Basic并在一个列中保存该对象的serialized版本,
否则,如果该属性的类型为java.sql.Clob或java.sql.Blob,则作为@Lob并映射到适当的LobType.。
3.映射继承关系
@Inheritance注解来定义所选择的策略. 这个注解需要在每个类层次结构(class hierarchy) 最顶端的实体类上使用
4.映射实体bean的关联关系
4.1关联映射的一些定义
单向一对多:一方有集合属性,包含多个多方,而多方没有一方的引用。用户--->电子邮件
单向多对一:多方有一方的引用,一方没有多方的引用。论文类别--->类别
双向一对多:两边都有多方的引用,方便查询。班级--->学生
双向多对一:两边都有多方的引用,方便查询。
单向多对多:需要一个中间表来维护两个实体表。论坛--->文章
单向一对一:数据唯一,数据库数据也是一对一。舰船--->水手
主键相同的一对一:使用同一个主键,省掉外键关联。客户--->地址
单向:关系写哪边,就由谁管理。
双向:一般由多方管理。
@OneToMany(mappedBy="对方") //反向配置,对方管理。
4.2 关联映射的一些共有属性
@OneToOne、@OneToMany、@ManyToOne、ManyToMany的共有属性:
fetch - 配置加载方式。取值有
Fetch.EAGER - 及时加载,多对一默认是Fetch.EAGER
Fetch.LAZY - 延迟加载,一对多默认是Fetch.LAZY
cascade - 设置级联方式,取值有:
CascadeType.PERSIST - 保存
CascadeType.REMOVE - 删除
CascadeType.MERGE - 修改
CascadeType.REFRESH - 刷新
CascadeType.ALL - 全部
targetEntity - 配置集合属性类型,如:@OneToMany(targetEntity=Book.class)
@JoinColumn - 可选,用于描述一个关联的字段。
@JoinColumn和@Column类似,介量描述的不是一个简单字段,而是一个关联字段,例如描述一个 @ManyToOne 的字段。
属性:
name - 该字段的名称,由于@JoinColumn描述的是一个关联字段,如ManyToOne, 则默认的名称由其关联的实体决定。
例如,实体 Order 有一个user 属性来关联实体 User, 则 Order 的 user 属性为一个外键 ,
其默认的名称为实体User的名称 + 下划线 + 实体User的主键名称
4.3 一对一关联
@OneToOne – 表示一个一对一的映射
1.主表类A与从表类B的主键值相对应。
主表:@OneToOne(cascade = CascadeType.ALL)
@PrimaryKeyJoinColumn
public B getB(){
Return b;
}
从表:无
2.主表A中有一个从表属性是B类型的b
主表:@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name="主表外键") //这里指定的是数据库中的外键字段。
public B getB(){
return b;
}
从表:无
3.主表A中有一个从表属性是B类型的b,同时,从表B中有一个主表属性是A类型的a
主表:@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name="主表外键") //这里指定的是数据库中的外键字段。
public B getB(){
return b;
}
从表:@OneToOne(mappedBy = "主表类中的从表属性")
public 主表类 get主表类(){
return 主表对象
}
注意:@JoinColumn是可选的。默认值是从表变量名+"_"+从表的主键(注意,这里加的是主键。而不是主键对应的变量)。
4.4 多对一关联
@ManyToOne - 表示一个多对一的映射,该注解标注的属性通常是数据库表的外键。
1.单向多对一:多方有一方的引用,一方没有多方的引用。
在多方
@ManyToOne(targetEntity=XXXX.class) //指定关联对象
@JoinColumn(name="") //指定产生的外键字段名
2.双向多对一:配置方式同双向一对多。
示例 :
// 订单 Order 和用户 User 是一个 ManyToOne 的关系
// 在 Order 类中定义
@ManyToOne()
@JoinColumn(name="USER")
public User getUser() {
return user;
}
4.5 一对多关联
@OneToMany - 描述一个一对多的关联,该属性应该为集合类型,在数据库中并没有实际字段。
1.单向一对多:一方有集合属性,包含多个多方,而多方没有一方的引用。
@OneToMany 默认会使用连接表做一对多关联
添加@JoinColumn(name="xxx_id") 后,就会使用外键关联,而不使用连接表了。
2.双向一对多
1)在多方
@ManyToOne
@JoinColumn(name="自己的数据库外键列名")
2)在一方
@OneToMany(mappedBy="多端的关联属性名")
@JoinColumn(name="对方的数据库外键列名")
4.6 多对多关联
@ManyToMany - 可选,描述一个多对多的关联。
属性:
targetEntity - 表示多对多关联的另一个实体类的全名,例如:package.Book.class
mappedBy - 用在双向关联中,把关系的维护权翻转。
1.单向多对多关联:
在主控方加入@ManyToMany注解即可。
2.双向多对多关联:
两个实体间互相关联的属性必须标记为@ManyToMany,并相互指定targetEntity属性。有且只有一个实体的@ManyToMany注解需要指定mappedBy属性,指向targetEntity的集合属性名称。
以下为使用注解的实例:
我们以产品类型ProductType类和产品Product类为例,一个产品类型对应多个产品,删除产品类型将该类型下的所有产品同时删除。首先需要@OneToMany和@ManyToOne标签来设置外键约束。
在一对多的关系中,一是关系维护端(owner side),多是关系被维护端(inverseside)。
@OneToMany有5个属性:targetEntity,fetch,mappedBy,orphanRemoval,cascade
# targetEntity (Class targetEntity() default void.class;) 属性表示默认关联的实体类型,默认为当前标注的实体类;
因为一对多的实体集合时保存在集合类中,因此必须指明集合类中保存的具体类型:
1)指定集合泛型的具体类型;如:public List<Product> getProducts() {...}
2)指定targetEntity属性类型;如:@OneToMany(targetEntity=Product.class,...)
# fetch (FetchType fetch()default LAZY;) 属性是该实体的加载方式,FetchType是枚举类型,值有两种:LAZY和EAGER。一对多,一的一方,FetchType默认是LAZY, 多的一方FetchType默认是EAGER。如果在字段中声明为Eager,那么在取得当前Bean时,同时会抓取Bean中的关联Bean值。即数据库查询多次。反之Lazy则在之后抓取提交查询。具体实验讲解:[Hibernate]- EAGER and LAZY
#mappedBy (String mappedBy() default "";) 属性用于双向关联实体时使用,用在关系的维护端指定关系的被维护端,在hibernate4中与外键标签@JoinColumn冲突,同时使用会报错;如:@OneToMany(targetEntity=Product.class,mappedBy="productType",...)。
#orphanRemoval(boolean orphanRemoval() default false;) 属性作用是删除孤立记录,即外键为空的类型,默认为false。该属性为true时会根据外键执行级联删除,因为当你删除productType的记录时,会使product表的记录外键被删除变为孤立记录,该属性进而将孤立记录删除掉。但hibernate实际执行的语句是先删除product表中的记录,后删除productType表中的记录。
#cascade(CascadeType[] cascade() default {};) 级联属性,默认为空。该属性其实是一个值为枚举类型CascadeType的数组,在jpa的CascadeType枚举类型里面,有PERSIST(级联保存操作),MERGE(合并(merge=save+update)),REMOVE(级联删除操作),REFRESH(级联刷新操作),DETACH(级联分离操作),ALL(所有级联操作)等6个枚举变量,其中DETACH是jpa2.0新加入的变量。这些变量的作用和他们的名字一样,可以很清楚的辨别出。这里我现在仅仅用过级联删除操作,其他的操作都仅仅是从名字和注释上猜测的,留待以后测试。
上面是jpa的级联操作,但在网上很多教程中往往写到用CascadeType.DELETE_ORPHAN,该操作属于hibernate自身的级联操作,在hibernate4中已声明过时,并推荐使用orphanRemoval属性来级联删除记录。
在级联删除记录时,要先用hibernate.load()方法加载持久化对象,然后才能根据外键进行级联删除。至于load()方法和get()方法有什么不同,这里有一篇博文讲的不错:hibernatesession的常用方法解析
注意:改变model类的时候可能需要重新建表,如果级联删除不成功可以试一下。
下面开始代码,首先是productType类,要求删除type的时候要删掉该type对应的所有product:
- package com.nanwang.model;
- import java.util.ArrayList;
- import java.util.List;
- import javax.persistence.Column;
- import javax.persistence.Entity;
- import javax.persistence.GeneratedValue;
- import javax.persistence.Id;
- import javax.persistence.OneToMany;
- import org.hibernate.annotations.Cascade;
- import org.hibernate.annotations.CascadeType;
- /**
- * @author wang
- * @date 2015年8月3日
- */
- @Entity
- public class ProductType {
- private int id;
- private String code;
- private String name ;
- private String country ;
- //外键关系需要用集合类保存
- private List<Product> products = new ArrayList<Product>();
- @Id
- @GeneratedValue
- @Column(columnDefinition = "int")
- public int getId() {
- return id;
- }
- public void setId(int id) {
- this.id = id;
- }
- @Column(columnDefinition = "varchar(40)")
- public String getCode() {
- return code;
- }
- public void setCode(String code) {
- this.code = code;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public String getCountry() {
- return country;
- }
- public void setCountry(String country) {
- this.country = country;
- }
- /**
- * 用于hibernate级联删除,删除了产品类型,把它下面的产品一起删除
- * @return
- */
- @OneToMany(targetEntity=Product.class,orphanRemoval=true)
- @JoinColumn(name="type") //该标签与<span style="font-family: Arial, Helvetica, sans-serif;">@OneToMany中的</span><span style="font-family: Arial, Helvetica, sans-serif;">mappedBy冲突,name属性要和product类中的name一样</span>
- package com.nanwang.model;
- import java.util.ArrayList;
- import java.util.List;
- import javax.persistence.Column;
- import javax.persistence.Entity;
- import javax.persistence.GeneratedValue;
- import javax.persistence.Id;
- import javax.persistence.OneToMany;
- import org.hibernate.annotations.Cascade;
- import org.hibernate.annotations.CascadeType;
- /**
- * @author wang
- * @date 2015年8月3日
- */
- @Entity
- public class ProductType {
- private int id;
- private String code;
- private String name ;
- private String country ;
- //外键关系需要用集合类保存
- private List<Product> products = new ArrayList<Product>();
- @Id
- @GeneratedValue
- @Column(columnDefinition = "int")
- public int getId() {
- return id;
- }
- public void setId(int id) {
- this.id = id;
- }
- @Column(columnDefinition = "varchar(40)")
- public String getCode() {
- return code;
- }
- public void setCode(String code) {
- this.code = code;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public String getCountry() {
- return country;
- }
- public void setCountry(String country) {
- this.country = country;
- }
- /**
- * 用于hibernate级联删除,删除了产品类型,把它下面的产品一起删除
- * @return
- */
- @OneToMany(targetEntity=Product.class,orphanRemoval=true)
- @JoinColumn(name="type") //该标签与<span style="font-family: Arial, Helvetica, sans-serif;">@OneToMany中的</span><span style="font-family: Arial, Helvetica, sans-serif;">mappedBy冲突,name属性要和product类中的name一样</span>
- <span style="white-space:pre"> </span>//也可以去掉<span style="font-family: Arial, Helvetica, sans-serif;">@JoinColumn(name="type"),在</span><span style="font-family: Arial, Helvetica, sans-serif;">@OneToMany标签中加入</span><span style="font-family: Arial, Helvetica, sans-serif;">mappedBy属性,如</span><span style="font-family: Arial, Helvetica, sans-serif;">@OneToMany(targetEntity=Product.class,orphanRemoval=true,mappedBy="productType")值为在Product类中,ProductType属性的属性名</span>
- <span style="white-space:pre"> </span>//也可以去掉<span style="font-family: Arial, Helvetica, sans-serif;">@JoinColumn(name="type"),在</span><span style="font-family: Arial, Helvetica, sans-serif;">@OneToMany标签中加入</span><span style="font-family: Arial, Helvetica, sans-serif;">mappedBy属性,如</span><span style="font-family: Arial, Helvetica, sans-serif;">@OneToMany(targetEntity=Product.class,orphanRemoval=true,mappedBy="productType")值为在Product类中,ProductType属性的属性名</span>
- public List<Product> getProducts() {
- return products;
- }
- public void setProducts(List<Product> products) {
- this.products = products;
- }
- }
- public List<Product> getProducts() {
- return products;
- }
- public void setProducts(List<Product> products) {
- this.products = products;
- }
- }
下面是product类:
- package com.nanwang.model;
- import javax.persistence.Entity;
- import javax.persistence.GeneratedValue;
- import javax.persistence.Id;
- import javax.persistence.JoinColumn;
- import javax.persistence.ManyToOne;
- /**
- * @author wang
- * @date 2015年8月3日
- */
- @Entity
- public class Product {
- private int id;
- private String fullName ;
- private ProductType productType;
- @Id
- @GeneratedValue
- public int getId() {
- return id;
- }
- public void setId(int id) {
- this.id = id;
- }
- public String getFullName() {
- return fullName;
- }
- public void setFullName(String fullName) {
- this.fullName = fullName;
- }
- /**
- * 添加外键
- * @return the productType
- */
- @ManyToOne
- @JoinColumn(name = "type", referencedColumnName = "id", unique = false)
- public ProductType getProductType() {
- return productType;
- }
- public void setProductType(ProductType productType) {
- this.productType = productType;
- }
- }
- package com.nanwang.model;
- import javax.persistence.Entity;
- import javax.persistence.GeneratedValue;
- import javax.persistence.Id;
- import javax.persistence.JoinColumn;
- import javax.persistence.ManyToOne;
- /**
- * @author wang
- * @date 2015年8月3日
- */
- @Entity
- public class Product {
- private int id;
- private String fullName ;
- private ProductType productType;
- @Id
- @GeneratedValue
- public int getId() {
- return id;
- }
- public void setId(int id) {
- this.id = id;
- }
- public String getFullName() {
- return fullName;
- }
- public void setFullName(String fullName) {
- this.fullName = fullName;
- }
- /**
- * 添加外键
- * @return the productType
- */
- @ManyToOne
- @JoinColumn(name = "type", referencedColumnName = "id", unique = false)
- public ProductType getProductType() {
- return productType;
- }
- public void setProductType(ProductType productType) {
- this.productType = productType;
- }
- }
dao层代码:
- <span style="white-space:pre"> </span>//要使用hibernate自身提供的方法
- public void delete(ProductType type) {
- Session session = sessionFactory.getCurrentSession();
- type = (ProductType) session.load(ProductType.class,type.getId());//要先将该类加载
- sessionFactory.getCurrentSession().delete(type);
- }
- <span style="white-space:pre"> </span>//要使用hibernate自身提供的方法
- public void delete(ProductType type) {
- Session session = sessionFactory.getCurrentSession();
- type = (ProductType) session.load(ProductType.class,type.getId());//要先将该类加载
- sessionFactory.getCurrentSession().delete(type);
- }
service层代码:
- @Transactional
- public void delete(ProductType type) {
- userDao.delete(type);
- }
- @Transactional
- public void delete(ProductType type) {
- userDao.delete(type);
- }
数据库中:
junit代码:
- @Test
- public void test(){
- ProductType type = new ProductType();
- type.setId(1);
- userService.delete(type);
- // userService.delete(1);
- }
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- static、const和static const
const定义的常量在超出其作用域之后其空间会被释放,而static定义的静态常量在函数执行后不会释放其存储空间。static表示的是静态的。类的静态成员函数、静态成员变量是和类相关的,而不是和类的具体对象相关的。即使没有具体对象,也能调用类的静态成员函数和成员变量。一般类…...
2024/4/24 23:25:18 - android 使用getIdentifier()获取资源Id
首先贴一下搜到的用法: 使用getIdentifier()方法可以方便的获各应用包下的指定资源ID。 主要有两种方法: (1)方式一 Resources resources = context.getResources(); int indentify = resources.getIdentifier(org.loveandroid.androidtest:drawable/icon",null,null);…...
2024/5/1 14:11:58 - CSDN如何转载别人的博客
前言对于喜欢逛CSDN的人来说,看别人的博客确实能够对自己有不小的提高,有时候看到特别好的博客想转载下载,但是不能一个字一个字的敲了,这时候我们就想快速转载别人的博客,把别人的博客移到自己的空间里面,当然有人会说我们可以收藏博客啊,就不需要转载,(⊙o⊙)… 也对…...
2024/4/24 23:25:18 - Electron中打开和关闭子窗口以及子窗口向父窗口传值
场景用HTML和CSS和JS构建跨平台桌面应用程序的开源库Electron的介绍以及搭建HelloWorld:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106413828Electron怎样进行渲染进程调试和使用浏览器和VSCode进行调试:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/articl…...
2024/5/1 5:24:11 - java中的Static、final、Static final各种用法
前言 对Static、final、Static final这几个关键词熟悉又陌生?想说却又不知怎么准确说出口?好的,本篇博客文章将简短概要出他们之间的各自的使用,希望各位要是被你的面试官问到了,也能从容的回答… static 加载:static在类加载时初始化(加载)完成 含义:Static意为静态的…...
2024/5/1 6:28:46 - Hibernate学习笔记之关联关系
关联关系是面向对象分析、面向对象设计最重要的知识,Hibernate完全可以理解这种关联关系,如果映射得当,Hibernate的关联映射将可以大大简化持久层数据的访问。关联关系大致有如下两类:单向关系:只需单向访问关联端。双向关系:关联的两端可以互相访问 注:双向关系没有N—…...
2024/5/1 12:57:22 - Android 项目开发填坑记 - 获取系统语言(兼容7.0)
如果移动端访问不佳,请访问–> Github版关键词:Android7.0 、系统语言 、顺序不一致获取系统当前语言是一个比较常用的功能,在 Android 7.0 系统上旧函数获取到的当前系统语言并不正确,或者说从 Android 7.0 起,Android 系统语言的规则变了。背景下面是未适配 Android …...
2024/4/24 23:25:12 - setBackgroundDrawable和setBackgroundColor的用法
1.设置背景图片,图片来源于drawable;viewHolder.modify.setBackgroundDrawable(context.getResources().getDrawable(R.drawable.btn_fuwu_shape_pre));2.转换字符串为int(颜色);listItemView.deleteFilghtBg.setBackgroundColor(Color.parseColor("#F5F5DC"));…...
2024/4/26 5:07:56 - oracle常用sql语句
-- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了。 --(默认全局数据库名orcl) 1、select ename, sal * 12 from emp; --计算年薪 2、select 2*3 from du…...
2024/5/1 8:39:29 - Jpa3
这里写自定义目录标题1.单向一对多1、映射配置:一方配置2、保存代码:我们一般不使用单向一对多(原因:性能太差)3、获取代码:4、获取代码细节:2.集合映射3.双向多对一/双向一对多3.1.保存数据分析3.2.级联保存3.4.级联操作总结4.单向多对多(1)配置单向多对多(2)保存数据5.双…...
2024/4/24 23:25:09 - crossplatfrom---electron入门教程
1.atom/electron github: https://github.com/atom/electron 中文文档: https://github.com/atom/electron/tree/master/docs-translations/zh-CN 2.下载 electron-v0.36.5-win32-x64 https://github.com/atom/electron/releases/download/v0.36.5/electron-v0.36.5-win32-x64…...
2024/4/24 23:25:10 - C和C#中static关键字的作用
C中:1. static 变量 静态变量的类型 说明符是static。 静态变量当然是属于静态存储方式,但是属于静态存储方式的量不一定就是静态变量。 例如外部变量虽属于静态 存储方式,但不一定是静态变量,必须由static加以定义后才能成为静态外部变量,或称静态全局变量。2. 静态局…...
2024/4/24 23:25:10 - CSDN专家吐槽实录
今天打开CSDN发现界面上的几个图标发生了变化,一个小小的变化,却引起了诸多CSDN专家对CSDN社区未来发展的思考,我特意从群里讲对话黏贴出来,希望各位能给予积极评价和建议。你已经是群成员了,和大家打个招呼吧!阳光小强(739299362) 11:12:53 大家好,这里还深藏着这么一个…...
2024/4/24 23:25:06 - TabSpec.setIndicator图片标题只能显示一个的解决办法
TabSpec ts1=tabHost.newTabSpec("Tab1");//设置首页显示的标题和图标,图片或者文字只能显示一个,只有当文字为空的时候,才显示图片 ts1.setIndicator("首页",getResources().getDrawable(android.R.drawable.ic_menu_call));//设置此分页的内容 ts1.se…...
2024/4/14 21:12:31 - static变量和static函数
1、static全局变量和普通的全局变量static全局变量在定义该变量的当前源文件内有效, 在同一源程序的其它源文件中不能使用它。而普通的全局变量在各个源文件中都是有效的(当一个源程序由多个源文件组成时)。2、static局部变量和普通的局部变量static局部变量存放在静态存储区…...
2024/4/14 21:12:28 - 现在,以编程方式在 Electron 中上传文件,是非常简单的!
必要的上下文 想尽快熟悉上下文语境的,可以点这里: https://github.com/electron/electron/issues/749 这段讨论,其实本来是讨论如何自动设置 input 标签的值来实现自动选择文件的.前一段有个 Electon 中自动上传文件的需求,被 Google 带到了这个讨论地址.虽然,最后当时是采用的…...
2024/4/14 21:12:28 - CSDN-Markdown编辑器之UML序列图
目录目录 UML序列图简介 时序图元素 1角色Actor 2对象Object 3生命线Lifeline 4激活期Activation 5消息Message时序图结构 连接建立的过程 呈现效果示例二 呈现效果对象顺序 呈现效果跨对象的消息 呈现效果相关文章 CSDN-Markdown编辑器之UML序列图 Markdown编辑器语法指南 CSD…...
2024/4/14 21:12:26 - 9 - 远程服务暴露
腾一部分笔记到csdn1. 概述如果不熟悉该协议,可以先看看 《Dubbo 使用指南 —— dubbo://》 ,简单了解即可。相比本地暴露,远程暴露会多做如下几件事情:启动通信服务器,绑定服务端口,提供远程调用。向注册中心注册服务提供者,提供服务消费者从注册中心发现服务。2. 远程…...
2024/4/20 10:44:21 - electron中隐藏顶部菜单、隐藏顶部最大化、最小化、关闭按钮以及自定最大化、最小化 、关闭按钮。
electron中隐藏顶部菜单、隐藏顶部最大化、最小化、关闭按钮以及自定最大化、最小化 、关闭按钮。如果您想学Electron视频教程请访问:【Electron视频教程下载地址】1、electron中隐藏顶部菜单mainWindow.setMenu(null)2、electron 中隐藏关闭 最大化 最小化按钮mainWindow = n…...
2024/4/19 17:43:43 - BitmapFactory.decodeResource 获取图片宽与高
之前使用: Bitmap bm = BitmapFactory.decodeResource(context.getResources(), resId); 通过 bm.getWidth() 和 bm.getHeight() 来获取宽和高还有更好的方法:BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; BitmapFacto…...
2024/4/14 21:12:24
最新文章
- GPT-ArcGIS数据处理、空间分析、可视化及多案例综合应用
在数字化和智能化的浪潮中,GIS(地理信息系统)和GPT(生成式预训练模型)的结合正日益成为推动科研、城市规划、环境监测等领域发展的关键技术。GIS以其强大的空间数据处理、先进的空间分析工具、灵活的地图制作与可视化能…...
2024/5/1 15:09:15 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - A股企业数据要素利用水平数据集(2001-2022年)
参照史青春(2023)的做法,团队对上市公司-数据要素利用水平进行测算。统计人工智能技术、区块链技术、云计算技术、大数据技术、大数据技术应用五项指标在企业年报中的披露次数,求和后衡量数据要素投入水平。 一、数据介绍 数据名…...
2024/4/30 20:23:23 - 游戏引擎架构01__引擎架构图
根据游戏引擎架构预设的引擎架构来构建运行时引擎架构 ...
2024/5/1 13:06:15 - 文心一言 vs gpt-4 全面横向比较
文心一言是中国百度公司研发的大规模语言模型,它有超多的参数,就像一个超级大脑,特别擅长理解并生成中文内容。在聊天啊、写文章啊、答题这些任务上表现不错,对中国文化和国情有更深的理解和适应能力。 GPT-3.5是OpenAI公司的上一…...
2024/4/30 20:45:13 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/4/29 23:16:47 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/4/30 18:14:14 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/29 2:29:43 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/4/30 18:21:48 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/27 17:58:04 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/27 14:22:49 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/28 1:28:33 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/30 9:43:09 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/27 17:59:30 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/4/25 18:39:16 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/28 1:34:08 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/26 19:03:37 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/29 20:46:55 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/30 22:21:04 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/1 4:32:01 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/27 23:24:42 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/28 5:48:52 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/30 9:42:22 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/4/30 9:43:22 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/30 9:42:49 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57