这篇文章主要介绍了作业的装配区(JobPackArea)配置详解之作业的装配区(JobPackArea)属性用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
目录
JPA配置之jpaPropertiesSpingDataJpa配置问题春天。JPA。属性。冬眠。hbm 2 DDL。自动=更新
JPA配置之jpaProperties
?可扩展标记语言版本='1.0 '编码='UTF八号'?
豆子xmlns=' http://www。spring框架。'组织/架构/bean '
xmlns:xsi=' http://。w3。' org/2001/XML架构-实例'
xmlns:context=' http://www。spring框架。'组织/架构/上下文'
xmlns:AOP=' http://。spring框架。'组织/架构/AOP '
xmlns:JPA=' http://。spring框架。' org/schema/data/JPA '
xmlns:tx=' http://www。spring框架。'组织/架构/事务'
xsi:架构位置=' http://www。spring框架。组织/架构/AOP http://www.springframework.org/schema/aop/spring-aop-4.1.xsd
http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/data/jpa http://www。spring框架。org/schema/data/JPA/spring-JPA-1.3。xsd
http://www.springframework.org/schema/txhttp://www.springframework.org/schema/tx/spring-tx-3.2.xsd
http://www.springframework.org/schema/context http://www。spring框架。org/schema/context/spring-context-4.1。xsd '
!春天自动读取指定位置的配置为简到春天中-
上下文:property-placeholder location=' class path *:/application。属性'/
context:component-scan base-package=' com“四郎网”
!-扫描com.shiroweb包下除去@控制器以外注解的类-
上下文:exclude-filter type=' annotation ' expression=' org。spring框架。刻板印象。控制器'/
上下文:exclude-filter type=' annotation ' expression=' org。spring框架。网络。绑定。注释。控制器建议'/
/上下文:组件扫描
!- c3p0数据源配置-
bean id=' data source ' class=' com。m零钱。v2。c3p 0。“组合工具栏数据源”
属性名称='driverClass '值='${jdbc.driver}'/
属性名称='jdbcUrl '值='${jdbc.url}' /
属性名='用户'值='${jdbc.username}'/
属性名='密码'值='${jdbc.password}'/
/bean
!- Jpa实体经理配置关联hibernateJpaVendorAdapter -
bean id=' entitymanager factory ' class=' org。spring框架。ORM。JPA。localcontainereentitymanagerfactorybean
属性名='dataSource' ref='dataSource'/
属性名称=' jpaVendorAdapter ' ref=' hibernateJpaVendorAdapter '/
属性名称='packagesToScan '值='com.shiroweb'/
!- property name='jpaProperties '
小道具
命名规则我的名字-我的名字
prop key='冬眠。EJB。“命名策略”组织。冬眠。CFG。改进命名策略/道具
实体类对应数据库没有表就生成一个表
prop key='冬眠。hbm 2 DDL。“自动”更新/道具
/道具
/属性-
!-指定作业的装配区(JobPackArea)属性;如冬眠中指定是否显示结构化查询语言的是否显示、方言等-
属性名=属性'
小道具
!-prop key=' hibernate。方言组织。冬眠。方言。Oracle 10g方言/属性-
prop key='冬眠。EJB。“命名策略”组织。冬眠。CFG。改进命名策略/道具
!-prop key=' hibernate。缓存。“供应商_分类”组织。冬眠。缓存。无缓存提供者/道具-
prop key='冬眠。show _ SQL ' true/prop
prop key='冬眠。format _ SQL ' true/prop
!-prop key=' hibernate。hbm 2 DDL。自动验证/验证-
prop key='冬眠。hbm 2 DDL。“自动”更新/道具
/道具
/属性
/bean
!-配置hibernateJpaVendorAdapter关联数据源-
bean id=' hibernateJpaVendorAdapter ' class=' org。spring框架。ORM。JPA。供应商。' hibernateJpaVendorAdapter '
属性名='数据库'值='MYSQL' /
属性名称='showSql '值='真'/
/bean
!-春季数据作业的装配区(JobPackArea)配置-
JPA:仓库base-package=' com。Shiro web ' transaction-manager-ref=' transaction manager ' entity-manager-factory-ref=' entitymanager factory '/
!- Jpa事务配置-
bean id='事务管理器' class=' org。spring框架。ORM。JPA。jpatransactionmanager
属性名称=' entitymanager factory ' ref=' entitymanager factory '/
/bean
!-使用注释来定义事务-
tx:批注驱动的事务管理器='transactionManager '代理目标类='true' /
/豆子
其中,jpaProperties是jpa的一些属性
!-指定JPA属性;比如是否用Hibernate,dialect等显示SQL
属性名='jpaProperties '
小道具
!-prop key=' hibernate . dialect ' org . hibernate . dialect . Oracle 10g dialect/prop-
prop key=' hibernate . EJB . naming _ strategy ' org . hibernate . CFG . improvednamingstrategy/prop
!-prop key=' hibernate . cache . provider _ class ' org . hibernate . cache . nocache provider/prop-
prop key=' hibernate . show _ SQL ' true/prop
prop key=' hibernate . format _ SQL ' true/prop
!-prop key=' hibernate . hbm 2 DDL . auto ' validate/prop-
prop key=' hibernate . hbm 2 DDL . auto ' update/prop
/道具
/属性
这里有一个属性。
prop key=' hibernate . hbm 2 DDL . auto ' update/prop
这是一个有用的设置。
其实这个hibernate.hbm2ddl.auto参数主要是用来自动创建|更新|验证数据库表结构的。如果在这方面没有要求,建议设置value='none '。
Create:每次加载hibernate,最后生成的表都会被删除,然后根据你的模型类重新生成一个新的表。即使两次都没有变化,这也是数据库表数据丢失的重要原因。
Create-drop:每次加载hibernate时,表都是根据model类生成的,但是sessionFactory一关闭,表就自动删除了。
更新:最常用的属性。第一次加载hibernate时,会根据模型类自动建立表结构(前提是先建立数据库)。稍后加载hibernate时,表结构会根据模型类自动更新。即使更改了表结构,表中的行仍然存在,以前的行不会被删除。需要注意的是,当部署到服务器时,表结构不会立即建立,而是在应用程序第一次运行后才建立。
Validate:每次加载hibernate时,都会对创建的数据库表结构进行验证,它只会与数据库中的表进行比较。不会创建新表,但会插入新值。
Sping Data Jpa配置问题
spring.jpa.properties.hibernate.hbm2ddl.auto=update
配置spring数据jpa时,如果spring . JPA . properties . hibernate . hbm 2 DDL . auto设置为update,数据表结构会自动更新。例如,如果一个成员变量被添加到实体中,相应的字段也会被添加到数据表中。但是需要注意的是,如果删除了一个成员变量,此时,数据表中对应的字段不会自动删除。如果删除的成员变量在数据表中设置为not null,则再次运行时会报告错误,如下例所示。
创建新的实体类。
进口龙目岛。数据;
导入javax . persistence . *;
@实体
@数据
公共类汽车{
@Id
@Column(name='id ',nullable=false)
@ generated value(strategy=generation type。身份)
私有长id;
@Column(nullable=false)
私串价;
@列
私有字符串颜色;
@列
私人串串品牌;
}
这时你可以看到数据表car已经在数据库中自动生成,并有相应的字段。
此时,我们删除Car中的价格,重新运行它,并再次检查数据库。
仍然找到了价格字段。
以上个人经历,希望能给大家一个参考,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。