Guest User

Untitled

a guest
Oct 5th, 2018
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.27 KB | None | 0 0
  1. package model;
  2. import javax.persistence.Column;
  3. import javax.persistence.Entity;
  4. import javax.persistence.GeneratedValue;
  5. import javax.persistence.GenerationType;
  6. import javax.persistence.Id;
  7. import javax.persistence.Table;
  8. import javax.persistence.UniqueConstraint;
  9. import javax.persistence.Version;
  10.  
  11. @Entity
  12. @Table(name="Cities",uniqueConstraints= {@UniqueConstraint(columnNames= {"city_id"})})
  13. public class Cities {
  14. @Id
  15. @GeneratedValue(strategy=GenerationType.AUTO)
  16. private int city_id;
  17. @Column(name="CITY_NAME",nullable=true,unique=false)
  18. private String city_name;
  19. @Column(name="POPULATION",nullable=true,unique=false)
  20. private int population;
  21. @Column(name="TS_CNT",nullable=false,unique=true)
  22. @Version
  23. private int ts_cnt;
  24. public int getCity_id() {
  25. return city_id;
  26. }
  27. public void setCity_id(int city_id) {
  28. this.city_id = city_id;
  29. }
  30. public String getCity_name() {
  31. return city_name;
  32. }
  33. public void setCity_name(String city_name) {
  34. this.city_name = city_name;
  35. }
  36. public int getPopulation() {
  37. return population;
  38. }
  39. public void setPopulation(int population) {
  40. this.population = population;
  41. }
  42. public int getTs_cnt() {
  43. return ts_cnt;
  44. }
  45. public void setTs_cnt(int ts_cnt) {
  46. this.ts_cnt = ts_cnt;
  47. }
  48. }
  49.  
  50. package model;
  51.  
  52. import javax.persistence.Column;
  53. import javax.persistence.Entity;
  54. import javax.persistence.GeneratedValue;
  55. import javax.persistence.GenerationType;
  56. import javax.persistence.Id;
  57. import javax.persistence.OneToOne;
  58. import javax.persistence.Table;
  59.  
  60. @Entity
  61. @Table
  62. public class State {
  63. @Id
  64. @Column(name = "state_id", nullable = false, unique = true)
  65. @GeneratedValue(strategy = GenerationType.IDENTITY)
  66. private int state_id;
  67. @Column(name = "state_name", nullable = false, unique = true)
  68. private String state_name;
  69. @Column(name = "state_capital", nullable = false, unique = true)
  70. private String state_capital;
  71. @OneToOne
  72. private Cities cities;
  73. public int getState_id() {
  74. return state_id;
  75. }
  76.  
  77. public void setState_id(int state_id) {
  78. this.state_id = state_id;
  79. }
  80.  
  81. public String getState_name() {
  82. return state_name;
  83. }
  84.  
  85. public void setState_name(String state_name) {
  86. this.state_name = state_name;
  87. }
  88.  
  89. public String getState_capital() {
  90. return state_capital;
  91. }
  92.  
  93. public void setState_capital(String state_capital) {
  94. this.state_capital = state_capital;
  95. }
  96.  
  97. public Cities getCities() {
  98. return cities;
  99. }
  100.  
  101. public void setCities(Cities cities) {
  102. this.cities = cities;
  103. }
  104. }
  105.  
  106. package citiutilities;
  107.  
  108. import org.hibernate.HibernateException;
  109. import org.hibernate.Session;
  110. import interfaces.Dbops;
  111. import model.Cities;
  112. import model.State;
  113.  
  114. public class InsertCities implements Dbops {
  115. public static void main(String[] args) {
  116. Cities citi1 = new Cities();
  117. State state1 = new State();
  118. InsertCities ic = new InsertCities();
  119. ic.insertCities(citi1, state1);
  120. }
  121.  
  122. public void insertCities(Cities citi1, State state1) {
  123. citi1.setCity_id(100);
  124. citi1.setCity_name("Patna");
  125. citi1.setPopulation(180000);
  126. state1.setState_id(100);
  127. state1.setState_capital("Patna");
  128. state1.setState_name("Bihar");
  129. state1.setCities(citi1);
  130.  
  131. Session session = CityDbUtil.createSession();
  132. session.beginTransaction();
  133. try {
  134. session.save(state1);
  135. session.getTransaction().commit();
  136. System.out.println("The city that was saved is :: " + citi1.getCity_id());
  137. } catch (HibernateException he) {
  138. session.getTransaction().rollback();
  139. he.printStackTrace();
  140. }
  141. finally {
  142. session.close();
  143. }
  144. }
  145. }
  146.  
  147. Oct 05, 2018 9:45:27 PM org.hibernate.Version logVersion
  148. INFO: HHH000412: Hibernate Core {5.2.17.Final}
  149. Oct 05, 2018 9:45:27 PM org.hibernate.cfg.Environment <clinit>
  150. INFO: HHH000206: hibernate.properties not found
  151. Oct 05, 2018 9:45:27 PM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>
  152. INFO: HCANN000001: Hibernate Commons Annotations {5.0.1.Final}
  153. Oct 05, 2018 9:45:27 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
  154. WARN: HHH10001002: Using Hibernate built-in connection pool (not for production use!)
  155. Oct 05, 2018 9:45:27 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
  156. INFO: HHH10001005: using driver [org.postgresql.Driver] at URL [jdbc:postgresql://localhost/subirdb]
  157. Oct 05, 2018 9:45:27 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
  158. INFO: HHH10001001: Connection properties: {user=postgres, password=****}
  159. Oct 05, 2018 9:45:27 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
  160. INFO: HHH10001003: Autocommit mode: false
  161. Oct 05, 2018 9:45:27 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$PooledConnections <init>
  162. INFO: HHH000115: Hibernate connection pool size: 20 (min=1)
  163. Oct 05, 2018 9:45:28 PM org.hibernate.dialect.Dialect <init>
  164. INFO: HHH000400: Using dialect: org.hibernate.dialect.PostgreSQLDialect
  165. Oct 05, 2018 9:45:28 PM org.hibernate.engine.jdbc.env.internal.LobCreatorBuilderImpl useContextualLobCreation
  166. INFO: HHH000424: Disabling contextual LOB creation as createClob() method threw error : java.lang.reflect.InvocationTargetException
  167. Oct 05, 2018 9:45:28 PM org.hibernate.type.BasicTypeRegistry register
  168. INFO: HHH000270: Type registration [java.util.UUID] overrides previous : org.hibernate.type.UUIDBinaryType@5fa07e12
  169. Oct 05, 2018 9:45:29 PM org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl getIsolatedConnection
  170. INFO: HHH10001501: Connection obtained from JdbcConnectionAccess [org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess@2b95e48b] for (non-JTA) DDL execution was not in auto-commit mode; the Connection 'local transaction' will be committed and the Connection will be set into auto-commit mode.
  171. Hibernate:
  172.  
  173. create table Cities (
  174. city_id int4 not null,
  175. CITY_NAME varchar(255),
  176. POPULATION int4,
  177. TS_CNT int4 not null,
  178. primary key (city_id)
  179. )
  180. Hibernate:
  181.  
  182. create table State (
  183. state_id serial not null,
  184. state_capital varchar(255) not null,
  185. state_name varchar(255) not null,
  186. cities_city_id int4,
  187. primary key (state_id)
  188. )
  189. Hibernate:
  190.  
  191. alter table Cities
  192. drop constraint UK_lyvuwacb89kupauxjk1103pjl
  193. Hibernate:
  194.  
  195. alter table Cities
  196. add constraint UK_lyvuwacb89kupauxjk1103pjl unique (TS_CNT)
  197. Hibernate:
  198.  
  199. alter table State
  200. drop constraint UK_jv8xyklsot1gudi8bfo3hrdkj
  201. Hibernate:
  202.  
  203. alter table State
  204. add constraint UK_jv8xyklsot1gudi8bfo3hrdkj unique (state_capital)
  205. Hibernate:
  206.  
  207. alter table State
  208. drop constraint UK_sh9wvgcb2q4h69yjib264nlh4
  209. Hibernate:
  210.  
  211. alter table State
  212. add constraint UK_sh9wvgcb2q4h69yjib264nlh4 unique (state_name)
  213. Hibernate:
  214.  
  215. alter table State
  216. add constraint FKmcjxnu2cw7ax2uefyvp55saky
  217. foreign key (cities_city_id)
  218. references Cities
  219. Oct 05, 2018 9:45:29 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
  220. WARN: HHH10001002: Using Hibernate built-in connection pool (not for production use!)
  221. Oct 05, 2018 9:45:29 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
  222. INFO: HHH10001005: using driver [org.postgresql.Driver] at URL [jdbc:postgresql://localhost/subirdb]
  223. Oct 05, 2018 9:45:29 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
  224. INFO: HHH10001001: Connection properties: {user=postgres, password=****}
  225. Oct 05, 2018 9:45:29 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
  226. INFO: HHH10001003: Autocommit mode: false
  227. Oct 05, 2018 9:45:29 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$PooledConnections <init>
  228. INFO: HHH000115: Hibernate connection pool size: 20 (min=1)
  229. Oct 05, 2018 9:45:30 PM org.hibernate.dialect.Dialect <init>
  230. INFO: HHH000400: Using dialect: org.hibernate.dialect.PostgreSQLDialect
  231. Oct 05, 2018 9:45:30 PM org.hibernate.engine.jdbc.env.internal.LobCreatorBuilderImpl useContextualLobCreation
  232. INFO: HHH000424: Disabling contextual LOB creation as createClob() method threw error : java.lang.reflect.InvocationTargetException
  233. Oct 05, 2018 9:45:30 PM org.hibernate.type.BasicTypeRegistry register
  234. INFO: HHH000270: Type registration [java.util.UUID] overrides previous : org.hibernate.type.UUIDBinaryType@5fa07e12
  235. Oct 05, 2018 9:45:30 PM org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl getIsolatedConnection
  236. INFO: HHH10001501: Connection obtained from JdbcConnectionAccess [org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess@5cbf9e9f] for (non-JTA) DDL execution was not in auto-commit mode; the Connection 'local transaction' will be committed and the Connection will be set into auto-commit mode.
  237. Hibernate:
  238. insert
  239. into
  240. State
  241. (cities_city_id, state_capital, state_name)
  242. values
  243. (?, ?, ?)
  244. Oct 05, 2018 9:45:30 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
  245. WARN: SQL Error: 0, SQLState: 23503
  246. Oct 05, 2018 9:45:30 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
  247. ERROR: ERROR: insert or update on table "state" violates foreign key constraint "fkmcjxnu2cw7ax2uefyvp55saky"
  248. Detail: Key (cities_city_id)=(100) is not present in table "cities".
  249. org.hibernate.exception.ConstraintViolationException: could not execute statement
  250. at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:112)
  251. at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)
  252. at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:111)
  253. at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:97)
  254. at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:178)
  255. at org.hibernate.dialect.identity.GetGeneratedKeysDelegate.executeAndExtract(GetGeneratedKeysDelegate.java:57)
  256. at org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:42)
  257. at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2933)
  258. at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3524)
  259. at org.hibernate.action.internal.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:81)
  260. at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:637)
  261. at org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:282)
  262. at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:263)
  263. at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:317)
  264. at org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:318)
  265. at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:275)
  266. at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:182)
  267. at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:113)
  268. at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:192)
  269. at org.hibernate.event.internal.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:38)
  270. at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:177)
  271. at org.hibernate.event.internal.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:32)
  272. at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:73)
  273. at org.hibernate.internal.SessionImpl.fireSave(SessionImpl.java:692)
  274. at org.hibernate.internal.SessionImpl.save(SessionImpl.java:684)
  275. at org.hibernate.internal.SessionImpl.save(SessionImpl.java:679)
  276. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  277. at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  278. at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  279. at java.lang.reflect.Method.invoke(Unknown Source)
  280. at org.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:355)
  281. at com.sun.proxy.$Proxy27.save(Unknown Source)
  282. at citiutilities.InsertCities.insertCities(InsertCities.java:29)
  283. at citiutilities.InsertCities.main(InsertCities.java:14)
  284. Caused by: org.postgresql.util.PSQLException: ERROR: insert or update on table "state" violates foreign key constraint "fkmcjxnu2cw7ax2uefyvp55saky"
  285. Detail: Key (cities_city_id)=(100) is not present in table "cities".
  286. at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2477)
  287. at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2190)
  288. at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:300)
  289. at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:428)
  290. at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:354)
  291. at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:169)
  292. at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:136)
  293. at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:175)
  294. ... 29 more
Add Comment
Please, Sign In to add comment