Here is my modele
@Entity
public class Structure implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue
private Integer idt_structure;
private String name;
@ManyToOne
@JoinColumn(name="idt_parent_structure")
private Structure structure;
// Getters and setters
}
Example of input and outpu
Input
public void save(){
Structure structure = new Structure();
structure.setName("structure");
structure.setStructure(null);
structureService.add(structure);
}
Here is my Service
Transactional
@Service("structureService")
public class StructureServiceImpl implements IStructureService{
@Autowired
@Qualifier("structureDao")
private StructureDao structureDao;
private List<Structure> structures;
public StructureServiceImpl() {
super();
}
@Override
public void addStructure(Structure structure) {
structureDao.save(structure);
}
// getters and setters
}
Here is My DAO
@Repository
public class StructureDao extends GenericDaoHibernateImpl<Structure, Integer> {
@Autowired
@Qualifier("sessionFactory")
private SessionFactory sessionFactory;
@Autowired
public StructureDao(@Qualifier("sessionFactory") SessionFactory sessionFactory) {
super(sessionFactory);
}
}
SQL SCHEMA TABLE Structure idt_structure int(11), name varchar(255), idt_parent_structure int(11). And all columns All columns can take the value null unless idt_structure
Output in datadase
sql schema : idt_structure, name , idt_parent_structure.
structure(1,name,0);
and i want to have output like this
structure(1,name,null);
The default value of an Integer is 0 And I want to have null in sql database for the idt_parent_structure column.
1 Answer 1
Since you write @GeneratedValue you don't manage what exactly id would be.
Provide us complete example and we'll help you
nullin id field? In most cases it would be wrongstructureDao.save, configuration of your ORM and DB schema. DB schema and configuration is important since it depends on not only code